gpmc-nand.txt 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. Device tree bindings for GPMC connected NANDs
  2. GPMC connected NAND (found on OMAP boards) are represented as child nodes of
  3. the GPMC controller with a name of "nand".
  4. All timing relevant properties as well as generic gpmc child properties are
  5. explained in a separate documents - please refer to
  6. Documentation/devicetree/bindings/bus/ti-gpmc.txt
  7. For NAND specific properties such as ECC modes or bus width, please refer to
  8. Documentation/devicetree/bindings/mtd/nand.txt
  9. Required properties:
  10. - reg: The CS line the peripheral is connected to
  11. Optional properties:
  12. - nand-bus-width: Set this numeric value to 16 if the hardware
  13. is wired that way. If not specified, a bus
  14. width of 8 is assumed.
  15. - ti,nand-ecc-opt: A string setting the ECC layout to use. One of:
  16. "sw" Software method (default)
  17. "hw" Hardware method
  18. "hw-romcode" gpmc hamming mode method & romcode layout
  19. "bch4" 4-bit BCH ecc code
  20. "bch8" 8-bit BCH ecc code
  21. - elm_id: Specifies elm device node. This is required to support BCH
  22. error correction using ELM module.
  23. For inline partiton table parsing (optional):
  24. - #address-cells: should be set to 1
  25. - #size-cells: should be set to 1
  26. Example for an AM33xx board:
  27. gpmc: gpmc@50000000 {
  28. compatible = "ti,am3352-gpmc";
  29. ti,hwmods = "gpmc";
  30. reg = <0x50000000 0x1000000>;
  31. interrupts = <100>;
  32. gpmc,num-cs = <8>;
  33. gpmc,num-waitpins = <2>;
  34. #address-cells = <2>;
  35. #size-cells = <1>;
  36. ranges = <0 0 0x08000000 0x2000>; /* CS0: NAND */
  37. elm_id = <&elm>;
  38. nand@0,0 {
  39. reg = <0 0 0>; /* CS0, offset 0 */
  40. nand-bus-width = <16>;
  41. ti,nand-ecc-opt = "bch8";
  42. gpmc,sync-clk = <0>;
  43. gpmc,cs-on = <0>;
  44. gpmc,cs-rd-off = <44>;
  45. gpmc,cs-wr-off = <44>;
  46. gpmc,adv-on = <6>;
  47. gpmc,adv-rd-off = <34>;
  48. gpmc,adv-wr-off = <44>;
  49. gpmc,we-off = <40>;
  50. gpmc,oe-off = <54>;
  51. gpmc,access = <64>;
  52. gpmc,rd-cycle = <82>;
  53. gpmc,wr-cycle = <82>;
  54. gpmc,wr-access = <40>;
  55. gpmc,wr-data-mux-bus = <0>;
  56. #address-cells = <1>;
  57. #size-cells = <1>;
  58. /* partitions go here */
  59. };
  60. };