61 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| * Generic Mailbox Controller and client driver bindings
 | |
| 
 | |
| Generic binding to provide a way for Mailbox controller drivers to
 | |
| assign appropriate mailbox channel to client drivers.
 | |
| 
 | |
| * Mailbox Controller
 | |
| 
 | |
| Required property:
 | |
| - #mbox-cells: Must be at least 1. Number of cells in a mailbox
 | |
| 		specifier.
 | |
| 
 | |
| Example:
 | |
| 	mailbox: mailbox {
 | |
| 		...
 | |
| 		#mbox-cells = <1>;
 | |
| 	};
 | |
| 
 | |
| 
 | |
| * Mailbox Client
 | |
| 
 | |
| Required property:
 | |
| - mboxes: List of phandle and mailbox channel specifiers.
 | |
| 
 | |
| Optional property:
 | |
| - mbox-names: List of identifier strings for each mailbox channel.
 | |
| - shmem : List of phandle pointing to the shared memory(SHM) area between the
 | |
| 	  users of these mailboxes for IPC, one for each mailbox. This shared
 | |
| 	  memory can be part of any memory reserved for the purpose of this
 | |
| 	  communication between the mailbox client and the remote.
 | |
| 
 | |
| 
 | |
| Example:
 | |
| 	pwr_cntrl: power {
 | |
| 		...
 | |
| 		mbox-names = "pwr-ctrl", "rpc";
 | |
| 		mboxes = <&mailbox 0 &mailbox 1>;
 | |
| 	};
 | |
| 
 | |
| Example with shared memory(shmem):
 | |
| 
 | |
| 	sram: sram@50000000 {
 | |
| 		compatible = "mmio-sram";
 | |
| 		reg = <0x50000000 0x10000>;
 | |
| 
 | |
| 		#address-cells = <1>;
 | |
| 		#size-cells = <1>;
 | |
| 		ranges = <0 0x50000000 0x10000>;
 | |
| 
 | |
| 		cl_shmem: shmem@0 {
 | |
| 			compatible = "client-shmem";
 | |
| 			reg = <0x0 0x200>;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	client@2e000000 {
 | |
| 		...
 | |
| 		mboxes = <&mailbox 0>;
 | |
| 		shmem = <&cl_shmem>;
 | |
| 		..
 | |
| 	};
 |