Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: bcm283x: Switch V3D over to using the PM driver instead of firmware.

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>

authored by

Eric Anholt and committed by
Stefan Wahren
e1dc2b2e 81fc035f

+3 -5
-4
arch/arm/boot/dts/bcm2835-rpi.dtsi
··· 87 87 power-domains = <&power RPI_POWER_DOMAIN_USB>; 88 88 }; 89 89 90 - &v3d { 91 - power-domains = <&power RPI_POWER_DOMAIN_V3D>; 92 - }; 93 - 94 90 &hdmi { 95 91 power-domains = <&power RPI_POWER_DOMAIN_HDMI>; 96 92 status = "okay";
+3 -1
arch/arm/boot/dts/bcm283x.dtsi
··· 3 3 #include <dt-bindings/clock/bcm2835-aux.h> 4 4 #include <dt-bindings/gpio/gpio.h> 5 5 #include <dt-bindings/interrupt-controller/irq.h> 6 + #include <dt-bindings/soc/bcm2835-pm.h> 6 7 7 8 /* firmware-provided startup stubs live here, where the secondary CPUs are 8 9 * spinning. ··· 121 120 #interrupt-cells = <2>; 122 121 }; 123 122 124 - watchdog@7e100000 { 123 + pm: watchdog@7e100000 { 125 124 compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt"; 126 125 #power-domain-cells = <1>; 127 126 #reset-cells = <1>; ··· 639 638 compatible = "brcm,bcm2835-v3d"; 640 639 reg = <0x7ec00000 0x1000>; 641 640 interrupts = <1 10>; 641 + power-domains = <&pm BCM2835_POWER_DOMAIN_GRAFX_V3D>; 642 642 }; 643 643 644 644 vc4: gpu {