xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/mtd/hisi504-nand.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunHisilicon Hip04 Soc NAND controller DT binding
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunRequired properties:
4*4882a593Smuzhiyun
5*4882a593Smuzhiyun- compatible:          Should be "hisilicon,504-nfc".
6*4882a593Smuzhiyun- reg:                 The first contains base physical address and size of
7*4882a593Smuzhiyun                       NAND controller's registers. The second contains base
8*4882a593Smuzhiyun                       physical address and size of NAND controller's buffer.
9*4882a593Smuzhiyun- interrupts:          Interrupt number for nfc.
10*4882a593Smuzhiyun- nand-bus-width:      See nand-controller.yaml.
11*4882a593Smuzhiyun- nand-ecc-mode:       Support none and hw ecc mode.
12*4882a593Smuzhiyun- #address-cells:      Partition address, should be set 1.
13*4882a593Smuzhiyun- #size-cells:         Partition size, should be set 1.
14*4882a593Smuzhiyun
15*4882a593SmuzhiyunOptional properties:
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun- nand-ecc-strength:   Number of bits to correct per ECC step.
18*4882a593Smuzhiyun- nand-ecc-step-size:  Number of data bytes covered by a single ECC step.
19*4882a593Smuzhiyun
20*4882a593SmuzhiyunThe following ECC strength and step size are currently supported:
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun - nand-ecc-strength = <16>, nand-ecc-step-size = <1024>
23*4882a593Smuzhiyun
24*4882a593SmuzhiyunFlash chip may optionally contain additional sub-nodes describing partitions of
25*4882a593Smuzhiyunthe address space. See partition.txt for more detail.
26*4882a593Smuzhiyun
27*4882a593SmuzhiyunExample:
28*4882a593Smuzhiyun
29*4882a593Smuzhiyun	nand: nand@4020000 {
30*4882a593Smuzhiyun		compatible = "hisilicon,504-nfc";
31*4882a593Smuzhiyun		reg = <0x4020000 0x10000>, <0x5000000 0x1000>;
32*4882a593Smuzhiyun		interrupts = <0 379 4>;
33*4882a593Smuzhiyun		nand-bus-width = <8>;
34*4882a593Smuzhiyun		nand-ecc-mode = "hw";
35*4882a593Smuzhiyun		nand-ecc-strength = <16>;
36*4882a593Smuzhiyun		nand-ecc-step-size = <1024>;
37*4882a593Smuzhiyun		#address-cells = <1>;
38*4882a593Smuzhiyun		#size-cells = <1>;
39*4882a593Smuzhiyun
40*4882a593Smuzhiyun		partition@0 {
41*4882a593Smuzhiyun			label = "nand_text";
42*4882a593Smuzhiyun			reg = <0x00000000 0x00400000>;
43*4882a593Smuzhiyun		};
44*4882a593Smuzhiyun
45*4882a593Smuzhiyun		...
46*4882a593Smuzhiyun
47*4882a593Smuzhiyun	};
48