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

Configure Feed

Select the types of activity you want to include in your feed.

at v4.17-rc3 168 lines 4.9 kB view raw
1Broadcom VC4 (VideoCore4) GPU 2 3The VC4 device present on the Raspberry Pi includes a display system 4with HDMI output and the HVS (Hardware Video Scaler) for compositing 5display planes. 6 7Required properties for VC4: 8- compatible: Should be "brcm,bcm2835-vc4" or "brcm,cygnus-vc4" 9 10Required properties for Pixel Valve: 11- compatible: Should be one of "brcm,bcm2835-pixelvalve0", 12 "brcm,bcm2835-pixelvalve1", or "brcm,bcm2835-pixelvalve2" 13- reg: Physical base address and length of the PV's registers 14- interrupts: The interrupt number 15 See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt 16 17Required properties for HVS: 18- compatible: Should be "brcm,bcm2835-hvs" 19- reg: Physical base address and length of the HVS's registers 20- interrupts: The interrupt number 21 See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt 22 23Required properties for HDMI 24- compatible: Should be "brcm,bcm2835-hdmi" 25- reg: Physical base address and length of the two register ranges 26 ("HDMI" and "HD", in that order) 27- interrupts: The interrupt numbers 28 See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt 29- ddc: phandle of the I2C controller used for DDC EDID probing 30- clocks: a) hdmi: The HDMI state machine clock 31 b) pixel: The pixel clock. 32 33Optional properties for HDMI: 34- hpd-gpios: The GPIO pin for HDMI hotplug detect (if it doesn't appear 35 as an interrupt/status bit in the HDMI controller 36 itself). See bindings/pinctrl/brcm,bcm2835-gpio.txt 37- dmas: Should contain one entry pointing to the DMA channel used to 38 transfer audio data 39- dma-names: Should contain "audio-rx" 40 41Required properties for DPI: 42- compatible: Should be "brcm,bcm2835-dpi" 43- reg: Physical base address and length of the registers 44- clocks: a) core: The core clock the unit runs on 45 b) pixel: The pixel clock that feeds the pixelvalve 46- port: Port node with a single endpoint connecting to the panel 47 device, as defined in [1] 48 49Required properties for VEC: 50- compatible: Should be "brcm,bcm2835-vec" 51- reg: Physical base address and length of the registers 52- clocks: The core clock the unit runs on 53- interrupts: The interrupt number 54 See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt 55 56Required properties for V3D: 57- compatible: Should be "brcm,bcm2835-v3d" or "brcm,cygnus-v3d" 58- reg: Physical base address and length of the V3D's registers 59- interrupts: The interrupt number 60 See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt 61 62Optional properties for V3D: 63- clocks: The clock the unit runs on 64 65Required properties for DSI: 66- compatible: Should be "brcm,bcm2835-dsi0" or "brcm,bcm2835-dsi1" 67- reg: Physical base address and length of the DSI block's registers 68- interrupts: The interrupt number 69 See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt 70- clocks: a) phy: The DSI PLL clock feeding the DSI analog PHY 71 b) escape: The DSI ESC clock from CPRMAN 72 c) pixel: The DSI pixel clock from CPRMAN 73- clock-output-names: 74 The 3 clocks output from the DSI analog PHY: dsi[01]_byte, 75 dsi[01]_ddr2, and dsi[01]_ddr 76 77[1] Documentation/devicetree/bindings/media/video-interfaces.txt 78 79Example: 80pixelvalve@7e807000 { 81 compatible = "brcm,bcm2835-pixelvalve2"; 82 reg = <0x7e807000 0x100>; 83 interrupts = <2 10>; /* pixelvalve */ 84}; 85 86hvs@7e400000 { 87 compatible = "brcm,bcm2835-hvs"; 88 reg = <0x7e400000 0x6000>; 89 interrupts = <2 1>; 90}; 91 92hdmi: hdmi@7e902000 { 93 compatible = "brcm,bcm2835-hdmi"; 94 reg = <0x7e902000 0x600>, 95 <0x7e808000 0x100>; 96 interrupts = <2 8>, <2 9>; 97 ddc = <&i2c2>; 98 hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>; 99 clocks = <&clocks BCM2835_PLLH_PIX>, 100 <&clocks BCM2835_CLOCK_HSM>; 101 clock-names = "pixel", "hdmi"; 102}; 103 104dpi: dpi@7e208000 { 105 compatible = "brcm,bcm2835-dpi"; 106 reg = <0x7e208000 0x8c>; 107 clocks = <&clocks BCM2835_CLOCK_VPU>, 108 <&clocks BCM2835_CLOCK_DPI>; 109 clock-names = "core", "pixel"; 110 #address-cells = <1>; 111 #size-cells = <0>; 112 113 port { 114 dpi_out: endpoint@0 { 115 remote-endpoint = <&panel_in>; 116 }; 117 }; 118}; 119 120dsi1: dsi@7e700000 { 121 compatible = "brcm,bcm2835-dsi1"; 122 reg = <0x7e700000 0x8c>; 123 interrupts = <2 12>; 124 #address-cells = <1>; 125 #size-cells = <0>; 126 #clock-cells = <1>; 127 128 clocks = <&clocks BCM2835_PLLD_DSI1>, 129 <&clocks BCM2835_CLOCK_DSI1E>, 130 <&clocks BCM2835_CLOCK_DSI1P>; 131 clock-names = "phy", "escape", "pixel"; 132 133 clock-output-names = "dsi1_byte", "dsi1_ddr2", "dsi1_ddr"; 134 135 pitouchscreen: panel@0 { 136 compatible = "raspberrypi,touchscreen"; 137 reg = <0>; 138 139 <...> 140 }; 141}; 142 143vec: vec@7e806000 { 144 compatible = "brcm,bcm2835-vec"; 145 reg = <0x7e806000 0x1000>; 146 clocks = <&clocks BCM2835_CLOCK_VEC>; 147 interrupts = <2 27>; 148}; 149 150v3d: v3d@7ec00000 { 151 compatible = "brcm,bcm2835-v3d"; 152 reg = <0x7ec00000 0x1000>; 153 interrupts = <1 10>; 154}; 155 156vc4: gpu { 157 compatible = "brcm,bcm2835-vc4"; 158}; 159 160panel: panel { 161 compatible = "ontat,yx700wv03", "simple-panel"; 162 163 port { 164 panel_in: endpoint { 165 remote-endpoint = <&dpi_out>; 166 }; 167 }; 168};