Merge branches 'cpuidle', 'fixes' and 'misc' into for-linus
[deliverable/linux.git] / Documentation / devicetree / bindings / display / brcm,bcm-vc4.txt
1 Broadcom VC4 (VideoCore4) GPU
2
3 The VC4 device present on the Raspberry Pi includes a display system
4 with HDMI output and the HVS (Hardware Video Scaler) for compositing
5 display planes.
6
7 Required properties for VC4:
8 - compatible: Should be "brcm,bcm2835-vc4"
9
10 Required 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
17 Required 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
23 Required 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
33 Optional 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
38 Required properties for DPI:
39 - compatible: Should be "brcm,bcm2835-dpi"
40 - reg: Physical base address and length of the registers
41 - clocks: a) core: The core clock the unit runs on
42 b) pixel: The pixel clock that feeds the pixelvalve
43 - port: Port node with a single endpoint connecting to the panel
44 device, as defined in [1]
45
46 Required properties for V3D:
47 - compatible: Should be "brcm,bcm2835-v3d"
48 - reg: Physical base address and length of the V3D's registers
49 - interrupts: The interrupt number
50 See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
51
52 [1] Documentation/devicetree/bindings/media/video-interfaces.txt
53
54 Example:
55 pixelvalve@7e807000 {
56 compatible = "brcm,bcm2835-pixelvalve2";
57 reg = <0x7e807000 0x100>;
58 interrupts = <2 10>; /* pixelvalve */
59 };
60
61 hvs@7e400000 {
62 compatible = "brcm,bcm2835-hvs";
63 reg = <0x7e400000 0x6000>;
64 interrupts = <2 1>;
65 };
66
67 hdmi: hdmi@7e902000 {
68 compatible = "brcm,bcm2835-hdmi";
69 reg = <0x7e902000 0x600>,
70 <0x7e808000 0x100>;
71 interrupts = <2 8>, <2 9>;
72 ddc = <&i2c2>;
73 hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
74 clocks = <&clocks BCM2835_PLLH_PIX>,
75 <&clocks BCM2835_CLOCK_HSM>;
76 clock-names = "pixel", "hdmi";
77 };
78
79 dpi: dpi@7e208000 {
80 compatible = "brcm,bcm2835-dpi";
81 reg = <0x7e208000 0x8c>;
82 clocks = <&clocks BCM2835_CLOCK_VPU>,
83 <&clocks BCM2835_CLOCK_DPI>;
84 clock-names = "core", "pixel";
85 #address-cells = <1>;
86 #size-cells = <0>;
87
88 port {
89 dpi_out: endpoint@0 {
90 remote-endpoint = <&panel_in>;
91 };
92 };
93 };
94
95 v3d: v3d@7ec00000 {
96 compatible = "brcm,bcm2835-v3d";
97 reg = <0x7ec00000 0x1000>;
98 interrupts = <1 10>;
99 };
100
101 vc4: gpu {
102 compatible = "brcm,bcm2835-vc4";
103 };
104
105 panel: panel {
106 compatible = "ontat,yx700wv03", "simple-panel";
107
108 port {
109 panel_in: endpoint {
110 remote-endpoint = <&dpi_out>;
111 };
112 };
113 };
This page took 0.035528 seconds and 5 git commands to generate.