mrvl-gpio.txt 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. * Marvell PXA GPIO controller
  2. Required properties:
  3. - compatible : Should be "intel,pxa25x-gpio", "intel,pxa26x-gpio",
  4. "intel,pxa27x-gpio", "intel,pxa3xx-gpio",
  5. "marvell,pxa93x-gpio", "marvell,mmp-gpio",
  6. "marvell,mmp2-gpio" or marvell,pxa1928-gpio.
  7. - reg : Address and length of the register set for the device
  8. - interrupts : Should be the port interrupt shared by all gpio pins.
  9. There're three gpio interrupts in arch-pxa, and they're gpio0,
  10. gpio1 and gpio_mux. There're only one gpio interrupt in arch-mmp,
  11. gpio_mux.
  12. - interrupt-names : Should be the names of irq resources. Each interrupt
  13. uses its own interrupt name, so there should be as many interrupt names
  14. as referenced interrupts.
  15. - interrupt-controller : Identifies the node as an interrupt controller.
  16. - #interrupt-cells: Specifies the number of cells needed to encode an
  17. interrupt source.
  18. - gpio-controller : Marks the device node as a gpio controller.
  19. - #gpio-cells : Should be one. It is the pin number.
  20. Example for a MMP platform:
  21. gpio: gpio@d4019000 {
  22. compatible = "marvell,mmp-gpio";
  23. reg = <0xd4019000 0x1000>;
  24. interrupts = <49>;
  25. interrupt-names = "gpio_mux";
  26. gpio-controller;
  27. #gpio-cells = <1>;
  28. interrupt-controller;
  29. #interrupt-cells = <1>;
  30. };
  31. Example for a PXA3xx platform:
  32. gpio: gpio@40e00000 {
  33. compatible = "intel,pxa3xx-gpio";
  34. reg = <0x40e00000 0x10000>;
  35. interrupt-names = "gpio0", "gpio1", "gpio_mux";
  36. interrupts = <8 9 10>;
  37. gpio-controller;
  38. #gpio-cells = <0x2>;
  39. interrupt-controller;
  40. #interrupt-cells = <0x2>;
  41. };
  42. * Marvell Orion GPIO Controller
  43. Required properties:
  44. - compatible : Should be "marvell,orion-gpio"
  45. - reg : Address and length of the register set for controller.
  46. - gpio-controller : So we know this is a gpio controller.
  47. - ngpio : How many gpios this controller has.
  48. - interrupts : Up to 4 Interrupts for the controller.
  49. Optional properties:
  50. - mask-offset : For SMP Orions, offset for Nth CPU
  51. Example:
  52. gpio0: gpio@10100 {
  53. compatible = "marvell,orion-gpio";
  54. #gpio-cells = <2>;
  55. gpio-controller;
  56. reg = <0x10100 0x40>;
  57. ngpio = <32>;
  58. interrupts = <35>, <36>, <37>, <38>;
  59. };