fsl-upm-nand.txt 1.8 KB

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