lantiq,pinctrl-falcon.txt 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. Lantiq FALCON pinmux controller
  2. Required properties:
  3. - compatible: "lantiq,pinctrl-falcon"
  4. - reg: Should contain the physical address and length of the gpio/pinmux
  5. register range
  6. Please refer to pinctrl-bindings.txt in this directory for details of the
  7. common pinctrl bindings used by client devices, including the meaning of the
  8. phrase "pin configuration node".
  9. Lantiq's pin configuration nodes act as a container for an arbitrary number of
  10. subnodes. Each of these subnodes represents some desired configuration for a
  11. pin, a group, or a list of pins or groups. This configuration can include the
  12. mux function to select on those group(s), and two pin configuration parameters:
  13. pull-up and open-drain
  14. The name of each subnode is not important as long as it is unique; all subnodes
  15. should be enumerated and processed purely based on their content.
  16. Each subnode only affects those parameters that are explicitly listed. In
  17. other words, a subnode that lists a mux function but no pin configuration
  18. parameters implies no information about any pin configuration parameters.
  19. Similarly, a pin subnode that describes a pullup parameter implies no
  20. information about e.g. the mux function.
  21. We support 2 types of nodes.
  22. Definition of mux function groups:
  23. Required subnode-properties:
  24. - lantiq,groups : An array of strings. Each string contains the name of a group.
  25. Valid values for these names are listed below.
  26. - lantiq,function: A string containing the name of the function to mux to the
  27. group. Valid values for function names are listed below.
  28. Valid values for group and function names:
  29. mux groups:
  30. por, ntr, ntr8k, hrst, mdio, bootled, asc0, spi, spi cs0, spi cs1, i2c,
  31. jtag, slic, pcm, asc1
  32. functions:
  33. rst, ntr, mdio, led, asc, spi, i2c, jtag, slic, pcm
  34. Definition of pin configurations:
  35. Required subnode-properties:
  36. - lantiq,pins : An array of strings. Each string contains the name of a pin.
  37. Valid values for these names are listed below.
  38. Optional subnode-properties:
  39. - lantiq,pull: Integer, representing the pull-down/up to apply to the pin.
  40. 0: none, 1: down
  41. - lantiq,drive-current: Boolean, enables drive-current
  42. - lantiq,slew-rate: Boolean, enables slew-rate
  43. Example:
  44. pinmux0 {
  45. compatible = "lantiq,pinctrl-falcon";
  46. pinctrl-names = "default";
  47. pinctrl-0 = <&state_default>;
  48. state_default: pinmux {
  49. asc0 {
  50. lantiq,groups = "asc0";
  51. lantiq,function = "asc";
  52. };
  53. ntr {
  54. lantiq,groups = "ntr8k";
  55. lantiq,function = "ntr";
  56. };
  57. i2c {
  58. lantiq,groups = "i2c";
  59. lantiq,function = "i2c";
  60. };
  61. hrst {
  62. lantiq,groups = "hrst";
  63. lantiq,function = "rst";
  64. };
  65. };
  66. };