xref: /freebsd/sys/contrib/device-tree/Bindings/mailbox/ti,secure-proxy.yaml (revision 2eb4d8dc723da3cf7d735a3226ae49da4c8c5dbc)
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    const: ti,am654-secure-proxy
26
27  "#mbox-cells":
28    const: 1
29    description:
30      Contains the secure proxy thread ID used for the specific transfer path.
31
32  reg-names:
33    items:
34      - const: target_data
35      - const: rt
36      - const: scfg
37
38  reg:
39    minItems: 3
40
41  interrupt-names:
42    minItems: 1
43    maxItems: 100
44    items:
45      pattern: "^rx_[0-9]{3}$"
46    description:
47      Contains the interrupt name information for the Rx interrupt path for
48      secure proxy thread in the form 'rx_<PID>'.
49
50  interrupts:
51    minItems: 1
52    maxItems: 100
53    description:
54      Contains the interrupt information for the Rx interrupt path for secure
55      proxy.
56
57required:
58  - compatible
59  - reg-names
60  - reg
61  - interrupt-names
62  - interrupts
63  - "#mbox-cells"
64
65additionalProperties: false
66
67examples:
68  - |
69    #include <dt-bindings/interrupt-controller/arm-gic.h>
70    secure_proxy: mailbox@32c00000 {
71          compatible = "ti,am654-secure-proxy";
72          #mbox-cells = <1>;
73          reg-names = "target_data", "rt", "scfg";
74          reg = <0x32c00000 0x100000>,
75                <0x32400000 0x100000>,
76                <0x32800000 0x100000>;
77          interrupt-names = "rx_011";
78          interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
79    };
80