mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-13 22:25:03 +00:00
dt-bindings: irqchip: Introduce TISCI Interrupt Aggregator bindings
Add the DT binding documentation for Interrupt Aggregator driver. Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
This commit is contained in:
parent
cd844b0715
commit
accaf1fbfb
2 changed files with 67 additions and 0 deletions
|
@ -0,0 +1,66 @@
|
||||||
|
Texas Instruments K3 Interrupt Aggregator
|
||||||
|
=========================================
|
||||||
|
|
||||||
|
The Interrupt Aggregator (INTA) provides a centralized machine
|
||||||
|
which handles the termination of system events to that they can
|
||||||
|
be coherently processed by the host(s) in the system. A maximum
|
||||||
|
of 64 events can be mapped to a single interrupt.
|
||||||
|
|
||||||
|
|
||||||
|
Interrupt Aggregator
|
||||||
|
+-----------------------------------------+
|
||||||
|
| Intmap VINT |
|
||||||
|
| +--------------+ +------------+ |
|
||||||
|
m ------>| | vint | bit | | 0 |.....|63| vint0 |
|
||||||
|
. | +--------------+ +------------+ | +------+
|
||||||
|
. | . . | | HOST |
|
||||||
|
Globalevents ------>| . . |------>| IRQ |
|
||||||
|
. | . . | | CTRL |
|
||||||
|
. | . . | +------+
|
||||||
|
n ------>| +--------------+ +------------+ |
|
||||||
|
| | vint | bit | | 0 |.....|63| vintx |
|
||||||
|
| +--------------+ +------------+ |
|
||||||
|
| |
|
||||||
|
+-----------------------------------------+
|
||||||
|
|
||||||
|
Configuration of these Intmap registers that maps global events to vint is done
|
||||||
|
by a system controller (like the Device Memory and Security Controller on K3
|
||||||
|
AM654 SoC). Driver should request the system controller to get the range
|
||||||
|
of global events and vints assigned to the requesting host. Management
|
||||||
|
of these requested resources should be handled by driver and requests
|
||||||
|
system controller to map specific global event to vint, bit pair.
|
||||||
|
|
||||||
|
Communication between the host processor running an OS and the system
|
||||||
|
controller happens through a protocol called TI System Control Interface
|
||||||
|
(TISCI protocol). For more details refer:
|
||||||
|
Documentation/devicetree/bindings/arm/keystone/ti,sci.txt
|
||||||
|
|
||||||
|
TISCI Interrupt Aggregator Node:
|
||||||
|
-------------------------------
|
||||||
|
- compatible: Must be "ti,sci-inta".
|
||||||
|
- reg: Should contain registers location and length.
|
||||||
|
- interrupt-controller: Identifies the node as an interrupt controller
|
||||||
|
- msi-controller: Identifies the node as an MSI controller.
|
||||||
|
- interrupt-parent: phandle of irq parent.
|
||||||
|
- ti,sci: Phandle to TI-SCI compatible System controller node.
|
||||||
|
- ti,sci-dev-id: TISCI device ID of the Interrupt Aggregator.
|
||||||
|
- ti,sci-rm-range-vint: Array of TISCI subtype ids representing vints(inta
|
||||||
|
outputs) range within this INTA, assigned to the
|
||||||
|
requesting host context.
|
||||||
|
- ti,sci-rm-range-global-event: Array of TISCI subtype ids representing the
|
||||||
|
global events range reaching this IA and are assigned
|
||||||
|
to the requesting host context.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
--------
|
||||||
|
main_udmass_inta: interrupt-controller@33d00000 {
|
||||||
|
compatible = "ti,sci-inta";
|
||||||
|
reg = <0x0 0x33d00000 0x0 0x100000>;
|
||||||
|
interrupt-controller;
|
||||||
|
msi-controller;
|
||||||
|
interrupt-parent = <&main_navss_intr>;
|
||||||
|
ti,sci = <&dmsc>;
|
||||||
|
ti,sci-dev-id = <179>;
|
||||||
|
ti,sci-rm-range-vint = <0x0>;
|
||||||
|
ti,sci-rm-range-global-event = <0x1>;
|
||||||
|
};
|
|
@ -15350,6 +15350,7 @@ F: Documentation/devicetree/bindings/clock/ti,sci-clk.txt
|
||||||
F: drivers/clk/keystone/sci-clk.c
|
F: drivers/clk/keystone/sci-clk.c
|
||||||
F: drivers/reset/reset-ti-sci.c
|
F: drivers/reset/reset-ti-sci.c
|
||||||
F: Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt
|
F: Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt
|
||||||
|
F: Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.txt
|
||||||
F: drivers/irqchip/irq-ti-sci-intr.c
|
F: drivers/irqchip/irq-ti-sci-intr.c
|
||||||
|
|
||||||
Texas Instruments ASoC drivers
|
Texas Instruments ASoC drivers
|
||||||
|
|
Loading…
Reference in a new issue