162306a36Sopenharmony_ciDevice Tree bindings for Marvell PMU
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciRequired properties:
462306a36Sopenharmony_ci - compatible: value should be "marvell,dove-pmu".
562306a36Sopenharmony_ci    May also include "simple-bus" if there are child devices, in which
662306a36Sopenharmony_ci    case the ranges node is required.
762306a36Sopenharmony_ci - reg: two base addresses and sizes of the PM controller and PMU.
862306a36Sopenharmony_ci - interrupts: single interrupt number for the PMU interrupt
962306a36Sopenharmony_ci - interrupt-controller: must be specified as the PMU itself is an
1062306a36Sopenharmony_ci    interrupt controller.
1162306a36Sopenharmony_ci - #interrupt-cells: must be 1.
1262306a36Sopenharmony_ci - #reset-cells: must be 1.
1362306a36Sopenharmony_ci - domains: sub-node containing domain descriptions
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ciOptional properties:
1662306a36Sopenharmony_ci - ranges: defines the address mapping for child devices, as per the
1762306a36Sopenharmony_ci   standard property of this name.  Required when compatible includes
1862306a36Sopenharmony_ci   "simple-bus".
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ciPower domain descriptions are listed as child nodes of the "domains"
2162306a36Sopenharmony_cisub-node.  Each domain has the following properties:
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ciRequired properties:
2462306a36Sopenharmony_ci - #power-domain-cells: must be 0.
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ciOptional properties:
2762306a36Sopenharmony_ci - marvell,pmu_pwr_mask: specifies the mask value for PMU power register
2862306a36Sopenharmony_ci - marvell,pmu_iso_mask: specifies the mask value for PMU isolation register
2962306a36Sopenharmony_ci - resets: points to the reset manager (PMU node) and reset index.
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ciExample:
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci	pmu: power-management@d0000 {
3462306a36Sopenharmony_ci		compatible = "marvell,dove-pmu";
3562306a36Sopenharmony_ci		reg = <0xd0000 0x8000>, <0xd8000 0x8000>;
3662306a36Sopenharmony_ci		interrupts = <33>;
3762306a36Sopenharmony_ci		interrupt-controller;
3862306a36Sopenharmony_ci		#interrupt-cells = <1>;
3962306a36Sopenharmony_ci		#reset-cells = <1>;
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci		domains {
4262306a36Sopenharmony_ci			vpu_domain: vpu-domain {
4362306a36Sopenharmony_ci				#power-domain-cells = <0>;
4462306a36Sopenharmony_ci				marvell,pmu_pwr_mask = <0x00000008>;
4562306a36Sopenharmony_ci				marvell,pmu_iso_mask = <0x00000001>;
4662306a36Sopenharmony_ci				resets = <&pmu 16>;
4762306a36Sopenharmony_ci			};
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ci			gpu_domain: gpu-domain {
5062306a36Sopenharmony_ci				#power-domain-cells = <0>;
5162306a36Sopenharmony_ci				marvell,pmu_pwr_mask = <0x00000004>;
5262306a36Sopenharmony_ci				marvell,pmu_iso_mask = <0x00000002>;
5362306a36Sopenharmony_ci				resets = <&pmu 18>;
5462306a36Sopenharmony_ci			};
5562306a36Sopenharmony_ci		};
5662306a36Sopenharmony_ci	};
57