4 - compatible: "nvidia,tegra<chip>-host1x"
5 - reg: Physical base address and length of the controller's registers.
6 For pre-Tegra186, one entry describing the whole register area.
7 For Tegra186, one entry for each entry in reg-names:
8 "vm" - VM region assigned to Linux
9 "hypervisor" - Hypervisor region (only if Linux acts as hypervisor)
10 - interrupts: The interrupt outputs from the controller.
11 - #address-cells: The number of cells used to represent physical base addresses
12 in the host1x address space. Should be 1.
13 - #size-cells: The number of cells used to represent the size of an address
14 range in the host1x address space. Should be 1.
15 - ranges: The mapping of the host1x address space to the CPU address space.
16 - clocks: Must contain one entry, for the module clock.
17 See ../clocks/clock-bindings.txt for details.
18 - resets: Must contain an entry for each entry in reset-names.
19 See ../reset/reset.txt for details.
20 - reset-names: Must include the following entries:
23 The host1x top-level node defines a number of children, each representing one
24 of the following host1x client modules:
29 - compatible: "nvidia,tegra<chip>-mpe"
30 - reg: Physical base address and length of the controller's registers.
31 - interrupts: The interrupt outputs from the controller.
32 - clocks: Must contain one entry, for the module clock.
33 See ../clocks/clock-bindings.txt for details.
34 - resets: Must contain an entry for each entry in reset-names.
35 See ../reset/reset.txt for details.
36 - reset-names: Must include the following entries:
42 - compatible: "nvidia,tegra<chip>-vi"
43 - reg: Physical base address and length of the controller's registers.
44 - interrupts: The interrupt outputs from the controller.
45 - clocks: Must contain one entry, for the module clock.
46 See ../clocks/clock-bindings.txt for details.
47 - resets: Must contain an entry for each entry in reset-names.
48 See ../reset/reset.txt for details.
49 - reset-names: Must include the following entries:
52 - epp: encoder pre-processor
55 - compatible: "nvidia,tegra<chip>-epp"
56 - reg: Physical base address and length of the controller's registers.
57 - interrupts: The interrupt outputs from the controller.
58 - clocks: Must contain one entry, for the module clock.
59 See ../clocks/clock-bindings.txt for details.
60 - resets: Must contain an entry for each entry in reset-names.
61 See ../reset/reset.txt for details.
62 - reset-names: Must include the following entries:
65 - isp: image signal processor
68 - compatible: "nvidia,tegra<chip>-isp"
69 - reg: Physical base address and length of the controller's registers.
70 - interrupts: The interrupt outputs from the controller.
71 - clocks: Must contain one entry, for the module clock.
72 See ../clocks/clock-bindings.txt for details.
73 - resets: Must contain an entry for each entry in reset-names.
74 See ../reset/reset.txt for details.
75 - reset-names: Must include the following entries:
78 - gr2d: 2D graphics engine
81 - compatible: "nvidia,tegra<chip>-gr2d"
82 - reg: Physical base address and length of the controller's registers.
83 - interrupts: The interrupt outputs from the controller.
84 - clocks: Must contain one entry, for the module clock.
85 See ../clocks/clock-bindings.txt for details.
86 - resets: Must contain an entry for each entry in reset-names.
87 See ../reset/reset.txt for details.
88 - reset-names: Must include the following entries:
91 - gr3d: 3D graphics engine
94 - compatible: "nvidia,tegra<chip>-gr3d"
95 - reg: Physical base address and length of the controller's registers.
96 - clocks: Must contain an entry for each entry in clock-names.
97 See ../clocks/clock-bindings.txt for details.
98 - clock-names: Must include the following entries:
99 (This property may be omitted if the only clock in the list is "3d")
101 This MUST be the first entry.
102 - 3d2 (Only required on SoCs with two 3D clocks)
103 - resets: Must contain an entry for each entry in reset-names.
104 See ../reset/reset.txt for details.
105 - reset-names: Must include the following entries:
107 - 3d2 (Only required on SoCs with two 3D clocks)
109 - dc: display controller
112 - compatible: "nvidia,tegra<chip>-dc"
113 - reg: Physical base address and length of the controller's registers.
114 - interrupts: The interrupt outputs from the controller.
115 - clocks: Must contain an entry for each entry in clock-names.
116 See ../clocks/clock-bindings.txt for details.
117 - clock-names: Must include the following entries:
119 This MUST be the first entry.
121 - resets: Must contain an entry for each entry in reset-names.
122 See ../reset/reset.txt for details.
123 - reset-names: Must include the following entries:
125 - nvidia,head: The number of the display controller head. This is used to
126 setup the various types of output to receive video data from the given
129 Each display controller node has a child node, named "rgb", that represents
130 the RGB output associated with the controller. It can take the following
132 - nvidia,ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing
133 - nvidia,hpd-gpio: specifies a GPIO used for hotplug detection
134 - nvidia,edid: supplies a binary EDID blob
135 - nvidia,panel: phandle of a display panel
137 - hdmi: High Definition Multimedia Interface
140 - compatible: "nvidia,tegra<chip>-hdmi"
141 - reg: Physical base address and length of the controller's registers.
142 - interrupts: The interrupt outputs from the controller.
143 - hdmi-supply: supply for the +5V HDMI connector pin
144 - vdd-supply: regulator for supply voltage
145 - pll-supply: regulator for PLL
146 - clocks: Must contain an entry for each entry in clock-names.
147 See ../clocks/clock-bindings.txt for details.
148 - clock-names: Must include the following entries:
150 This MUST be the first entry.
152 - resets: Must contain an entry for each entry in reset-names.
153 See ../reset/reset.txt for details.
154 - reset-names: Must include the following entries:
158 - nvidia,ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing
159 - nvidia,hpd-gpio: specifies a GPIO used for hotplug detection
160 - nvidia,edid: supplies a binary EDID blob
161 - nvidia,panel: phandle of a display panel
163 - tvo: TV encoder output
166 - compatible: "nvidia,tegra<chip>-tvo"
167 - reg: Physical base address and length of the controller's registers.
168 - interrupts: The interrupt outputs from the controller.
169 - clocks: Must contain one entry, for the module clock.
170 See ../clocks/clock-bindings.txt for details.
172 - dsi: display serial interface
175 - compatible: "nvidia,tegra<chip>-dsi"
176 - reg: Physical base address and length of the controller's registers.
177 - clocks: Must contain an entry for each entry in clock-names.
178 See ../clocks/clock-bindings.txt for details.
179 - clock-names: Must include the following entries:
181 This MUST be the first entry.
184 - resets: Must contain an entry for each entry in reset-names.
185 See ../reset/reset.txt for details.
186 - reset-names: Must include the following entries:
188 - avdd-dsi-supply: phandle of a supply that powers the DSI controller
189 - nvidia,mipi-calibrate: Should contain a phandle and a specifier specifying
190 which pads are used by this DSI output and need to be calibrated. See also
191 ../display/tegra/nvidia,tegra114-mipi.txt.
194 - nvidia,ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing
195 - nvidia,hpd-gpio: specifies a GPIO used for hotplug detection
196 - nvidia,edid: supplies a binary EDID blob
197 - nvidia,panel: phandle of a display panel
198 - nvidia,ganged-mode: contains a phandle to a second DSI controller to gang
199 up with in order to support up to 8 data lanes
201 - sor: serial output resource
204 - compatible: Should be:
205 - "nvidia,tegra124-sor": for Tegra124 and Tegra132
206 - "nvidia,tegra132-sor": for Tegra132
207 - "nvidia,tegra210-sor": for Tegra210
208 - "nvidia,tegra210-sor1": for Tegra210
209 - "nvidia,tegra186-sor": for Tegra186
210 - "nvidia,tegra186-sor1": for Tegra186
211 - reg: Physical base address and length of the controller's registers.
212 - interrupts: The interrupt outputs from the controller.
213 - clocks: Must contain an entry for each entry in clock-names.
214 See ../clocks/clock-bindings.txt for details.
215 - clock-names: Must include the following entries:
216 - sor: clock input for the SOR hardware
217 - out: SOR output clock
218 - parent: input for the pixel clock
219 - dp: reference clock for the SOR clock
220 - safe: safe reference for the SOR clock during power up
222 For Tegra186 and later:
223 - pad: SOR pad output clock (on Tegra186 and later)
226 - source: source clock for the SOR clock (obsolete, use "out" instead)
228 - resets: Must contain an entry for each entry in reset-names.
229 See ../reset/reset.txt for details.
230 - reset-names: Must include the following entries:
233 Required properties on Tegra186 and later:
234 - nvidia,interface: index of the SOR interface
237 - nvidia,ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing
238 - nvidia,hpd-gpio: specifies a GPIO used for hotplug detection
239 - nvidia,edid: supplies a binary EDID blob
240 - nvidia,panel: phandle of a display panel
241 - nvidia,xbar-cfg: 5 cells containing the crossbar configuration. Each lane
242 of the SOR, identified by the cell's index, is mapped via the crossbar to
243 the pad specified by the cell's value.
245 Optional properties when driving an eDP output:
246 - nvidia,dpaux: phandle to a DispayPort AUX interface
248 - dpaux: DisplayPort AUX interface
249 - compatible : Should contain one of the following:
250 - "nvidia,tegra124-dpaux": for Tegra124 and Tegra132
251 - "nvidia,tegra210-dpaux": for Tegra210
252 - reg: Physical base address and length of the controller's registers.
253 - interrupts: The interrupt outputs from the controller.
254 - clocks: Must contain an entry for each entry in clock-names.
255 See ../clocks/clock-bindings.txt for details.
256 - clock-names: Must include the following entries:
257 - dpaux: clock input for the DPAUX hardware
258 - parent: reference clock
259 - resets: Must contain an entry for each entry in reset-names.
260 See ../reset/reset.txt for details.
261 - reset-names: Must include the following entries:
263 - vdd-supply: phandle of a supply that powers the DisplayPort link
264 - i2c-bus: Subnode where I2C slave devices are listed. This subnode
265 must be always present. If there are no I2C slave devices, an empty
266 node should be added. See ../../i2c/i2c.txt for more information.
268 See ../pinctrl/nvidia,tegra124-dpaux-padctl.txt for information
269 regarding the DPAUX pad controller bindings.
271 - vic: Video Image Compositor
272 - compatible : "nvidia,tegra<chip>-vic"
273 - reg: Physical base address and length of the controller's registers.
274 - interrupts: The interrupt outputs from the controller.
275 - clocks: Must contain an entry for each entry in clock-names.
276 See ../clocks/clock-bindings.txt for details.
277 - clock-names: Must include the following entries:
278 - vic: clock input for the VIC hardware
279 - resets: Must contain an entry for each entry in reset-names.
280 See ../reset/reset.txt for details.
281 - reset-names: Must include the following entries:
290 compatible = "nvidia,tegra20-host1x", "simple-bus";
291 reg = <0x50000000 0x00024000>;
292 interrupts = <0 65 0x04 /* mpcore syncpt */
293 0 67 0x04>; /* mpcore general */
294 clocks = <&tegra_car TEGRA20_CLK_HOST1X>;
295 resets = <&tegra_car 28>;
296 reset-names = "host1x";
298 #address-cells = <1>;
301 ranges = <0x54000000 0x54000000 0x04000000>;
304 compatible = "nvidia,tegra20-mpe";
305 reg = <0x54040000 0x00040000>;
306 interrupts = <0 68 0x04>;
307 clocks = <&tegra_car TEGRA20_CLK_MPE>;
308 resets = <&tegra_car 60>;
313 compatible = "nvidia,tegra20-vi";
314 reg = <0x54080000 0x00040000>;
315 interrupts = <0 69 0x04>;
316 clocks = <&tegra_car TEGRA20_CLK_VI>;
317 resets = <&tegra_car 100>;
322 compatible = "nvidia,tegra20-epp";
323 reg = <0x540c0000 0x00040000>;
324 interrupts = <0 70 0x04>;
325 clocks = <&tegra_car TEGRA20_CLK_EPP>;
326 resets = <&tegra_car 19>;
331 compatible = "nvidia,tegra20-isp";
332 reg = <0x54100000 0x00040000>;
333 interrupts = <0 71 0x04>;
334 clocks = <&tegra_car TEGRA20_CLK_ISP>;
335 resets = <&tegra_car 23>;
340 compatible = "nvidia,tegra20-gr2d";
341 reg = <0x54140000 0x00040000>;
342 interrupts = <0 72 0x04>;
343 clocks = <&tegra_car TEGRA20_CLK_GR2D>;
344 resets = <&tegra_car 21>;
349 compatible = "nvidia,tegra20-gr3d";
350 reg = <0x54180000 0x00040000>;
351 clocks = <&tegra_car TEGRA20_CLK_GR3D>;
352 resets = <&tegra_car 24>;
357 compatible = "nvidia,tegra20-dc";
358 reg = <0x54200000 0x00040000>;
359 interrupts = <0 73 0x04>;
360 clocks = <&tegra_car TEGRA20_CLK_DISP1>,
361 <&tegra_car TEGRA20_CLK_PLL_P>;
362 clock-names = "dc", "parent";
363 resets = <&tegra_car 27>;
372 compatible = "nvidia,tegra20-dc";
373 reg = <0x54240000 0x00040000>;
374 interrupts = <0 74 0x04>;
375 clocks = <&tegra_car TEGRA20_CLK_DISP2>,
376 <&tegra_car TEGRA20_CLK_PLL_P>;
377 clock-names = "dc", "parent";
378 resets = <&tegra_car 26>;
387 compatible = "nvidia,tegra20-hdmi";
388 reg = <0x54280000 0x00040000>;
389 interrupts = <0 75 0x04>;
390 clocks = <&tegra_car TEGRA20_CLK_HDMI>,
391 <&tegra_car TEGRA20_CLK_PLL_D_OUT0>;
392 clock-names = "hdmi", "parent";
393 resets = <&tegra_car 51>;
394 reset-names = "hdmi";
399 compatible = "nvidia,tegra20-tvo";
400 reg = <0x542c0000 0x00040000>;
401 interrupts = <0 76 0x04>;
402 clocks = <&tegra_car TEGRA20_CLK_TVO>;
407 compatible = "nvidia,tegra20-dsi";
408 reg = <0x54300000 0x00040000>;
409 clocks = <&tegra_car TEGRA20_CLK_DSI>,
410 <&tegra_car TEGRA20_CLK_PLL_D_OUT0>;
411 clock-names = "dsi", "parent";
412 resets = <&tegra_car 48>;