summaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/power/reset/xlnx,zynqmp-power.txt
blob: bb529ecf8a5768659986f0e59185aeed349e9867 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
--------------------------------------------------------------------
Device Tree Bindings for the Xilinx Zynq MPSoC Power Management
--------------------------------------------------------------------
The zynqmp-power node describes the power management configurations.
It will control remote suspend/shutdown interfaces.

Required properties:
 - compatible:		Must contain:	"xlnx,zynqmp-power"
 - interrupts:		Interrupt specifier

Optional properties:
 - mbox-names	: Name given to channels seen in the 'mboxes' property.
		  "tx" - Mailbox corresponding to transmit path
		  "rx" - Mailbox corresponding to receive path
 - mboxes	: Standard property to specify a Mailbox. Each value of
		  the mboxes property should contain a phandle to the
		  mailbox controller device node and an args specifier
		  that will be the phandle to the intended sub-mailbox
		  child node to be used for communication. See
		  Documentation/devicetree/bindings/mailbox/mailbox.txt
		  for more details about the generic mailbox controller
		  and client driver bindings. Also see
		  Documentation/devicetree/bindings/mailbox/ \
		  xlnx,zynqmp-ipi-mailbox.txt for typical controller that
		  is used to communicate with this System controllers.

--------
Examples
--------

Example with interrupt method:

firmware {
	zynqmp_firmware: zynqmp-firmware {
		compatible = "xlnx,zynqmp-firmware";
		method = "smc";

		zynqmp_power: zynqmp-power {
			compatible = "xlnx,zynqmp-power";
			interrupts = <0 35 4>;
		};
	};
};

Example with IPI mailbox method:

firmware {
	zynqmp_firmware: zynqmp-firmware {
		compatible = "xlnx,zynqmp-firmware";
		method = "smc";

		zynqmp_power: zynqmp-power {
			compatible = "xlnx,zynqmp-power";
			interrupt-parent = <&gic>;
			interrupts = <0 35 4>;
			mboxes = <&ipi_mailbox_pmu0 0>,
				 <&ipi_mailbox_pmu0 1>;
			mbox-names = "tx", "rx";
		};
	};
};