nvidia,tegra-ictlr.txt 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. NVIDIA Legacy Interrupt Controller
  2. All Tegra SoCs contain a legacy interrupt controller that routes
  3. interrupts to the GIC, and also serves as a wakeup source. It is also
  4. referred to as "ictlr", hence the name of the binding.
  5. The HW block exposes a number of interrupt controllers, each
  6. implementing a set of 32 interrupts.
  7. Required properties:
  8. - compatible : should be: "nvidia,tegra<chip>-ictlr". The LIC on
  9. subsequent SoCs remained backwards-compatible with Tegra30, so on
  10. Tegra generations later than Tegra30 the compatible value should
  11. include "nvidia,tegra30-ictlr".
  12. - reg : Specifies base physical address and size of the registers.
  13. Each controller must be described separately (Tegra20 has 4 of them,
  14. whereas Tegra30 and later have 5"
  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. The value must be 3.
  18. - interrupt-parent : a phandle to the GIC these interrupts are routed
  19. to.
  20. Notes:
  21. - Because this HW ultimately routes interrupts to the GIC, the
  22. interrupt specifier must be that of the GIC.
  23. - Only SPIs can use the ictlr as an interrupt parent. SGIs and PPIs
  24. are explicitly forbidden.
  25. Example:
  26. ictlr: interrupt-controller@60004000 {
  27. compatible = "nvidia,tegra20-ictlr", "nvidia,tegra-ictlr";
  28. reg = <0x60004000 64>,
  29. <0x60004100 64>,
  30. <0x60004200 64>,
  31. <0x60004300 64>;
  32. interrupt-controller;
  33. #interrupt-cells = <3>;
  34. interrupt-parent = <&intc>;
  35. };