xref: /freebsd/sys/contrib/device-tree/Bindings/power/reset/xlnx,zynqmp-power.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot--------------------------------------------------------------------
2*c66ec88fSEmmanuel VadotDevice Tree Bindings for the Xilinx Zynq MPSoC Power Management
3*c66ec88fSEmmanuel Vadot--------------------------------------------------------------------
4*c66ec88fSEmmanuel VadotThe zynqmp-power node describes the power management configurations.
5*c66ec88fSEmmanuel VadotIt will control remote suspend/shutdown interfaces.
6*c66ec88fSEmmanuel Vadot
7*c66ec88fSEmmanuel VadotRequired properties:
8*c66ec88fSEmmanuel Vadot - compatible:		Must contain:	"xlnx,zynqmp-power"
9*c66ec88fSEmmanuel Vadot - interrupts:		Interrupt specifier
10*c66ec88fSEmmanuel Vadot
11*c66ec88fSEmmanuel VadotOptional properties:
12*c66ec88fSEmmanuel Vadot - mbox-names	: Name given to channels seen in the 'mboxes' property.
13*c66ec88fSEmmanuel Vadot		  "tx" - Mailbox corresponding to transmit path
14*c66ec88fSEmmanuel Vadot		  "rx" - Mailbox corresponding to receive path
15*c66ec88fSEmmanuel Vadot - mboxes	: Standard property to specify a Mailbox. Each value of
16*c66ec88fSEmmanuel Vadot		  the mboxes property should contain a phandle to the
17*c66ec88fSEmmanuel Vadot		  mailbox controller device node and an args specifier
18*c66ec88fSEmmanuel Vadot		  that will be the phandle to the intended sub-mailbox
19*c66ec88fSEmmanuel Vadot		  child node to be used for communication. See
20*c66ec88fSEmmanuel Vadot		  Documentation/devicetree/bindings/mailbox/mailbox.txt
21*c66ec88fSEmmanuel Vadot		  for more details about the generic mailbox controller
22*c66ec88fSEmmanuel Vadot		  and client driver bindings. Also see
23*c66ec88fSEmmanuel Vadot		  Documentation/devicetree/bindings/mailbox/ \
24*c66ec88fSEmmanuel Vadot		  xlnx,zynqmp-ipi-mailbox.txt for typical controller that
25*c66ec88fSEmmanuel Vadot		  is used to communicate with this System controllers.
26*c66ec88fSEmmanuel Vadot
27*c66ec88fSEmmanuel Vadot--------
28*c66ec88fSEmmanuel VadotExamples
29*c66ec88fSEmmanuel Vadot--------
30*c66ec88fSEmmanuel Vadot
31*c66ec88fSEmmanuel VadotExample with interrupt method:
32*c66ec88fSEmmanuel Vadot
33*c66ec88fSEmmanuel Vadotfirmware {
34*c66ec88fSEmmanuel Vadot	zynqmp_firmware: zynqmp-firmware {
35*c66ec88fSEmmanuel Vadot		compatible = "xlnx,zynqmp-firmware";
36*c66ec88fSEmmanuel Vadot		method = "smc";
37*c66ec88fSEmmanuel Vadot
38*c66ec88fSEmmanuel Vadot		zynqmp_power: zynqmp-power {
39*c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-power";
40*c66ec88fSEmmanuel Vadot			interrupts = <0 35 4>;
41*c66ec88fSEmmanuel Vadot		};
42*c66ec88fSEmmanuel Vadot	};
43*c66ec88fSEmmanuel Vadot};
44*c66ec88fSEmmanuel Vadot
45*c66ec88fSEmmanuel VadotExample with IPI mailbox method:
46*c66ec88fSEmmanuel Vadot
47*c66ec88fSEmmanuel Vadotfirmware {
48*c66ec88fSEmmanuel Vadot	zynqmp_firmware: zynqmp-firmware {
49*c66ec88fSEmmanuel Vadot		compatible = "xlnx,zynqmp-firmware";
50*c66ec88fSEmmanuel Vadot		method = "smc";
51*c66ec88fSEmmanuel Vadot
52*c66ec88fSEmmanuel Vadot		zynqmp_power: zynqmp-power {
53*c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-power";
54*c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
55*c66ec88fSEmmanuel Vadot			interrupts = <0 35 4>;
56*c66ec88fSEmmanuel Vadot			mboxes = <&ipi_mailbox_pmu0 0>,
57*c66ec88fSEmmanuel Vadot				 <&ipi_mailbox_pmu0 1>;
58*c66ec88fSEmmanuel Vadot			mbox-names = "tx", "rx";
59*c66ec88fSEmmanuel Vadot		};
60*c66ec88fSEmmanuel Vadot	};
61*c66ec88fSEmmanuel Vadot};
62