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