1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/mtd/rockchip,nand-controller.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Rockchip SoCs NAND FLASH Controller (NFC)
10 - $ref: nand-controller.yaml#
13 - Heiko Stuebner <heiko@sntech.de>
18 - const: rockchip,px30-nfc
19 - const: rockchip,rk2928-nfc
20 - const: rockchip,rv1108-nfc
25 - const: rockchip,rk2928-nfc
27 - const: rockchip,rk3308-nfc
28 - const: rockchip,rv1108-nfc
39 - description: Bus Clock
40 - description: Module Clock
60 $ref: raw-nand-chip.yaml
73 enum: [16, 24, 40, 60, 70]
75 The ECC configurations that can be supported are as follows.
76 NFC v600 ECC 16, 24, 40, 60
77 RK2928, RK3066, RK3188
79 NFC v622 ECC 16, 24, 40, 60
85 NFC v900 ECC 16, 40, 60, 70
92 $ref: /schemas/types.yaml#/definitions/uint32
96 The NFC driver need this information to select ECC
97 algorithms supported by the boot ROM.
98 Only used in combination with 'nand-is-boot-medium'.
100 rockchip,boot-ecc-strength:
101 enum: [16, 24, 40, 60, 70]
102 $ref: /schemas/types.yaml#/definitions/uint32
104 If specified it indicates that a different BCH/ECC setting is
105 supported by the boot ROM.
107 RK2928, RK3066, RK3188
109 NFC v622 ECC 16, 24, 40, 60
118 Only used in combination with 'nand-is-boot-medium'.
120 unevaluatedProperties: false
129 unevaluatedProperties: false
133 #include <dt-bindings/clock/rk3308-cru.h>
134 #include <dt-bindings/interrupt-controller/arm-gic.h>
135 nfc: nand-controller@ff4b0000 {
136 compatible = "rockchip,rk3308-nfc",
137 "rockchip,rv1108-nfc";
138 reg = <0xff4b0000 0x4000>;
139 interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
140 clocks = <&cru HCLK_NANDC>, <&cru SCLK_NANDC>;
141 clock-names = "ahb", "nfc";
142 assigned-clocks = <&clks SCLK_NANDC>;
143 assigned-clock-rates = <150000000>;
145 pinctrl-0 = <&flash_ale &flash_bus8 &flash_cle &flash_csn0
146 &flash_rdn &flash_rdy &flash_wrn>;
147 pinctrl-names = "default";
149 #address-cells = <1>;
155 nand-bus-width = <8>;
156 nand-ecc-mode = "hw";
157 nand-ecc-step-size = <1024>;
158 nand-ecc-strength = <16>;
160 rockchip,boot-blks = <8>;
161 rockchip,boot-ecc-strength = <16>;