|
@@ -0,0 +1,46 @@
|
|
|
|
+* Rockchip Power Domains
|
|
|
|
+
|
|
|
|
+Rockchip processors include support for multiple power domains which can be
|
|
|
|
+powered up/down by software based on different application scenes to save power.
|
|
|
|
+
|
|
|
|
+Required properties for power domain controller:
|
|
|
|
+- compatible: Should be one of the following.
|
|
|
|
+ "rockchip,rk3288-power-controller" - for RK3288 SoCs.
|
|
|
|
+- #power-domain-cells: Number of cells in a power-domain specifier.
|
|
|
|
+ Should be 1 for multiple PM domains.
|
|
|
|
+- #address-cells: Should be 1.
|
|
|
|
+- #size-cells: Should be 0.
|
|
|
|
+
|
|
|
|
+Required properties for power domain sub nodes:
|
|
|
|
+- reg: index of the power domain, should use macros in:
|
|
|
|
+ "include/dt-bindings/power-domain/rk3288.h" - for RK3288 type power domain.
|
|
|
|
+- clocks (optional): phandles to clocks which need to be enabled while power domain
|
|
|
|
+ switches state.
|
|
|
|
+
|
|
|
|
+Example:
|
|
|
|
+
|
|
|
|
+ power: power-controller {
|
|
|
|
+ compatible = "rockchip,rk3288-power-controller";
|
|
|
|
+ #power-domain-cells = <1>;
|
|
|
|
+ #address-cells = <1>;
|
|
|
|
+ #size-cells = <0>;
|
|
|
|
+
|
|
|
|
+ pd_gpu {
|
|
|
|
+ reg = <RK3288_PD_GPU>;
|
|
|
|
+ clocks = <&cru ACLK_GPU>;
|
|
|
|
+ };
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+Node of a device using power domains must have a power-domains property,
|
|
|
|
+containing a phandle to the power device node and an index specifying which
|
|
|
|
+power domain to use.
|
|
|
|
+The index should use macros in:
|
|
|
|
+ "include/dt-bindings/power-domain/rk3288.h" - for rk3288 type power domain.
|
|
|
|
+
|
|
|
|
+Example of the node using power domain:
|
|
|
|
+
|
|
|
|
+ node {
|
|
|
|
+ /* ... */
|
|
|
|
+ power-domains = <&power RK3288_PD_GPU>;
|
|
|
|
+ /* ... */
|
|
|
|
+ };
|