arm64: dts: meson-gx: Switch to the meson-ee-pwrc bindings
authorMartin Blumenstingl <martin.blumenstingl@googlemail.com>
Sat, 20 Jun 2020 16:12:11 +0000 (18:12 +0200)
committerKevin Hilman <khilman@baylibre.com>
Mon, 13 Jul 2020 18:57:05 +0000 (11:57 -0700)
The "amlogic,meson-gx-pwrc-vpu" binding only supports the VPU power
domain, while actually there are more power domains behind that set of
registers. Switch to the new bindings so we can add more power domains
as needed.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
Link: https://lore.kernel.org/r/20200620161211.23685-1-martin.blumenstingl@googlemail.com
arch/arm64/boot/dts/amlogic/meson-gx.dtsi
arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
arch/arm64/boot/dts/amlogic/meson-gxl.dtsi

index ba63c36b22e0fa74237d4011740c520f067f67d4..0edd137151f89eb6ba63695d28abdfaf18cf6434 100644 (file)
@@ -12,6 +12,7 @@
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/interrupt-controller/irq.h>
 #include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/power/meson-gxbb-power.h>
 #include <dt-bindings/thermal/thermal.h>
 
 / {
@@ -60,7 +61,7 @@
                        compatible = "amlogic,simple-framebuffer",
                                     "simple-framebuffer";
                        amlogic,pipeline = "vpu-cvbs";
-                       power-domains = <&pwrc_vpu>;
+                       power-domains = <&pwrc PWRC_GXBB_VPU_ID>;
                        status = "disabled";
                };
 
@@ -68,7 +69,7 @@
                        compatible = "amlogic,simple-framebuffer",
                                     "simple-framebuffer";
                        amlogic,pipeline = "vpu-hdmi";
-                       power-domains = <&pwrc_vpu>;
+                       power-domains = <&pwrc PWRC_GXBB_VPU_ID>;
                        status = "disabled";
                };
        };
                                compatible = "amlogic,meson-gx-ao-sysctrl", "simple-mfd", "syscon";
                                reg =  <0x0 0x0 0x0 0x100>;
 
-                               pwrc_vpu: power-controller-vpu {
-                                       compatible = "amlogic,meson-gx-pwrc-vpu";
-                                       #power-domain-cells = <0>;
-                                       amlogic,hhi-sysctrl = <&sysctrl>;
-                               };
-
                                clkc_AO: clock-controller {
                                        compatible = "amlogic,meson-gx-aoclkc";
                                        #clock-cells = <1>;
                        sysctrl: system-controller@0 {
                                compatible = "amlogic,meson-gx-hhi-sysctrl", "simple-mfd", "syscon";
                                reg = <0 0 0 0x400>;
+
+                               pwrc: power-controller {
+                                       compatible = "amlogic,meson-gxbb-pwrc";
+                                       #power-domain-cells = <1>;
+                                       amlogic,ao-sysctrl = <&sysctrl_AO>;
+                               };
                        };
 
                        mailbox: mailbox@404 {
                        interrupt-names = "macirq";
                        rx-fifo-depth = <4096>;
                        tx-fifo-depth = <2048>;
+                       power-domains = <&pwrc PWRC_GXBB_ETHERNET_MEM_ID>;
                        status = "disabled";
                };
 
index 234490d3ee683a520e0d7c795e09f8bed9d1ba6c..8bf6295716e06ea1584f48baf32f289fcdc1ff6f 100644 (file)
        };
 };
 
-&pwrc_vpu {
+&pwrc {
        resets = <&reset RESET_VIU>,
                 <&reset RESET_VENC>,
                 <&reset RESET_VCBUS>,
                 <&reset RESET_VDI6>,
                 <&reset RESET_VENCL>,
                 <&reset RESET_VID_LOCK>;
+       reset-names = "viu", "venc", "vcbus", "bt656",
+                     "dvin", "rdma", "venci", "vencp",
+                     "vdac", "vdi6", "vencl", "vid_lock";
        clocks = <&clkc CLKID_VPU>,
                 <&clkc CLKID_VAPB>;
        clock-names = "vpu", "vapb";
 
 &vpu {
        compatible = "amlogic,meson-gxbb-vpu", "amlogic,meson-gx-vpu";
-       power-domains = <&pwrc_vpu>;
+       power-domains = <&pwrc PWRC_GXBB_VPU_ID>;
 };
 
 &vdec {
index fc59c8534c0f7dcaad2c8f4ca1d4b4b16c695636..fe7aaf8873f2cccf6d47888999bf2bb46bd7b883 100644 (file)
        };
 };
 
-&pwrc_vpu {
+&pwrc {
        resets = <&reset RESET_VIU>,
                 <&reset RESET_VENC>,
                 <&reset RESET_VCBUS>,
                 <&reset RESET_VDI6>,
                 <&reset RESET_VENCL>,
                 <&reset RESET_VID_LOCK>;
+       reset-names = "viu", "venc", "vcbus", "bt656",
+                     "dvin", "rdma", "venci", "vencp",
+                     "vdac", "vdi6", "vencl", "vid_lock";
        clocks = <&clkc CLKID_VPU>,
                 <&clkc CLKID_VAPB>;
        clock-names = "vpu", "vapb";
 
 &vpu {
        compatible = "amlogic,meson-gxl-vpu", "amlogic,meson-gx-vpu";
-       power-domains = <&pwrc_vpu>;
+       power-domains = <&pwrc PWRC_GXBB_VPU_ID>;
 };
 
 &vdec {