1*c66ec88fSEmmanuel VadotHisilicon Hi3660 Mailbox Controller 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotHisilicon Hi3660 mailbox controller supports up to 32 channels. Messages 4*c66ec88fSEmmanuel Vadotare passed between processors, including application & communication 5*c66ec88fSEmmanuel Vadotprocessors, MCU, HIFI, etc. Each channel is unidirectional and accessed 6*c66ec88fSEmmanuel Vadotby using MMIO registers; it supports maximum to 8 words message. 7*c66ec88fSEmmanuel Vadot 8*c66ec88fSEmmanuel VadotController 9*c66ec88fSEmmanuel Vadot---------- 10*c66ec88fSEmmanuel Vadot 11*c66ec88fSEmmanuel VadotRequired properties: 12*c66ec88fSEmmanuel Vadot- compatible: : Shall be "hisilicon,hi3660-mbox" 13*c66ec88fSEmmanuel Vadot- reg: : Offset and length of the device's register set 14*c66ec88fSEmmanuel Vadot- #mbox-cells: : Must be 3 15*c66ec88fSEmmanuel Vadot <&phandle channel dst_irq ack_irq> 16*c66ec88fSEmmanuel Vadot phandle : Label name of controller 17*c66ec88fSEmmanuel Vadot channel : Channel number 18*c66ec88fSEmmanuel Vadot dst_irq : Remote interrupt vector 19*c66ec88fSEmmanuel Vadot ack_irq : Local interrupt vector 20*c66ec88fSEmmanuel Vadot 21*c66ec88fSEmmanuel Vadot- interrupts: : Contains the two IRQ lines for mailbox. 22*c66ec88fSEmmanuel Vadot 23*c66ec88fSEmmanuel VadotExample: 24*c66ec88fSEmmanuel Vadot 25*c66ec88fSEmmanuel Vadotmailbox: mailbox@e896b000 { 26*c66ec88fSEmmanuel Vadot compatible = "hisilicon,hi3660-mbox"; 27*c66ec88fSEmmanuel Vadot reg = <0x0 0xe896b000 0x0 0x1000>; 28*c66ec88fSEmmanuel Vadot interrupts = <0x0 0xc0 0x4>, 29*c66ec88fSEmmanuel Vadot <0x0 0xc1 0x4>; 30*c66ec88fSEmmanuel Vadot #mbox-cells = <3>; 31*c66ec88fSEmmanuel Vadot}; 32*c66ec88fSEmmanuel Vadot 33*c66ec88fSEmmanuel VadotClient 34*c66ec88fSEmmanuel Vadot------ 35*c66ec88fSEmmanuel Vadot 36*c66ec88fSEmmanuel VadotRequired properties: 37*c66ec88fSEmmanuel Vadot- compatible : See the client docs 38*c66ec88fSEmmanuel Vadot- mboxes : Standard property to specify a Mailbox (See ./mailbox.txt) 39*c66ec88fSEmmanuel Vadot Cells must match 'mbox-cells' (See Controller docs above) 40*c66ec88fSEmmanuel Vadot 41*c66ec88fSEmmanuel VadotOptional properties 42*c66ec88fSEmmanuel Vadot- mbox-names : Name given to channels seen in the 'mboxes' property. 43*c66ec88fSEmmanuel Vadot 44*c66ec88fSEmmanuel VadotExample: 45*c66ec88fSEmmanuel Vadot 46*c66ec88fSEmmanuel Vadotstub_clock: stub_clock@e896b500 { 47*c66ec88fSEmmanuel Vadot compatible = "hisilicon,hi3660-stub-clk"; 48*c66ec88fSEmmanuel Vadot reg = <0x0 0xe896b500 0x0 0x0100>; 49*c66ec88fSEmmanuel Vadot #clock-cells = <1>; 50*c66ec88fSEmmanuel Vadot mboxes = <&mailbox 13 3 0>; 51*c66ec88fSEmmanuel Vadot}; 52