ARM: bcm283x: Switch V3D over to using the PM driver instead of firmware.
authorEric Anholt <eric@anholt.net>
Wed, 12 Dec 2018 23:51:50 +0000 (15:51 -0800)
committerStefan Wahren <stefan.wahren@i2se.com>
Fri, 1 Feb 2019 09:34:32 +0000 (10:34 +0100)
The GRAFX domain only contains V3D, and this driver should be the only
accessor of V3D (firmware usage gets disabled when V3D is in the DT),
so we can safely make Linux control the GRAFX and GRAFX_V3D power
domains.

Signed-off-by: Eric Anholt <eric@anholt.net>
Acked-by: Stefan Wahren <stefan.wahren@i2se.com>
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
arch/arm/boot/dts/bcm2835-rpi.dtsi
arch/arm/boot/dts/bcm283x.dtsi

index 29f970f864dc1d42a7fb9204cae7e649c1c68560..c6e2b2320abc572b0eeb65d03947d1bb69c4be0a 100644 (file)
        power-domains = <&power RPI_POWER_DOMAIN_USB>;
 };
 
-&v3d {
-       power-domains = <&power RPI_POWER_DOMAIN_V3D>;
-};
-
 &hdmi {
        power-domains = <&power RPI_POWER_DOMAIN_HDMI>;
        status = "okay";
index 20ed8b1da11b3a814504da345e187810ce168f9a..9777644c6c2b44d34ca67b7781b524b8d0998ea8 100644 (file)
@@ -3,6 +3,7 @@
 #include <dt-bindings/clock/bcm2835-aux.h>
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/soc/bcm2835-pm.h>
 
 /* firmware-provided startup stubs live here, where the secondary CPUs are
  * spinning.
                        #interrupt-cells = <2>;
                };
 
-               watchdog@7e100000 {
+               pm: watchdog@7e100000 {
                        compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt";
                        #power-domain-cells = <1>;
                        #reset-cells = <1>;
                        compatible = "brcm,bcm2835-v3d";
                        reg = <0x7ec00000 0x1000>;
                        interrupts = <1 10>;
+                       power-domains = <&pm BCM2835_POWER_DOMAIN_GRAFX_V3D>;
                };
 
                vc4: gpu {