-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dt-bindings: mtd: Convert Qcom NANDc binding to YAML
Convert Qcom NANDc devicetree binding to YAML. Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> Link: https://lore.kernel.org/linux-mtd/20210402150128.29128-2-manivannan.sadhasivam@linaro.org
- Loading branch information
Manivannan Sadhasivam
authored and
Miquel Raynal
committed
Apr 7, 2021
1 parent
bd9c9fe
commit da386f7
Showing
2 changed files
with
196 additions
and
142 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,196 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/mtd/qcom,nandc.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Qualcomm NAND controller | ||
|
||
maintainers: | ||
- Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> | ||
|
||
properties: | ||
compatible: | ||
enum: | ||
- qcom,ipq806x-nand | ||
- qcom,ipq4019-nand | ||
- qcom,ipq6018-nand | ||
- qcom,ipq8074-nand | ||
- qcom,sdx55-nand | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
clocks: | ||
items: | ||
- description: Core Clock | ||
- description: Always ON Clock | ||
|
||
clock-names: | ||
items: | ||
- const: core | ||
- const: aon | ||
|
||
"#address-cells": true | ||
"#size-cells": true | ||
|
||
patternProperties: | ||
"^nand@[a-f0-9]$": | ||
type: object | ||
properties: | ||
nand-bus-width: | ||
const: 8 | ||
|
||
nand-ecc-strength: | ||
enum: [1, 4, 8] | ||
|
||
nand-ecc-step-size: | ||
enum: | ||
- 512 | ||
|
||
allOf: | ||
- $ref: "nand-controller.yaml#" | ||
|
||
- if: | ||
properties: | ||
compatible: | ||
contains: | ||
const: qcom,ipq806x-nand | ||
then: | ||
properties: | ||
dmas: | ||
items: | ||
- description: rxtx DMA channel | ||
|
||
dma-names: | ||
items: | ||
- const: rxtx | ||
|
||
qcom,cmd-crci: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: | ||
Must contain the ADM command type CRCI block instance number | ||
specified for the NAND controller on the given platform | ||
|
||
qcom,data-crci: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: | ||
Must contain the ADM data type CRCI block instance number | ||
specified for the NAND controller on the given platform | ||
|
||
- if: | ||
properties: | ||
compatible: | ||
contains: | ||
enum: | ||
- qcom,ipq4019-nand | ||
- qcom,ipq6018-nand | ||
- qcom,ipq8074-nand | ||
- qcom,sdx55-nand | ||
|
||
then: | ||
properties: | ||
dmas: | ||
items: | ||
- description: tx DMA channel | ||
- description: rx DMA channel | ||
- description: cmd DMA channel | ||
|
||
dma-names: | ||
items: | ||
- const: tx | ||
- const: rx | ||
- const: cmd | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- clocks | ||
- clock-names | ||
|
||
unevaluatedProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/clock/qcom,gcc-ipq806x.h> | ||
nand-controller@1ac00000 { | ||
compatible = "qcom,ipq806x-nand"; | ||
reg = <0x1ac00000 0x800>; | ||
clocks = <&gcc EBI2_CLK>, | ||
<&gcc EBI2_AON_CLK>; | ||
clock-names = "core", "aon"; | ||
dmas = <&adm_dma 3>; | ||
dma-names = "rxtx"; | ||
qcom,cmd-crci = <15>; | ||
qcom,data-crci = <3>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
nand@0 { | ||
reg = <0>; | ||
nand-ecc-strength = <4>; | ||
nand-bus-width = <8>; | ||
partitions { | ||
compatible = "fixed-partitions"; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
partition@0 { | ||
label = "boot-nand"; | ||
reg = <0 0x58a0000>; | ||
}; | ||
partition@58a0000 { | ||
label = "fs-nand"; | ||
reg = <0x58a0000 0x4000000>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
#include <dt-bindings/clock/qcom,gcc-ipq4019.h> | ||
nand-controller@79b0000 { | ||
compatible = "qcom,ipq4019-nand"; | ||
reg = <0x79b0000 0x1000>; | ||
clocks = <&gcc GCC_QPIC_CLK>, | ||
<&gcc GCC_QPIC_AHB_CLK>; | ||
clock-names = "core", "aon"; | ||
dmas = <&qpicbam 0>, | ||
<&qpicbam 1>, | ||
<&qpicbam 2>; | ||
dma-names = "tx", "rx", "cmd"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
nand@0 { | ||
reg = <0>; | ||
nand-ecc-strength = <4>; | ||
nand-bus-width = <8>; | ||
partitions { | ||
compatible = "fixed-partitions"; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
partition@0 { | ||
label = "boot-nand"; | ||
reg = <0 0x58a0000>; | ||
}; | ||
partition@58a0000 { | ||
label = "fs-nand"; | ||
reg = <0x58a0000 0x4000000>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
... |
This file was deleted.
Oops, something went wrong.