xref: /linux/Documentation/devicetree/bindings/mailbox/ti,secure-proxy.yaml (revision 5b193d6a8973655f19de87a7873ce31dee2d5fe6)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mailbox/ti,secure-proxy.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Texas Instruments' Secure Proxy
8
9maintainers:
10  - Nishanth Menon <nm@ti.com>
11
12description: |
13  The Texas Instruments' secure proxy is a mailbox controller that has
14  configurable queues selectable at SoC(System on Chip) integration. The
15  Message manager is broken up into different address regions that are
16  called "threads" or "proxies" - each instance is unidirectional and is
17  instantiated at SoC integration level by system controller to indicate
18  receive or transmit path.
19
20properties:
21  $nodename:
22    pattern: "^mailbox@[0-9a-f]+$"
23
24  compatible:
25    enum:
26      - ti,am654-secure-proxy
27      - ti,tda54-main-secure-proxy
28
29  "#mbox-cells":
30    const: 1
31    description:
32      Contains the secure proxy thread ID used for the specific transfer path.
33
34  reg-names:
35    items:
36      - const: target_data
37      - const: rt
38      - const: scfg
39
40  reg:
41    maxItems: 3
42
43  interrupt-names:
44    minItems: 1
45    maxItems: 100
46    items:
47      pattern: "^rx_[0-9]{3}$"
48    description:
49      Contains the interrupt name information for the Rx interrupt path for
50      secure proxy thread in the form 'rx_<PID>'.
51
52  interrupts:
53    minItems: 1
54    maxItems: 100
55    description:
56      Contains the interrupt information for the Rx interrupt path for secure
57      proxy.
58
59required:
60  - compatible
61  - reg-names
62  - reg
63  - interrupt-names
64  - interrupts
65  - "#mbox-cells"
66
67additionalProperties: false
68
69examples:
70  - |
71    #include <dt-bindings/interrupt-controller/arm-gic.h>
72    secure_proxy: mailbox@32c00000 {
73        compatible = "ti,am654-secure-proxy";
74        #mbox-cells = <1>;
75        reg-names = "target_data", "rt", "scfg";
76        reg = <0x32c00000 0x100000>,
77              <0x32400000 0x100000>,
78              <0x32800000 0x100000>;
79        interrupt-names = "rx_011";
80        interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
81    };
82