| Broadcom VC4 (VideoCore4) GPU |
| |
| The VC4 device present on the Raspberry Pi includes a display system |
| with HDMI output and the HVS (Hardware Video Scaler) for compositing |
| display planes. |
| |
| Required properties for VC4: |
| - compatible: Should be "brcm,bcm2835-vc4" |
| |
| Required properties for Pixel Valve: |
| - compatible: Should be one of "brcm,bcm2835-pixelvalve0", |
| "brcm,bcm2835-pixelvalve1", or "brcm,bcm2835-pixelvalve2" |
| - reg: Physical base address and length of the PV's registers |
| - interrupts: The interrupt number |
| See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt |
| |
| Required properties for HVS: |
| - compatible: Should be "brcm,bcm2835-hvs" |
| - reg: Physical base address and length of the HVS's registers |
| - interrupts: The interrupt number |
| See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt |
| |
| Required properties for HDMI |
| - compatible: Should be "brcm,bcm2835-hdmi" |
| - reg: Physical base address and length of the two register ranges |
| ("HDMI" and "HD", in that order) |
| - interrupts: The interrupt numbers |
| See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt |
| - ddc: phandle of the I2C controller used for DDC EDID probing |
| - clocks: a) hdmi: The HDMI state machine clock |
| b) pixel: The pixel clock. |
| |
| Optional properties for HDMI: |
| - hpd-gpios: The GPIO pin for HDMI hotplug detect (if it doesn't appear |
| as an interrupt/status bit in the HDMI controller |
| itself). See bindings/pinctrl/brcm,bcm2835-gpio.txt |
| |
| Required properties for V3D: |
| - compatible: Should be "brcm,bcm2835-v3d" |
| - reg: Physical base address and length of the V3D's registers |
| - interrupts: The interrupt number |
| See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt |
| |
| Example: |
| pixelvalve@7e807000 { |
| compatible = "brcm,bcm2835-pixelvalve2"; |
| reg = <0x7e807000 0x100>; |
| interrupts = <2 10>; /* pixelvalve */ |
| }; |
| |
| hvs@7e400000 { |
| compatible = "brcm,bcm2835-hvs"; |
| reg = <0x7e400000 0x6000>; |
| interrupts = <2 1>; |
| }; |
| |
| hdmi: hdmi@7e902000 { |
| compatible = "brcm,bcm2835-hdmi"; |
| reg = <0x7e902000 0x600>, |
| <0x7e808000 0x100>; |
| interrupts = <2 8>, <2 9>; |
| ddc = <&i2c2>; |
| hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>; |
| clocks = <&clocks BCM2835_PLLH_PIX>, |
| <&clocks BCM2835_CLOCK_HSM>; |
| clock-names = "pixel", "hdmi"; |
| }; |
| |
| v3d: v3d@7ec00000 { |
| compatible = "brcm,bcm2835-v3d"; |
| reg = <0x7ec00000 0x1000>; |
| interrupts = <1 10>; |
| }; |
| |
| vc4: gpu { |
| compatible = "brcm,bcm2835-vc4"; |
| }; |