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

ARM: bcm2835: Add VC4 to the device tree.

VC4 is the GPU (display and 3D) present on the 283x.

Signed-off-by: Eric Anholt <eric@anholt.net>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>

+80
+4
arch/arm/boot/dts/bcm2835-rpi-a-plus.dts
··· 29 29 brcm,function = <BCM2835_FSEL_ALT0>; 30 30 }; 31 31 }; 32 + 33 + &hdmi { 34 + hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>; 35 + };
+4
arch/arm/boot/dts/bcm2835-rpi-a.dts
··· 22 22 brcm,function = <BCM2835_FSEL_ALT2>; 23 23 }; 24 24 }; 25 + 26 + &hdmi { 27 + hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>; 28 + };
+4
arch/arm/boot/dts/bcm2835-rpi-b-plus.dts
··· 29 29 brcm,function = <BCM2835_FSEL_ALT0>; 30 30 }; 31 31 }; 32 + 33 + &hdmi { 34 + hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>; 35 + };
+4
arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts
··· 22 22 brcm,function = <BCM2835_FSEL_ALT2>; 23 23 }; 24 24 }; 25 + 26 + &hdmi { 27 + hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>; 28 + };
+4
arch/arm/boot/dts/bcm2835-rpi-b.dts
··· 16 16 &gpio { 17 17 pinctrl-0 = <&gpioout &alt0 &alt3>; 18 18 }; 19 + 20 + &hdmi { 21 + hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>; 22 + };
+9
arch/arm/boot/dts/bcm2835-rpi.dtsi
··· 74 74 &usb { 75 75 power-domains = <&power RPI_POWER_DOMAIN_USB>; 76 76 }; 77 + 78 + &v3d { 79 + power-domains = <&power RPI_POWER_DOMAIN_V3D>; 80 + }; 81 + 82 + &hdmi { 83 + power-domains = <&power RPI_POWER_DOMAIN_HDMI>; 84 + status = "okay"; 85 + };
+4
arch/arm/boot/dts/bcm2836-rpi-2-b.dts
··· 33 33 brcm,function = <BCM2835_FSEL_ALT0>; 34 34 }; 35 35 }; 36 + 37 + &hdmi { 38 + hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>; 39 + };
+47
arch/arm/boot/dts/bcm283x.dtsi
··· 1 1 #include <dt-bindings/pinctrl/bcm2835.h> 2 2 #include <dt-bindings/clock/bcm2835.h> 3 3 #include <dt-bindings/clock/bcm2835-aux.h> 4 + #include <dt-bindings/gpio/gpio.h> 4 5 #include "skeleton.dtsi" 5 6 6 7 /* This include file covers the common peripherals and configuration between ··· 154 153 status = "disabled"; 155 154 }; 156 155 156 + pixelvalve@7e206000 { 157 + compatible = "brcm,bcm2835-pixelvalve0"; 158 + reg = <0x7e206000 0x100>; 159 + interrupts = <2 13>; /* pwa0 */ 160 + }; 161 + 162 + pixelvalve@7e207000 { 163 + compatible = "brcm,bcm2835-pixelvalve1"; 164 + reg = <0x7e207000 0x100>; 165 + interrupts = <2 14>; /* pwa1 */ 166 + }; 167 + 157 168 aux: aux@0x7e215000 { 158 169 compatible = "brcm,bcm2835-aux"; 159 170 #clock-cells = <1>; ··· 219 206 status = "disabled"; 220 207 }; 221 208 209 + hvs@7e400000 { 210 + compatible = "brcm,bcm2835-hvs"; 211 + reg = <0x7e400000 0x6000>; 212 + interrupts = <2 1>; 213 + }; 214 + 222 215 i2c1: i2c@7e804000 { 223 216 compatible = "brcm,bcm2835-i2c"; 224 217 reg = <0x7e804000 0x1000>; ··· 245 226 status = "disabled"; 246 227 }; 247 228 229 + pixelvalve@7e807000 { 230 + compatible = "brcm,bcm2835-pixelvalve2"; 231 + reg = <0x7e807000 0x100>; 232 + interrupts = <2 10>; /* pixelvalve */ 233 + }; 234 + 235 + hdmi: hdmi@7e902000 { 236 + compatible = "brcm,bcm2835-hdmi"; 237 + reg = <0x7e902000 0x600>, 238 + <0x7e808000 0x100>; 239 + interrupts = <2 8>, <2 9>; 240 + ddc = <&i2c2>; 241 + clocks = <&clocks BCM2835_PLLH_PIX>, 242 + <&clocks BCM2835_CLOCK_HSM>; 243 + clock-names = "pixel", "hdmi"; 244 + status = "disabled"; 245 + }; 246 + 248 247 usb: usb@7e980000 { 249 248 compatible = "brcm,bcm2835-usb"; 250 249 reg = <0x7e980000 0x10000>; 251 250 interrupts = <1 9>; 251 + }; 252 + 253 + v3d: v3d@7ec00000 { 254 + compatible = "brcm,bcm2835-v3d"; 255 + reg = <0x7ec00000 0x1000>; 256 + interrupts = <1 10>; 257 + }; 258 + 259 + vc4: gpu { 260 + compatible = "brcm,bcm2835-vc4"; 252 261 }; 253 262 }; 254 263