realtek,rtl-intc.yaml 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/interrupt-controller/realtek,rtl-intc.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Realtek RTL SoC interrupt controller
  7. description:
  8. Interrupt controller and router for Realtek MIPS SoCs, allowing each SoC
  9. interrupt to be routed to one parent CPU (hardware) interrupt, or left
  10. disconnected.
  11. All connected input lines from SoC peripherals can be masked individually,
  12. and an interrupt status register is present to indicate which interrupts are
  13. pending.
  14. maintainers:
  15. - Birger Koblitz <mail@birger-koblitz.de>
  16. - Bert Vermeulen <bert@biot.com>
  17. - John Crispin <john@phrozen.org>
  18. properties:
  19. compatible:
  20. oneOf:
  21. - items:
  22. - enum:
  23. - realtek,rtl8380-intc
  24. - realtek,rtl9300-intc
  25. - const: realtek,rtl-intc
  26. - const: realtek,rtl-intc
  27. deprecated: true
  28. "#interrupt-cells":
  29. description:
  30. SoC interrupt line index.
  31. const: 1
  32. reg:
  33. minItems: 1
  34. items:
  35. - description: vpe0 registers
  36. - description: vpe1 registers
  37. interrupts:
  38. minItems: 1
  39. maxItems: 15
  40. description:
  41. List of parent interrupts, in the order that they are connected to this
  42. interrupt router's outputs, starting at the first output.
  43. interrupt-controller: true
  44. interrupt-map:
  45. deprecated: true
  46. description: Describes mapping from SoC interrupts to CPU interrupts
  47. required:
  48. - compatible
  49. - reg
  50. - "#interrupt-cells"
  51. - interrupt-controller
  52. allOf:
  53. - if:
  54. properties:
  55. compatible:
  56. const: realtek,rtl-intc
  57. then:
  58. properties:
  59. "#address-cells":
  60. const: 0
  61. required:
  62. - "#address-cells"
  63. - interrupt-map
  64. else:
  65. required:
  66. - interrupts
  67. - if:
  68. properties:
  69. compatible:
  70. contains:
  71. const: realtek,rtl9300-intc
  72. then:
  73. properties:
  74. reg:
  75. minItems: 2
  76. maxItems: 2
  77. else:
  78. properties:
  79. reg:
  80. maxItems: 1
  81. additionalProperties: false
  82. examples:
  83. - |
  84. interrupt-controller@3000 {
  85. compatible = "realtek,rtl8380-intc", "realtek,rtl-intc";
  86. #interrupt-cells = <1>;
  87. interrupt-controller;
  88. reg = <0x3000 0x18>;
  89. interrupt-parent = <&cpuintc>;
  90. interrupts = <2>, <3>, <4>, <5>, <6>;
  91. };