f9b28ccbc7
This adds a device tree binding for the VIC based on the of_irq_init() support. This adds an irqdomain to the vic and always registers all vics in the static vic array rather than for pm only to keep track of the irq domain. struct irq_data::hwirq is used where appropriate rather than runtime masking. v3: - include linux/export.h for THIS_MODULE v2: - use irq_domain_simple_ops - remove stub implementation of vic_of_init for !CONFIG_OF - Make VIC select IRQ_DOMAIN Reviewed-by: Rob Herring <robherring2@gmail.com> Reviewed-by: Grant Likely <grant.likely@secretlab.ca> Tested-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Jamie Iles <jamie@jamieiles.com>
29 lines
894 B
Text
29 lines
894 B
Text
* ARM Vectored Interrupt Controller
|
|
|
|
One or more Vectored Interrupt Controllers (VIC's) can be connected in an ARM
|
|
system for interrupt routing. For multiple controllers they can either be
|
|
nested or have the outputs wire-OR'd together.
|
|
|
|
Required properties:
|
|
|
|
- compatible : should be one of
|
|
"arm,pl190-vic"
|
|
"arm,pl192-vic"
|
|
- interrupt-controller : Identifies the node as an interrupt controller
|
|
- #interrupt-cells : The number of cells to define the interrupts. Must be 1 as
|
|
the VIC has no configuration options for interrupt sources. The cell is a u32
|
|
and defines the interrupt number.
|
|
- reg : The register bank for the VIC.
|
|
|
|
Optional properties:
|
|
|
|
- interrupts : Interrupt source for parent controllers if the VIC is nested.
|
|
|
|
Example:
|
|
|
|
vic0: interrupt-controller@60000 {
|
|
compatible = "arm,pl192-vic";
|
|
interrupt-controller;
|
|
#interrupt-cells = <1>;
|
|
reg = <0x60000 0x1000>;
|
|
};
|