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