pl061-gpio.yaml 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/gpio/pl061-gpio.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: ARM PL061 GPIO controller
  7. maintainers:
  8. - Linus Walleij <linus.walleij@linaro.org>
  9. - Rob Herring <robh@kernel.org>
  10. # We need a select here so we don't match all nodes with 'arm,primecell'
  11. select:
  12. properties:
  13. compatible:
  14. contains:
  15. const: arm,pl061
  16. required:
  17. - compatible
  18. properties:
  19. $nodename:
  20. pattern: "^gpio@[0-9a-f]+$"
  21. compatible:
  22. items:
  23. - const: arm,pl061
  24. - const: arm,primecell
  25. reg:
  26. maxItems: 1
  27. interrupts:
  28. oneOf:
  29. - maxItems: 1
  30. - maxItems: 8
  31. interrupt-controller: true
  32. "#interrupt-cells":
  33. const: 2
  34. clocks:
  35. maxItems: 1
  36. clock-names: true
  37. "#gpio-cells":
  38. const: 2
  39. gpio-controller: true
  40. gpio-line-names: true
  41. gpio-ranges:
  42. minItems: 1
  43. maxItems: 8
  44. required:
  45. - compatible
  46. - reg
  47. - interrupts
  48. - interrupt-controller
  49. - "#interrupt-cells"
  50. - clocks
  51. - "#gpio-cells"
  52. - gpio-controller
  53. additionalProperties: false
  54. ...