diff options
author | Leo Yan <leo.yan@linaro.org> | 2016-02-15 08:50:23 -0500 |
---|---|---|
committer | Jassi Brar <jaswinder.singh@linaro.org> | 2016-03-04 02:02:19 -0500 |
commit | 1cb17866f04cb48aa55459e7f5cb632a9c007fb4 (patch) | |
tree | 9d18c783ecb3587b72e2001676e05a7b92f0b5f3 | |
parent | 2d74ffdc910e06c407f0a3ace9795f77cc07d05b (diff) |
dt-bindings: mailbox: Document Hi6220 mailbox driver
Document DT binding for Hisilicon Hi6220 mailbox driver.
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Leo Yan <leo.yan@linaro.org>
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
-rw-r--r-- | Documentation/devicetree/bindings/mailbox/hisilicon,hi6220-mailbox.txt | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/mailbox/hisilicon,hi6220-mailbox.txt b/Documentation/devicetree/bindings/mailbox/hisilicon,hi6220-mailbox.txt new file mode 100644 index 000000000000..044b17f3a77a --- /dev/null +++ b/Documentation/devicetree/bindings/mailbox/hisilicon,hi6220-mailbox.txt | |||
@@ -0,0 +1,74 @@ | |||
1 | Hisilicon Hi6220 Mailbox Driver | ||
2 | =============================== | ||
3 | |||
4 | Hisilicon Hi6220 mailbox supports up to 32 channels. Each channel | ||
5 | is unidirectional with a maximum message size of 8 words. I/O is | ||
6 | performed using register access (there is no DMA) and the cell | ||
7 | raises an interrupt when messages are received. | ||
8 | |||
9 | Mailbox Device Node: | ||
10 | ==================== | ||
11 | |||
12 | Required properties: | ||
13 | -------------------- | ||
14 | - compatible: Shall be "hisilicon,hi6220-mbox" | ||
15 | - reg: Contains the mailbox register address range (base | ||
16 | address and length); the first item is for IPC | ||
17 | registers, the second item is shared buffer for | ||
18 | slots. | ||
19 | - #mbox-cells: Common mailbox binding property to identify the number | ||
20 | of cells required for the mailbox specifier. Must be 3. | ||
21 | <&phandle slot_id dst_irq ack_irq> | ||
22 | phandle: Label name of mailbox controller | ||
23 | slot_id: Slot id used either for TX or RX | ||
24 | dst_irq: IRQ identifier index number which used by MCU | ||
25 | ack_irq: IRQ identifier index number with generating a | ||
26 | TX/RX interrupt to application processor, | ||
27 | mailbox driver uses it to acknowledge interrupt | ||
28 | - interrupts: Contains the interrupt information for the mailbox | ||
29 | device. The format is dependent on which interrupt | ||
30 | controller the SoCs use. | ||
31 | |||
32 | Optional Properties: | ||
33 | -------------------- | ||
34 | - hi6220,mbox-tx-noirq: Property of MCU firmware's feature, so mailbox driver | ||
35 | use this flag to ask MCU to enable "automatic idle | ||
36 | flag" mode or IRQ generated mode to acknowledge a TX | ||
37 | completion. | ||
38 | |||
39 | Example: | ||
40 | -------- | ||
41 | |||
42 | mailbox: mailbox@f7510000 { | ||
43 | compatible = "hisilicon,hi6220-mbox"; | ||
44 | reg = <0x0 0xf7510000 0x0 0x1000>, /* IPC_S */ | ||
45 | <0x0 0x06dff800 0x0 0x0800>; /* Mailbox */ | ||
46 | interrupt-parent = <&gic>; | ||
47 | interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; | ||
48 | #mbox-cells = <3>; | ||
49 | }; | ||
50 | |||
51 | |||
52 | Mailbox client | ||
53 | =============== | ||
54 | |||
55 | Required properties: | ||
56 | -------------------- | ||
57 | - compatible: Many (See the client docs). | ||
58 | - mboxes: Standard property to specify a Mailbox (See ./mailbox.txt) | ||
59 | Cells must match 'mbox-cells' (See Mailbox Device Node above). | ||
60 | |||
61 | Optional Properties: | ||
62 | -------------------- | ||
63 | - mbox-names: Name given to channels seen in the 'mboxes' property. | ||
64 | |||
65 | Example: | ||
66 | -------- | ||
67 | |||
68 | stub_clock: stub_clock { | ||
69 | compatible = "hisilicon,hi6220-stub-clk"; | ||
70 | hisilicon,hi6220-clk-sram = <&sram>; | ||
71 | #clock-cells = <1>; | ||
72 | mbox-names = "mbox-tx", "mbox-rx"; | ||
73 | mboxes = <&mailbox 1 0 11>, <&mailbox 0 1 10>; | ||
74 | }; | ||