forked from Minki/linux
9dbd90f17e
This patch adds an irqchip driver for the main interrupt controller found on Marvell Orion SoCs (Kirkwood, Dove, Orion5x, Discovery Innovation). Corresponding device tree documentation is also added. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Acked-by: Grant Likely <grant.likely@linaro.org> Cc: Rob Herring <rob.herring@calxeda.com> Cc: Rob Landley <rob@landley.net> Cc: John Stultz <john.stultz@linaro.org> Cc: Russell King <linux@arm.linux.org.uk> Cc: Jason Cooper <jason@lakedaemon.net> Cc: Andrew Lunn <andrew@lunn.ch> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Gregory Clement <gregory.clement@free-electrons.com> Cc: devicetree-discuss@lists.ozlabs.org Cc: linux-arm-kernel@lists.infradead.org Link: http://lkml.kernel.org/r/1370536034-23956-2-git-send-email-sebastian.hesselbarth@gmail.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
49 lines
1.6 KiB
Plaintext
49 lines
1.6 KiB
Plaintext
Marvell Orion SoC interrupt controllers
|
|
|
|
* Main interrupt controller
|
|
|
|
Required properties:
|
|
- compatible: shall be "marvell,orion-intc"
|
|
- reg: base address(es) of interrupt registers starting with CAUSE register
|
|
- interrupt-controller: identifies the node as an interrupt controller
|
|
- #interrupt-cells: number of cells to encode an interrupt source, shall be 1
|
|
|
|
The interrupt sources map to the corresponding bits in the interrupt
|
|
registers, i.e.
|
|
- 0 maps to bit 0 of first base address,
|
|
- 1 maps to bit 1 of first base address,
|
|
- 32 maps to bit 0 of second base address, and so on.
|
|
|
|
Example:
|
|
intc: interrupt-controller {
|
|
compatible = "marvell,orion-intc";
|
|
interrupt-controller;
|
|
#interrupt-cells = <1>;
|
|
/* Dove has 64 first level interrupts */
|
|
reg = <0x20200 0x10>, <0x20210 0x10>;
|
|
};
|
|
|
|
* Bridge interrupt controller
|
|
|
|
Required properties:
|
|
- compatible: shall be "marvell,orion-bridge-intc"
|
|
- reg: base address of bridge interrupt registers starting with CAUSE register
|
|
- interrupts: bridge interrupt of the main interrupt controller
|
|
- interrupt-controller: identifies the node as an interrupt controller
|
|
- #interrupt-cells: number of cells to encode an interrupt source, shall be 1
|
|
|
|
Optional properties:
|
|
- marvell,#interrupts: number of interrupts provided by bridge interrupt
|
|
controller, defaults to 32 if not set
|
|
|
|
Example:
|
|
bridge_intc: interrupt-controller {
|
|
compatible = "marvell,orion-bridge-intc";
|
|
interrupt-controller;
|
|
#interrupt-cells = <1>;
|
|
reg = <0x20110 0x8>;
|
|
interrupts = <0>;
|
|
/* Dove bridge provides 5 interrupts */
|
|
marvell,#interrupts = <5>;
|
|
};
|