xref: /freebsd/sys/contrib/device-tree/Bindings/mtd/nand-macronix.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotMacronix NANDs Device Tree Bindings
2*c66ec88fSEmmanuel Vadot-----------------------------------
3*c66ec88fSEmmanuel Vadot
4*c66ec88fSEmmanuel VadotMacronix NANDs support randomizer operation for scrambling user data,
5*c66ec88fSEmmanuel Vadotwhich can be enabled with a SET_FEATURE. The penalty when using the
6*c66ec88fSEmmanuel Vadotrandomizer are subpage accesses prohibited and more time period needed
7*c66ec88fSEmmanuel Vadotfor program operation, i.e., tPROG 300us to 340us (randomizer enabled).
8*c66ec88fSEmmanuel VadotEnabling the randomizer is a one time persistent and non reversible
9*c66ec88fSEmmanuel Vadotoperation.
10*c66ec88fSEmmanuel Vadot
11*c66ec88fSEmmanuel VadotFor more high-reliability concern, if subpage write is not available
12*c66ec88fSEmmanuel Vadotwith hardware ECC and not enabled at UBI level, then enabling the
13*c66ec88fSEmmanuel Vadotrandomizer is recommended by default by adding a new specific property
14*c66ec88fSEmmanuel Vadotin children nodes.
15*c66ec88fSEmmanuel Vadot
16*c66ec88fSEmmanuel VadotRequired NAND chip properties in children mode:
17*c66ec88fSEmmanuel Vadot- randomizer enable: should be "mxic,enable-randomizer-otp"
18*c66ec88fSEmmanuel Vadot
19*c66ec88fSEmmanuel VadotExample:
20*c66ec88fSEmmanuel Vadot
21*c66ec88fSEmmanuel Vadot	nand: nand-controller@unit-address {
22*c66ec88fSEmmanuel Vadot
23*c66ec88fSEmmanuel Vadot		nand@0 {
24*c66ec88fSEmmanuel Vadot			reg = <0>;
25*c66ec88fSEmmanuel Vadot			mxic,enable-randomizer-otp;
26*c66ec88fSEmmanuel Vadot		};
27*c66ec88fSEmmanuel Vadot	};
28