-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
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>
- Loading branch information
Lokesh Vutla
authored and
Marc Zyngier
committed
May 1, 2019
1 parent
cd844b0
commit accaf1f
Showing
2 changed files
with
67 additions
and
0 deletions.
There are no files selected for viewing
66 changes: 66 additions & 0 deletions
66
Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters