UPSTREAM: dt-bindings: add binding for rk3399 power domains
authorElaine Zhang <zhangqing@rock-chips.com>
Wed, 9 Mar 2016 21:24:21 +0000 (05:24 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Tue, 29 Mar 2016 06:54:28 +0000 (14:54 +0800)
Add binding documentation for the power domains
found on Rockchip RK3399 SoCs

Change-Id: I51d70a08c86b5361ac5d51151711e07ffa3046ef
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
Acked-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
(cherry picked from git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip.git
 v4.7-armsoc/drivers commit e6e270aecbb0ed605b7267fdf6f828945014de24)

Documentation/devicetree/bindings/soc/rockchip/power_domain.txt

index aca567c457a7728e7cb7e3fdee101ab01ae12b4f..41a252131cc6fb05b6c2e3bc38710c4b95be60dc 100644 (file)
@@ -8,6 +8,7 @@ Required properties for power domain controller:
        "rockchip,rk3288-power-controller" - for RK3288 SoCs.
        "rockchip,rk3366-power-controller" - for RK3366 SoCs.
        "rockchip,rk3368-power-controller" - for RK3368 SoCs.
+       "rockchip,rk3399-power-controller" - for RK3399 SoCs.
 - #power-domain-cells: Number of cells in a power-domain specifier.
        Should be 1 for multiple PM domains.
 - #address-cells: Should be 1.
@@ -18,6 +19,7 @@ Required properties for power domain sub nodes:
        "include/dt-bindings/power/rk3288-power.h" - for RK3288 type power domain.
        "include/dt-bindings/power/rk3366-power.h" - for RK3366 type power domain.
        "include/dt-bindings/power/rk3368-power.h" - for RK3368 type power domain.
+       "include/dt-bindings/power/rk3399-power.h" - for RK3399 type power domain.
 - clocks (optional): phandles to clocks which need to be enabled while power domain
        switches state.
 
@@ -47,6 +49,34 @@ Example:
                 };
         };
 
+Example 2:
+               power: power-controller {
+                       compatible = "rockchip,rk3399-power-controller";
+                       #power-domain-cells = <1>;
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       pd_vio {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               reg = <RK3399_PD_VIO>;
+
+                               pd_vo {
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
+                                       reg = <RK3399_PD_VO>;
+
+                                       pd_vopb {
+                                               reg = <RK3399_PD_VOPB>;
+                                       };
+
+                                       pd_vopl {
+                                               reg = <RK3399_PD_VOPL>;
+                                       };
+                               };
+                       };
+               };
+
 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.
@@ -54,6 +84,7 @@ The index should use macros in:
        "include/dt-bindings/power/rk3288-power.h" - for rk3288 type power domain.
        "include/dt-bindings/power/rk3366-power.h" - for rk3366 type power domain.
        "include/dt-bindings/power/rk3368-power.h" - for rk3368 type power domain.
+       "include/dt-bindings/power/rk3399-power.h" - for rk3399 type power domain.
 
 Example of the node using power domain:
 
@@ -68,3 +99,9 @@ Example of the node using power domain:
                 power-domains = <&power RK3368_PD_GPU_1>;
                 /* ... */
         };
+
+       node {
+               /* ... */
+               power-domains = <&power RK3399_PD_VOPB>;
+               /* ... */
+       };