1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/mailbox/thead,th1520-mbox.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: T-head TH1520 Mailbox Controller 8 9description: 10 The T-head mailbox controller enables communication and coordination between 11 cores within the SoC by passing messages (e.g., data, status, and control) 12 through mailbox channels. It also allows one core to signal another processor 13 using interrupts via the Interrupt Controller Unit (ICU). 14 15maintainers: 16 - Michal Wilczynski <m.wilczynski@samsung.com> 17 18properties: 19 compatible: 20 const: thead,th1520-mbox 21 22 clocks: 23 items: 24 - description: Clock for the local mailbox 25 - description: Clock for remote ICU 0 26 - description: Clock for remote ICU 1 27 - description: Clock for remote ICU 2 28 29 clock-names: 30 items: 31 - const: clk-local 32 - const: clk-remote-icu0 33 - const: clk-remote-icu1 34 - const: clk-remote-icu2 35 36 reg: 37 items: 38 - description: Mailbox local base address 39 - description: Remote ICU 0 base address 40 - description: Remote ICU 1 base address 41 - description: Remote ICU 2 base address 42 43 reg-names: 44 items: 45 - const: local 46 - const: remote-icu0 47 - const: remote-icu1 48 - const: remote-icu2 49 50 interrupts: 51 maxItems: 1 52 53 '#mbox-cells': 54 const: 1 55 description: 56 The one and only cell describes destination CPU ID. 57 58required: 59 - compatible 60 - clocks 61 - clock-names 62 - reg 63 - reg-names 64 - interrupts 65 - '#mbox-cells' 66 67additionalProperties: false 68 69examples: 70 - | 71 #include <dt-bindings/clock/thead,th1520-clk-ap.h> 72 soc { 73 #address-cells = <2>; 74 #size-cells = <2>; 75 mailbox@ffffc38000 { 76 compatible = "thead,th1520-mbox"; 77 reg = <0xff 0xffc38000 0x0 0x4000>, 78 <0xff 0xffc44000 0x0 0x1000>, 79 <0xff 0xffc4c000 0x0 0x1000>, 80 <0xff 0xffc54000 0x0 0x1000>; 81 reg-names = "local", "remote-icu0", "remote-icu1", "remote-icu2"; 82 clocks = <&clk CLK_MBOX0>, <&clk CLK_MBOX1>, <&clk CLK_MBOX2>, 83 <&clk CLK_MBOX3>; 84 clock-names = "clk-local", "clk-remote-icu0", "clk-remote-icu1", 85 "clk-remote-icu2"; 86 interrupts = <28>; 87 #mbox-cells = <1>; 88 }; 89 }; 90