1*c66ec88fSEmmanuel VadotFreescale Localbus UPM programmed to work with NAND flash 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotRequired properties: 4*c66ec88fSEmmanuel Vadot- compatible : "fsl,upm-nand". 5*c66ec88fSEmmanuel Vadot- reg : should specify localbus chip select and size used for the chip. 6*c66ec88fSEmmanuel Vadot- fsl,upm-addr-offset : UPM pattern offset for the address latch. 7*c66ec88fSEmmanuel Vadot- fsl,upm-cmd-offset : UPM pattern offset for the command latch. 8*c66ec88fSEmmanuel Vadot 9*c66ec88fSEmmanuel VadotOptional properties: 10*c66ec88fSEmmanuel Vadot- fsl,upm-addr-line-cs-offsets : address offsets for multi-chip support. 11*c66ec88fSEmmanuel Vadot The corresponding address lines are used to select the chip. 12*c66ec88fSEmmanuel Vadot- gpios : may specify optional GPIOs connected to the Ready-Not-Busy pins 13*c66ec88fSEmmanuel Vadot (R/B#). For multi-chip devices, "n" GPIO definitions are required 14*c66ec88fSEmmanuel Vadot according to the number of chips. 15*c66ec88fSEmmanuel Vadot 16*c66ec88fSEmmanuel VadotDeprecated properties: 17*c66ec88fSEmmanuel Vadot- fsl,upm-wait-flags : add chip-dependent short delays after running the 18*c66ec88fSEmmanuel Vadot UPM pattern (0x1), after writing a data byte (0x2) or after 19*c66ec88fSEmmanuel Vadot writing out a buffer (0x4). 20*c66ec88fSEmmanuel Vadot- chip-delay : chip dependent delay for transferring data from array to 21*c66ec88fSEmmanuel Vadot read registers (tR). Required if property "gpios" is not used 22*c66ec88fSEmmanuel Vadot (R/B# pins not connected). 23*c66ec88fSEmmanuel Vadot 24*c66ec88fSEmmanuel VadotEach flash chip described may optionally contain additional sub-nodes 25*c66ec88fSEmmanuel Vadotdescribing partitions of the address space. See partition.txt for more 26*c66ec88fSEmmanuel Vadotdetail. 27*c66ec88fSEmmanuel Vadot 28*c66ec88fSEmmanuel VadotExamples: 29*c66ec88fSEmmanuel Vadot 30*c66ec88fSEmmanuel Vadotupm@1,0 { 31*c66ec88fSEmmanuel Vadot compatible = "fsl,upm-nand"; 32*c66ec88fSEmmanuel Vadot reg = <1 0 1>; 33*c66ec88fSEmmanuel Vadot fsl,upm-addr-offset = <16>; 34*c66ec88fSEmmanuel Vadot fsl,upm-cmd-offset = <8>; 35*c66ec88fSEmmanuel Vadot gpios = <&qe_pio_e 18 0>; 36*c66ec88fSEmmanuel Vadot 37*c66ec88fSEmmanuel Vadot flash { 38*c66ec88fSEmmanuel Vadot #address-cells = <1>; 39*c66ec88fSEmmanuel Vadot #size-cells = <1>; 40*c66ec88fSEmmanuel Vadot compatible = "..."; 41*c66ec88fSEmmanuel Vadot 42*c66ec88fSEmmanuel Vadot partition@0 { 43*c66ec88fSEmmanuel Vadot ... 44*c66ec88fSEmmanuel Vadot }; 45*c66ec88fSEmmanuel Vadot }; 46*c66ec88fSEmmanuel Vadot}; 47*c66ec88fSEmmanuel Vadot 48*c66ec88fSEmmanuel Vadotupm@3,0 { 49*c66ec88fSEmmanuel Vadot #address-cells = <0>; 50*c66ec88fSEmmanuel Vadot #size-cells = <0>; 51*c66ec88fSEmmanuel Vadot compatible = "tqc,tqm8548-upm-nand", "fsl,upm-nand"; 52*c66ec88fSEmmanuel Vadot reg = <3 0x0 0x800>; 53*c66ec88fSEmmanuel Vadot fsl,upm-addr-offset = <0x10>; 54*c66ec88fSEmmanuel Vadot fsl,upm-cmd-offset = <0x08>; 55*c66ec88fSEmmanuel Vadot /* Multi-chip NAND device */ 56*c66ec88fSEmmanuel Vadot fsl,upm-addr-line-cs-offsets = <0x0 0x200>; 57*c66ec88fSEmmanuel Vadot 58*c66ec88fSEmmanuel Vadot nand@0 { 59*c66ec88fSEmmanuel Vadot #address-cells = <1>; 60*c66ec88fSEmmanuel Vadot #size-cells = <1>; 61*c66ec88fSEmmanuel Vadot 62*c66ec88fSEmmanuel Vadot partition@0 { 63*c66ec88fSEmmanuel Vadot label = "fs"; 64*c66ec88fSEmmanuel Vadot reg = <0x00000000 0x10000000>; 65*c66ec88fSEmmanuel Vadot }; 66*c66ec88fSEmmanuel Vadot }; 67*c66ec88fSEmmanuel Vadot}; 68