19cfc5c90SRussell KingDevice Tree bindings for Marvell PMU
29cfc5c90SRussell King
39cfc5c90SRussell KingRequired properties:
49cfc5c90SRussell King - compatible: value should be "marvell,dove-pmu".
59cfc5c90SRussell King    May also include "simple-bus" if there are child devices, in which
69cfc5c90SRussell King    case the ranges node is required.
79cfc5c90SRussell King - reg: two base addresses and sizes of the PM controller and PMU.
89cfc5c90SRussell King - interrupts: single interrupt number for the PMU interrupt
99cfc5c90SRussell King - interrupt-controller: must be specified as the PMU itself is an
109cfc5c90SRussell King    interrupt controller.
119cfc5c90SRussell King - #interrupt-cells: must be 1.
129cfc5c90SRussell King - #reset-cells: must be 1.
139cfc5c90SRussell King - domains: sub-node containing domain descriptions
149cfc5c90SRussell King
159cfc5c90SRussell KingOptional properties:
169cfc5c90SRussell King - ranges: defines the address mapping for child devices, as per the
179cfc5c90SRussell King   standard property of this name.  Required when compatible includes
189cfc5c90SRussell King   "simple-bus".
199cfc5c90SRussell King
209cfc5c90SRussell KingPower domain descriptions are listed as child nodes of the "domains"
219cfc5c90SRussell Kingsub-node.  Each domain has the following properties:
229cfc5c90SRussell King
239cfc5c90SRussell KingRequired properties:
249cfc5c90SRussell King - #power-domain-cells: must be 0.
259cfc5c90SRussell King
269cfc5c90SRussell KingOptional properties:
279cfc5c90SRussell King - marvell,pmu_pwr_mask: specifies the mask value for PMU power register
289cfc5c90SRussell King - marvell,pmu_iso_mask: specifies the mask value for PMU isolation register
299cfc5c90SRussell King - resets: points to the reset manager (PMU node) and reset index.
309cfc5c90SRussell King
319cfc5c90SRussell KingExample:
329cfc5c90SRussell King
339cfc5c90SRussell King	pmu: power-management@d0000 {
349cfc5c90SRussell King		compatible = "marvell,dove-pmu";
359cfc5c90SRussell King		reg = <0xd0000 0x8000>, <0xd8000 0x8000>;
369cfc5c90SRussell King		interrupts = <33>;
379cfc5c90SRussell King		interrupt-controller;
389cfc5c90SRussell King		#interrupt-cells = <1>;
399cfc5c90SRussell King		#reset-cells = <1>;
409cfc5c90SRussell King
419cfc5c90SRussell King		domains {
429cfc5c90SRussell King			vpu_domain: vpu-domain {
439cfc5c90SRussell King				#power-domain-cells = <0>;
449cfc5c90SRussell King				marvell,pmu_pwr_mask = <0x00000008>;
459cfc5c90SRussell King				marvell,pmu_iso_mask = <0x00000001>;
469cfc5c90SRussell King				resets = <&pmu 16>;
479cfc5c90SRussell King			};
489cfc5c90SRussell King
499cfc5c90SRussell King			gpu_domain: gpu-domain {
509cfc5c90SRussell King				#power-domain-cells = <0>;
519cfc5c90SRussell King				marvell,pmu_pwr_mask = <0x00000004>;
529cfc5c90SRussell King				marvell,pmu_iso_mask = <0x00000002>;
539cfc5c90SRussell King				resets = <&pmu 18>;
549cfc5c90SRussell King			};
559cfc5c90SRussell King		};
569cfc5c90SRussell King	};
57