1*c66ec88fSEmmanuel VadotST Microelectronics Mailbox Driver 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotEach ST Mailbox IP currently consists of 4 instances of 32 channels. Messages 4*c66ec88fSEmmanuel Vadotare passed between Application and Remote processors using shared memory. 5*c66ec88fSEmmanuel Vadot 6*c66ec88fSEmmanuel VadotController 7*c66ec88fSEmmanuel Vadot---------- 8*c66ec88fSEmmanuel Vadot 9*c66ec88fSEmmanuel VadotRequired properties: 10*c66ec88fSEmmanuel Vadot- compatible : Should be "st,stih407-mailbox" 11*c66ec88fSEmmanuel Vadot- reg : Offset and length of the device's register set 12*c66ec88fSEmmanuel Vadot- mbox-name : Name of the mailbox 13*c66ec88fSEmmanuel Vadot- #mbox-cells: : Must be 2 14*c66ec88fSEmmanuel Vadot <&phandle instance channel direction> 15*c66ec88fSEmmanuel Vadot phandle : Label name of controller 16*c66ec88fSEmmanuel Vadot instance : Instance number 17*c66ec88fSEmmanuel Vadot channel : Channel number 18*c66ec88fSEmmanuel Vadot 19*c66ec88fSEmmanuel VadotOptional properties 20*c66ec88fSEmmanuel Vadot- interrupts : Contains the IRQ line for a Rx mailbox 21*c66ec88fSEmmanuel Vadot 22*c66ec88fSEmmanuel VadotExample: 23*c66ec88fSEmmanuel Vadot 24*c66ec88fSEmmanuel Vadotmailbox0: mailbox@0 { 25*c66ec88fSEmmanuel Vadot compatible = "st,stih407-mailbox"; 26*c66ec88fSEmmanuel Vadot reg = <0x08f00000 0x1000>; 27*c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 1 IRQ_TYPE_NONE>; 28*c66ec88fSEmmanuel Vadot #mbox-cells = <2>; 29*c66ec88fSEmmanuel Vadot mbox-name = "a9"; 30*c66ec88fSEmmanuel Vadot}; 31*c66ec88fSEmmanuel Vadot 32*c66ec88fSEmmanuel VadotClient 33*c66ec88fSEmmanuel Vadot------ 34*c66ec88fSEmmanuel Vadot 35*c66ec88fSEmmanuel VadotRequired properties: 36*c66ec88fSEmmanuel Vadot- compatible : Many (See the client docs) 37*c66ec88fSEmmanuel Vadot- reg : Shared (between Application and Remote) memory address 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 Vadotmailbox_test { 47*c66ec88fSEmmanuel Vadot compatible = "mailbox-test"; 48*c66ec88fSEmmanuel Vadot reg = <0x[shared_memory_address], [shared_memory_size]>; 49*c66ec88fSEmmanuel Vadot mboxes = <&mailbox2 0 1>, <&mailbox0 2 1>; 50*c66ec88fSEmmanuel Vadot mbox-names = "tx", "rx"; 51*c66ec88fSEmmanuel Vadot}; 52