From: "J. Neuschäfer" <j.ne@xxxxxxxxxx> Formalize the binding already supported by the fsl_elbc_nand.c driver and used in several device trees in arch/powerpc/boot/dts/. raw-nand-chip.yaml is referenced in order to accommodate situations in which the ECC parameters settings are set in the device tree. One such example is in arch/powerpc/boot/dts/turris1x.dts: /* MT29F2G08ABAEAWP:E NAND */ nand@1,0 { compatible = "fsl,p2020-fcm-nand", "fsl,elbc-fcm-nand"; reg = <0x1 0x0 0x00040000>; nand-ecc-mode = "soft"; nand-ecc-algo = "bch"; partitions { ... }; }; Reviewed-by: Frank Li <Frank.Li@xxxxxxx> Signed-off-by: J. Neuschäfer <j.ne@xxxxxxxxxx> --- V3: - remove unnecessary #address/size-cells from nand node in example - add Frank Li's review tag - add missing end of document marker (...) - explain choice to reference raw-nand-chip.yaml V2: - split out from fsl,elbc binding patch - constrain #address-cells and #size-cells - add a general description - use unevaluatedProperties=false instead of additionalProperties=false - fix property order to comply with dts coding style - include raw-nand-chip.yaml instead of nand-chip.yaml --- .../devicetree/bindings/mtd/fsl,elbc-fcm-nand.yaml | 68 ++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/Documentation/devicetree/bindings/mtd/fsl,elbc-fcm-nand.yaml b/Documentation/devicetree/bindings/mtd/fsl,elbc-fcm-nand.yaml new file mode 100644 index 0000000000000000000000000000000000000000..91e8f2f9ff26da0f5a3f9bf276955ed32e9e7bc6 --- /dev/null +++ b/Documentation/devicetree/bindings/mtd/fsl,elbc-fcm-nand.yaml @@ -0,0 +1,68 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mtd/fsl,elbc-fcm-nand.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NAND flash attached to Freescale eLBC + +description: + The Freescale Enhanced Local Bus controller (eLBC) contains logic to + interface with NAND flash, called the NAND Flash Control Machine (FCM). + This binding describes flash attached to an eLBC using the FCM. + +maintainers: + - J. Neuschäfer <j.ne@xxxxxxxxxx> + +allOf: + - $ref: raw-nand-chip.yaml# + +properties: + compatible: + oneOf: + - items: + - enum: + - fsl,mpc8313-fcm-nand + - fsl,mpc8315-fcm-nand + - fsl,mpc8377-fcm-nand + - fsl,mpc8378-fcm-nand + - fsl,mpc8379-fcm-nand + - fsl,mpc8536-fcm-nand + - fsl,mpc8569-fcm-nand + - fsl,mpc8572-fcm-nand + - fsl,p1020-fcm-nand + - fsl,p1021-fcm-nand + - fsl,p1025-fcm-nand + - fsl,p2020-fcm-nand + - const: fsl,elbc-fcm-nand + - const: fsl,elbc-fcm-nand + + reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 1 + +required: + - compatible + - reg + +unevaluatedProperties: false + +examples: + - | + localbus { + #address-cells = <2>; + #size-cells = <1>; + + nand@1,0 { + compatible = "fsl,mpc8315-fcm-nand", + "fsl,elbc-fcm-nand"; + reg = <0x1 0x0 0x2000>; + }; + }; + +... -- 2.48.0.rc1.219.gb6b6757d772