1*4882a593Smuzhiyun* Generic Mailbox Controller and client driver bindings 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunGeneric binding to provide a way for Mailbox controller drivers to 4*4882a593Smuzhiyunassign appropriate mailbox channel to client drivers. 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun* Mailbox Controller 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunRequired property: 9*4882a593Smuzhiyun- #mbox-cells: Must be at least 1. Number of cells in a mailbox 10*4882a593Smuzhiyun specifier. 11*4882a593Smuzhiyun 12*4882a593SmuzhiyunExample: 13*4882a593Smuzhiyun mailbox: mailbox { 14*4882a593Smuzhiyun ... 15*4882a593Smuzhiyun #mbox-cells = <1>; 16*4882a593Smuzhiyun }; 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun* Mailbox Client 20*4882a593Smuzhiyun 21*4882a593SmuzhiyunRequired property: 22*4882a593Smuzhiyun- mboxes: List of phandle and mailbox channel specifiers. 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunOptional property: 25*4882a593Smuzhiyun- mbox-names: List of identifier strings for each mailbox channel. 26*4882a593Smuzhiyun- shmem : List of phandle pointing to the shared memory(SHM) area between the 27*4882a593Smuzhiyun users of these mailboxes for IPC, one for each mailbox. This shared 28*4882a593Smuzhiyun memory can be part of any memory reserved for the purpose of this 29*4882a593Smuzhiyun communication between the mailbox client and the remote. 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun 32*4882a593SmuzhiyunExample: 33*4882a593Smuzhiyun pwr_cntrl: power { 34*4882a593Smuzhiyun ... 35*4882a593Smuzhiyun mbox-names = "pwr-ctrl", "rpc"; 36*4882a593Smuzhiyun mboxes = <&mailbox 0 &mailbox 1>; 37*4882a593Smuzhiyun }; 38*4882a593Smuzhiyun 39*4882a593SmuzhiyunExample with shared memory(shmem): 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun sram: sram@50000000 { 42*4882a593Smuzhiyun compatible = "mmio-sram"; 43*4882a593Smuzhiyun reg = <0x50000000 0x10000>; 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun #address-cells = <1>; 46*4882a593Smuzhiyun #size-cells = <1>; 47*4882a593Smuzhiyun ranges = <0 0x50000000 0x10000>; 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun cl_shmem: shmem@0 { 50*4882a593Smuzhiyun compatible = "client-shmem"; 51*4882a593Smuzhiyun reg = <0x0 0x200>; 52*4882a593Smuzhiyun }; 53*4882a593Smuzhiyun }; 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun client@2e000000 { 56*4882a593Smuzhiyun ... 57*4882a593Smuzhiyun mboxes = <&mailbox 0>; 58*4882a593Smuzhiyun shmem = <&cl_shmem>; 59*4882a593Smuzhiyun .. 60*4882a593Smuzhiyun }; 61