xref: /linux/Documentation/devicetree/bindings/soc/dove/pmu.txt (revision 9938b04472d5c59f8bd8152a548533a8599596a2)
1*9cfc5c90SRussell KingDevice Tree bindings for Marvell PMU
2*9cfc5c90SRussell King
3*9cfc5c90SRussell KingRequired properties:
4*9cfc5c90SRussell King - compatible: value should be "marvell,dove-pmu".
5*9cfc5c90SRussell King    May also include "simple-bus" if there are child devices, in which
6*9cfc5c90SRussell King    case the ranges node is required.
7*9cfc5c90SRussell King - reg: two base addresses and sizes of the PM controller and PMU.
8*9cfc5c90SRussell King - interrupts: single interrupt number for the PMU interrupt
9*9cfc5c90SRussell King - interrupt-controller: must be specified as the PMU itself is an
10*9cfc5c90SRussell King    interrupt controller.
11*9cfc5c90SRussell King - #interrupt-cells: must be 1.
12*9cfc5c90SRussell King - #reset-cells: must be 1.
13*9cfc5c90SRussell King - domains: sub-node containing domain descriptions
14*9cfc5c90SRussell King
15*9cfc5c90SRussell KingOptional properties:
16*9cfc5c90SRussell King - ranges: defines the address mapping for child devices, as per the
17*9cfc5c90SRussell King   standard property of this name.  Required when compatible includes
18*9cfc5c90SRussell King   "simple-bus".
19*9cfc5c90SRussell King
20*9cfc5c90SRussell KingPower domain descriptions are listed as child nodes of the "domains"
21*9cfc5c90SRussell Kingsub-node.  Each domain has the following properties:
22*9cfc5c90SRussell King
23*9cfc5c90SRussell KingRequired properties:
24*9cfc5c90SRussell King - #power-domain-cells: must be 0.
25*9cfc5c90SRussell King
26*9cfc5c90SRussell KingOptional properties:
27*9cfc5c90SRussell King - marvell,pmu_pwr_mask: specifies the mask value for PMU power register
28*9cfc5c90SRussell King - marvell,pmu_iso_mask: specifies the mask value for PMU isolation register
29*9cfc5c90SRussell King - resets: points to the reset manager (PMU node) and reset index.
30*9cfc5c90SRussell King
31*9cfc5c90SRussell KingExample:
32*9cfc5c90SRussell King
33*9cfc5c90SRussell King	pmu: power-management@d0000 {
34*9cfc5c90SRussell King		compatible = "marvell,dove-pmu";
35*9cfc5c90SRussell King		reg = <0xd0000 0x8000>, <0xd8000 0x8000>;
36*9cfc5c90SRussell King		interrupts = <33>;
37*9cfc5c90SRussell King		interrupt-controller;
38*9cfc5c90SRussell King		#interrupt-cells = <1>;
39*9cfc5c90SRussell King		#reset-cells = <1>;
40*9cfc5c90SRussell King
41*9cfc5c90SRussell King		domains {
42*9cfc5c90SRussell King			vpu_domain: vpu-domain {
43*9cfc5c90SRussell King				#power-domain-cells = <0>;
44*9cfc5c90SRussell King				marvell,pmu_pwr_mask = <0x00000008>;
45*9cfc5c90SRussell King				marvell,pmu_iso_mask = <0x00000001>;
46*9cfc5c90SRussell King				resets = <&pmu 16>;
47*9cfc5c90SRussell King			};
48*9cfc5c90SRussell King
49*9cfc5c90SRussell King			gpu_domain: gpu-domain {
50*9cfc5c90SRussell King				#power-domain-cells = <0>;
51*9cfc5c90SRussell King				marvell,pmu_pwr_mask = <0x00000004>;
52*9cfc5c90SRussell King				marvell,pmu_iso_mask = <0x00000002>;
53*9cfc5c90SRussell King				resets = <&pmu 18>;
54*9cfc5c90SRussell King			};
55*9cfc5c90SRussell King		};
56*9cfc5c90SRussell King	};
57