18c2ecf20Sopenharmony_ciHisilicon Hi3660 Mailbox Controller
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciHisilicon Hi3660 mailbox controller supports up to 32 channels.  Messages
48c2ecf20Sopenharmony_ciare passed between processors, including application & communication
58c2ecf20Sopenharmony_ciprocessors, MCU, HIFI, etc.  Each channel is unidirectional and accessed
68c2ecf20Sopenharmony_ciby using MMIO registers; it supports maximum to 8 words message.
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ciController
98c2ecf20Sopenharmony_ci----------
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ciRequired properties:
128c2ecf20Sopenharmony_ci- compatible:		: Shall be "hisilicon,hi3660-mbox"
138c2ecf20Sopenharmony_ci- reg:			: Offset and length of the device's register set
148c2ecf20Sopenharmony_ci- #mbox-cells:		: Must be 3
158c2ecf20Sopenharmony_ci			  <&phandle channel dst_irq ack_irq>
168c2ecf20Sopenharmony_ci			    phandle	: Label name of controller
178c2ecf20Sopenharmony_ci			    channel	: Channel number
188c2ecf20Sopenharmony_ci			    dst_irq	: Remote interrupt vector
198c2ecf20Sopenharmony_ci			    ack_irq	: Local interrupt vector
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ci- interrupts:		: Contains the two IRQ lines for mailbox.
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ciExample:
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_cimailbox: mailbox@e896b000 {
268c2ecf20Sopenharmony_ci	compatible = "hisilicon,hi3660-mbox";
278c2ecf20Sopenharmony_ci	reg = <0x0 0xe896b000 0x0 0x1000>;
288c2ecf20Sopenharmony_ci	interrupts = <0x0 0xc0 0x4>,
298c2ecf20Sopenharmony_ci		     <0x0 0xc1 0x4>;
308c2ecf20Sopenharmony_ci	#mbox-cells = <3>;
318c2ecf20Sopenharmony_ci};
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ciClient
348c2ecf20Sopenharmony_ci------
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ciRequired properties:
378c2ecf20Sopenharmony_ci- compatible		: See the client docs
388c2ecf20Sopenharmony_ci- mboxes		: Standard property to specify a Mailbox (See ./mailbox.txt)
398c2ecf20Sopenharmony_ci			  Cells must match 'mbox-cells' (See Controller docs above)
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ciOptional properties
428c2ecf20Sopenharmony_ci- mbox-names		: Name given to channels seen in the 'mboxes' property.
438c2ecf20Sopenharmony_ci
448c2ecf20Sopenharmony_ciExample:
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_cistub_clock: stub_clock@e896b500 {
478c2ecf20Sopenharmony_ci	compatible = "hisilicon,hi3660-stub-clk";
488c2ecf20Sopenharmony_ci	reg = <0x0 0xe896b500 0x0 0x0100>;
498c2ecf20Sopenharmony_ci	#clock-cells = <1>;
508c2ecf20Sopenharmony_ci	mboxes = <&mailbox 13 3 0>;
518c2ecf20Sopenharmony_ci};
52