Skip to content

Commit af33bd5

Browse files
vfalanisJassi Brar
authored andcommitted
dt-bindings: mailbox: add binding for Microchip IPC mailbox controller
Add a dt-binding for the Microchip Inter-Processor Communication (IPC) mailbox controller. Signed-off-by: Valentina Fernandez <[email protected]> Reviewed-by: Rob Herring (Arm) <[email protected]> Signed-off-by: Jassi Brar <[email protected]>
1 parent 0b7f832 commit af33bd5

File tree

1 file changed

+123
-0
lines changed

1 file changed

+123
-0
lines changed
Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/mailbox/microchip,sbi-ipc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Microchip Inter-processor communication (IPC) mailbox controller
8+
9+
maintainers:
10+
- Valentina Fernandez <[email protected]>
11+
12+
description:
13+
The Microchip Inter-processor Communication (IPC) facilitates
14+
message passing between processors using an interrupt signaling
15+
mechanism.
16+
17+
properties:
18+
compatible:
19+
oneOf:
20+
- description:
21+
Intended for use by software running in supervisor privileged
22+
mode (s-mode). This SBI interface is compatible with the Mi-V
23+
Inter-hart Communication (IHC) IP.
24+
const: microchip,sbi-ipc
25+
26+
- description:
27+
Intended for use by the SBI implementation in machine mode
28+
(m-mode), this compatible string is for the MIV_IHC Soft-IP.
29+
const: microchip,miv-ihc-rtl-v2
30+
31+
reg:
32+
maxItems: 1
33+
34+
interrupts:
35+
minItems: 1
36+
maxItems: 5
37+
38+
interrupt-names:
39+
minItems: 1
40+
maxItems: 5
41+
items:
42+
enum:
43+
- hart-0
44+
- hart-1
45+
- hart-2
46+
- hart-3
47+
- hart-4
48+
- hart-5
49+
50+
"#mbox-cells":
51+
description: >
52+
For "microchip,sbi-ipc", the cell represents the global "logical"
53+
channel IDs. The meaning of channel IDs are platform firmware dependent.
54+
55+
For "microchip,miv-ihc-rtl-v2", the cell represents the physical
56+
channel and does not vary based on the platform firmware.
57+
const: 1
58+
59+
microchip,ihc-chan-disabled-mask:
60+
description: >
61+
Represents the enable/disable state of the bi-directional IHC
62+
channels within the MIV-IHC IP configuration.
63+
64+
A bit set to '1' indicates that the corresponding channel is disabled,
65+
and any read or write operations to that channel will return zero.
66+
67+
A bit set to '0' indicates that the corresponding channel is enabled
68+
and will be accessible through its dedicated address range registers.
69+
70+
The actual enable/disable state of each channel is determined by the
71+
IP block’s configuration.
72+
$ref: /schemas/types.yaml#/definitions/uint16
73+
maximum: 0x7fff
74+
default: 0
75+
76+
required:
77+
- compatible
78+
- interrupts
79+
- interrupt-names
80+
- "#mbox-cells"
81+
82+
allOf:
83+
- if:
84+
properties:
85+
compatible:
86+
contains:
87+
const: microchip,sbi-ipc
88+
then:
89+
properties:
90+
reg:
91+
not: {}
92+
description:
93+
The 'microchip,sbi-ipc' operates in a programming model
94+
that does not require memory-mapped I/O (MMIO) registers
95+
since it uses SBI ecalls provided by the m-mode/firmware
96+
SBI implementation to access hardware registers.
97+
microchip,ihc-chan-disabled-mask: false
98+
else:
99+
required:
100+
- reg
101+
- microchip,ihc-chan-disabled-mask
102+
103+
additionalProperties: false
104+
105+
examples:
106+
- |
107+
mailbox {
108+
compatible = "microchip,sbi-ipc";
109+
interrupt-parent = <&plic>;
110+
interrupts = <180>, <179>, <178>;
111+
interrupt-names = "hart-1", "hart-2", "hart-3";
112+
#mbox-cells = <1>;
113+
};
114+
- |
115+
mailbox@50000000 {
116+
compatible = "microchip,miv-ihc-rtl-v2";
117+
microchip,ihc-chan-disabled-mask = /bits/ 16 <0>;
118+
reg = <0x50000000 0x1c000>;
119+
interrupt-parent = <&plic>;
120+
interrupts = <180>, <179>, <178>;
121+
interrupt-names = "hart-1", "hart-2", "hart-3";
122+
#mbox-cells = <1>;
123+
};

0 commit comments

Comments
 (0)