aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNishanth Menon <nm@ti.com>2018-07-16 14:06:06 -0400
committerJassi Brar <jaswinder.singh@linaro.org>2018-08-03 09:27:41 -0400
commit0f23a179746c10de8f8fe6ecc4767a0d6c824fa9 (patch)
tree35d1d28ca883a021f29c284cda61829349b9c007
parent89c976c2f3fc02b95ae0a4a35dc3373ec8bfbdcb (diff)
dt-bindings: mailbox: Add support for secure proxy threads
Secure Proxy is another communication scheme in Texas Instrument's devices intended to provide an unique communication path from various processors in the System on Chip(SoC) to a central System Controller. Secure proxy is, in effect, an evolution of current generation Message Manager hardware block found in K2G devices. However the following changes have taken place: Secure Proxy instance exposes "threads" or "proxies" which is primary representation of "a" communication channel. Each thread is preconfigured by System controller configuration based on SoC usage requirements. Secure proxy by itself represents a single "queue" of communication but allows the proxies to be independently operated. Each Secure proxy thread can uniquely have their own error and threshold interrupts allowing for more fine control of IRQ handling. Provide an hardware description of the same for device tree representation. See AM65x Technical Reference Manual (SPRUID7, April 2018) for further details: http://www.ti.com/lit/pdf/spruid7 Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
-rw-r--r--Documentation/devicetree/bindings/mailbox/ti,secure-proxy.txt50
1 files changed, 50 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/mailbox/ti,secure-proxy.txt b/Documentation/devicetree/bindings/mailbox/ti,secure-proxy.txt
new file mode 100644
index 000000000000..6c9c7daf0f5c
--- /dev/null
+++ b/Documentation/devicetree/bindings/mailbox/ti,secure-proxy.txt
@@ -0,0 +1,50 @@
1Texas Instruments' Secure Proxy
2========================================
3
4The Texas Instruments' secure proxy is a mailbox controller that has
5configurable queues selectable at SoC(System on Chip) integration. The
6Message manager is broken up into different address regions that are
7called "threads" or "proxies" - each instance is unidirectional and is
8instantiated at SoC integration level by system controller to indicate
9receive or transmit path.
10
11Message Manager Device Node:
12===========================
13Required properties:
14--------------------
15- compatible: Shall be "ti,am654-secure-proxy"
16- reg-names target_data - Map the proxy data region
17 rt - Map the realtime status region
18 scfg - Map the configuration region
19- reg: Contains the register map per reg-names.
20- #mbox-cells Shall be 1 and shall refer to the transfer path
21 called thread.
22- interrupt-names: Contains interrupt names matching the rx transfer path
23 for a given SoC. Receive interrupts shall be of the
24 format: "rx_<PID>".
25- interrupts: Contains the interrupt information corresponding to
26 interrupt-names property.
27
28Example(AM654):
29------------
30
31 secure_proxy: mailbox@32c00000 {
32 compatible = "ti,am654-secure-proxy";
33 #mbox-cells = <1>;
34 reg-names = "target_data", "rt", "scfg";
35 reg = <0x0 0x32c00000 0x0 0x100000>,
36 <0x0 0x32400000 0x0 0x100000>,
37 <0x0 0x32800000 0x0 0x100000>;
38 interrupt-names = "rx_011";
39 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
40 };
41
42 dmsc: dmsc {
43 [...]
44 mbox-names = "rx", "tx";
45 # RX Thread ID is 11
46 # TX Thread ID is 13
47 mboxes= <&secure_proxy 11>,
48 <&secure_proxy 13>;
49 [...]
50 };