2008-07-04 20:53:28 +04:00
|
|
|
Freescale Localbus UPM programmed to work with NAND flash
|
|
|
|
|
|
|
|
Required properties:
|
|
|
|
- compatible : "fsl,upm-nand".
|
|
|
|
- reg : should specify localbus chip select and size used for the chip.
|
|
|
|
- fsl,upm-addr-offset : UPM pattern offset for the address latch.
|
|
|
|
- fsl,upm-cmd-offset : UPM pattern offset for the command latch.
|
|
|
|
|
2009-03-30 14:02:44 +04:00
|
|
|
Optional properties:
|
|
|
|
- fsl,upm-wait-flags : add chip-dependent short delays after running the
|
|
|
|
UPM pattern (0x1), after writing a data byte (0x2) or after
|
|
|
|
writing out a buffer (0x4).
|
|
|
|
- fsl,upm-addr-line-cs-offsets : address offsets for multi-chip support.
|
|
|
|
The corresponding address lines are used to select the chip.
|
|
|
|
- gpios : may specify optional GPIOs connected to the Ready-Not-Busy pins
|
|
|
|
(R/B#). For multi-chip devices, "n" GPIO definitions are required
|
|
|
|
according to the number of chips.
|
2011-03-31 05:57:33 +04:00
|
|
|
- chip-delay : chip dependent delay for transferring data from array to
|
2009-03-30 14:02:44 +04:00
|
|
|
read registers (tR). Required if property "gpios" is not used
|
|
|
|
(R/B# pins not connected).
|
|
|
|
|
2012-03-28 01:54:15 +04:00
|
|
|
Each flash chip described may optionally contain additional sub-nodes
|
|
|
|
describing partitions of the address space. See partition.txt for more
|
|
|
|
detail.
|
|
|
|
|
2009-03-30 14:02:44 +04:00
|
|
|
Examples:
|
2008-07-04 20:53:28 +04:00
|
|
|
|
|
|
|
upm@1,0 {
|
|
|
|
compatible = "fsl,upm-nand";
|
|
|
|
reg = <1 0 1>;
|
|
|
|
fsl,upm-addr-offset = <16>;
|
|
|
|
fsl,upm-cmd-offset = <8>;
|
|
|
|
gpios = <&qe_pio_e 18 0>;
|
|
|
|
|
|
|
|
flash {
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <1>;
|
|
|
|
compatible = "...";
|
|
|
|
|
|
|
|
partition@0 {
|
|
|
|
...
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2009-03-30 14:02:44 +04:00
|
|
|
|
|
|
|
upm@3,0 {
|
|
|
|
#address-cells = <0>;
|
|
|
|
#size-cells = <0>;
|
|
|
|
compatible = "tqc,tqm8548-upm-nand", "fsl,upm-nand";
|
|
|
|
reg = <3 0x0 0x800>;
|
|
|
|
fsl,upm-addr-offset = <0x10>;
|
|
|
|
fsl,upm-cmd-offset = <0x08>;
|
|
|
|
/* Multi-chip NAND device */
|
|
|
|
fsl,upm-addr-line-cs-offsets = <0x0 0x200>;
|
|
|
|
fsl,upm-wait-flags = <0x5>;
|
|
|
|
chip-delay = <25>; // in micro-seconds
|
|
|
|
|
|
|
|
nand@0 {
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <1>;
|
|
|
|
|
|
|
|
partition@0 {
|
|
|
|
label = "fs";
|
|
|
|
reg = <0x00000000 0x10000000>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|