berlin,pinctrl.txt 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. * Pin-controller driver for the Marvell Berlin SoCs
  2. Pin control registers are part of both chip controller and system
  3. controller register sets. Pin controller nodes should be a sub-node of
  4. either the chip controller or system controller node. The pins
  5. controlled are organized in groups, so no actual pin information is
  6. needed.
  7. A pin-controller node should contain subnodes representing the pin group
  8. configurations, one per function. Each subnode has the group name and
  9. the muxing function used.
  10. Be aware the Marvell Berlin datasheets use the keyword 'mode' for what
  11. is called a 'function' in the pin-controller subsystem.
  12. Required properties:
  13. - compatible: should be one of:
  14. "marvell,berlin2-soc-pinctrl",
  15. "marvell,berlin2-system-pinctrl",
  16. "marvell,berlin2cd-soc-pinctrl",
  17. "marvell,berlin2cd-system-pinctrl",
  18. "marvell,berlin2q-soc-pinctrl",
  19. "marvell,berlin2q-system-pinctrl",
  20. "marvell,berlin4ct-avio-pinctrl",
  21. "marvell,berlin4ct-soc-pinctrl",
  22. "marvell,berlin4ct-system-pinctrl"
  23. Required subnode-properties:
  24. - groups: a list of strings describing the group names.
  25. - function: a string describing the function used to mux the groups.
  26. Example:
  27. sys_pinctrl: pin-controller {
  28. compatible = "marvell,berlin2q-system-pinctrl";
  29. uart0_pmux: uart0-pmux {
  30. groups = "GSM12";
  31. function = "uart0";
  32. };
  33. };
  34. &uart0 {
  35. pinctrl-0 = <&uart0_pmux>;
  36. pinctrl-names = "default";
  37. };