xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/mailbox/altera-mailbox.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunAltera Mailbox Driver
2*4882a593Smuzhiyun=====================
3*4882a593Smuzhiyun
4*4882a593SmuzhiyunRequired properties:
5*4882a593Smuzhiyun- compatible :	"altr,mailbox-1.0".
6*4882a593Smuzhiyun- reg : 	physical base address of the mailbox and length of
7*4882a593Smuzhiyun		memory mapped region.
8*4882a593Smuzhiyun- #mbox-cells:	Common mailbox binding property to identify the number
9*4882a593Smuzhiyun		of cells required for the mailbox specifier. Should be 1.
10*4882a593Smuzhiyun
11*4882a593SmuzhiyunOptional properties:
12*4882a593Smuzhiyun- interrupts :		interrupt number. The interrupt specifier format
13*4882a593Smuzhiyun			depends on the interrupt controller parent.
14*4882a593Smuzhiyun
15*4882a593SmuzhiyunExample:
16*4882a593Smuzhiyun	mbox_tx: mailbox@100 {
17*4882a593Smuzhiyun		compatible = "altr,mailbox-1.0";
18*4882a593Smuzhiyun		reg = <0x100 0x8>;
19*4882a593Smuzhiyun		interrupt-parent = < &gic_0 >;
20*4882a593Smuzhiyun		interrupts = <5>;
21*4882a593Smuzhiyun		#mbox-cells = <1>;
22*4882a593Smuzhiyun	};
23*4882a593Smuzhiyun
24*4882a593Smuzhiyun	mbox_rx: mailbox@200 {
25*4882a593Smuzhiyun		compatible = "altr,mailbox-1.0";
26*4882a593Smuzhiyun		reg = <0x200 0x8>;
27*4882a593Smuzhiyun		interrupt-parent = < &gic_0 >;
28*4882a593Smuzhiyun		interrupts = <6>;
29*4882a593Smuzhiyun		#mbox-cells = <1>;
30*4882a593Smuzhiyun	};
31*4882a593Smuzhiyun
32*4882a593SmuzhiyunMailbox client
33*4882a593Smuzhiyun===============
34*4882a593Smuzhiyun"mboxes" and the optional "mbox-names" (please see
35*4882a593SmuzhiyunDocumentation/devicetree/bindings/mailbox/mailbox.txt for details). Each value
36*4882a593Smuzhiyunof the mboxes property should contain a phandle to the mailbox controller
37*4882a593Smuzhiyundevice node and second argument is the channel index. It must be 0 (hardware
38*4882a593Smuzhiyunsupport only one channel).The equivalent "mbox-names" property value can be
39*4882a593Smuzhiyunused to give a name to the communication channel to be used by the client user.
40*4882a593Smuzhiyun
41*4882a593SmuzhiyunExample:
42*4882a593Smuzhiyun	mclient0: mclient0@400 {
43*4882a593Smuzhiyun		compatible = "client-1.0";
44*4882a593Smuzhiyun		reg = <0x400 0x10>;
45*4882a593Smuzhiyun		mbox-names = "mbox-tx", "mbox-rx";
46*4882a593Smuzhiyun		mboxes = <&mbox_tx 0>,
47*4882a593Smuzhiyun			 <&mbox_rx 0>;
48*4882a593Smuzhiyun	};
49