18c2ecf20Sopenharmony_ciHisilicon Hip04 Soc NAND controller DT binding
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciRequired properties:
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci- compatible:          Should be "hisilicon,504-nfc".
68c2ecf20Sopenharmony_ci- reg:                 The first contains base physical address and size of
78c2ecf20Sopenharmony_ci                       NAND controller's registers. The second contains base
88c2ecf20Sopenharmony_ci                       physical address and size of NAND controller's buffer.
98c2ecf20Sopenharmony_ci- interrupts:          Interrupt number for nfc.
108c2ecf20Sopenharmony_ci- nand-bus-width:      See nand-controller.yaml.
118c2ecf20Sopenharmony_ci- nand-ecc-mode:       Support none and hw ecc mode.
128c2ecf20Sopenharmony_ci- #address-cells:      Partition address, should be set 1.
138c2ecf20Sopenharmony_ci- #size-cells:         Partition size, should be set 1.
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciOptional properties:
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci- nand-ecc-strength:   Number of bits to correct per ECC step.
188c2ecf20Sopenharmony_ci- nand-ecc-step-size:  Number of data bytes covered by a single ECC step.
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciThe following ECC strength and step size are currently supported:
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci - nand-ecc-strength = <16>, nand-ecc-step-size = <1024>
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ciFlash chip may optionally contain additional sub-nodes describing partitions of
258c2ecf20Sopenharmony_cithe address space. See partition.txt for more detail.
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ciExample:
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci	nand: nand@4020000 {
308c2ecf20Sopenharmony_ci		compatible = "hisilicon,504-nfc";
318c2ecf20Sopenharmony_ci		reg = <0x4020000 0x10000>, <0x5000000 0x1000>;
328c2ecf20Sopenharmony_ci		interrupts = <0 379 4>;
338c2ecf20Sopenharmony_ci		nand-bus-width = <8>;
348c2ecf20Sopenharmony_ci		nand-ecc-mode = "hw";
358c2ecf20Sopenharmony_ci		nand-ecc-strength = <16>;
368c2ecf20Sopenharmony_ci		nand-ecc-step-size = <1024>;
378c2ecf20Sopenharmony_ci		#address-cells = <1>;
388c2ecf20Sopenharmony_ci		#size-cells = <1>;
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_ci		partition@0 {
418c2ecf20Sopenharmony_ci			label = "nand_text";
428c2ecf20Sopenharmony_ci			reg = <0x00000000 0x00400000>;
438c2ecf20Sopenharmony_ci		};
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_ci		...
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci	};
48