1 #include <dt-bindings/input/input.h>
2 #include "tegra30.dtsi"
5 * Toradex Colibri T30 Module Device Tree
6 * Compatible for Revisions V1.1B, V1.1C, V1.1D, V1.1E; IT: V1.1A
9 model = "Toradex Colibri T30";
10 compatible = "toradex,colibri_t30", "nvidia,tegra30";
13 reg = <0x80000000 0x40000000>;
18 vdd-supply = <&avdd_hdmi_3v3_reg>;
19 pll-supply = <&avdd_hdmi_pll_1v8_reg>;
22 <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
23 nvidia,ddc-i2c-bus = <&hdmiddc>;
28 pinctrl-names = "default";
29 pinctrl-0 = <&state_default>;
31 state_default: pinmux {
32 /* Analogue Audio (On-module) */
34 nvidia,pins = "clk1_out_pw4";
35 nvidia,function = "extperiph1";
36 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
37 nvidia,tristate = <TEGRA_PIN_DISABLE>;
38 nvidia,enable-input = <TEGRA_PIN_DISABLE>;
41 nvidia,pins = "dap3_fs_pp0",
45 nvidia,function = "i2s2";
46 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
47 nvidia,tristate = <TEGRA_PIN_DISABLE>;
53 nvidia,function = "rsvd4";
54 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
55 nvidia,tristate = <TEGRA_PIN_DISABLE>;
58 /* Colibri Backlight PWM<A> */
60 nvidia,pins = "sdmmc3_dat3_pb4";
61 nvidia,function = "pwm0";
62 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
63 nvidia,tristate = <TEGRA_PIN_DISABLE>;
68 nvidia,pins = "kb_row8_ps0";
69 nvidia,function = "kbc";
70 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
71 nvidia,tristate = <TEGRA_PIN_DISABLE>;
72 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
76 * Colibri L_BIAS, LCD_M1 is muxed with LCD_DE
77 * todays display need DE, disable LCD_M1
80 nvidia,pins = "lcd_m1_pw1";
81 nvidia,function = "rsvd3";
82 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
83 nvidia,tristate = <TEGRA_PIN_DISABLE>;
84 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
89 nvidia,pins = "kb_row10_ps2";
90 nvidia,function = "sdmmc2";
91 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
92 nvidia,tristate = <TEGRA_PIN_DISABLE>;
95 nvidia,pins = "kb_row11_ps3",
100 nvidia,function = "sdmmc2";
101 nvidia,pull = <TEGRA_PIN_PULL_UP>;
102 nvidia,tristate = <TEGRA_PIN_DISABLE>;
107 nvidia,pins = "ulpi_clk_py0",
111 nvidia,function = "spi1";
112 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
113 nvidia,tristate = <TEGRA_PIN_DISABLE>;
116 nvidia,pins = "sdmmc3_dat6_pd3",
118 nvidia,function = "spdif";
119 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
120 nvidia,tristate = <TEGRA_PIN_ENABLE>;
125 nvidia,pins = "ulpi_data0_po1",
133 nvidia,function = "uarta";
134 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
135 nvidia,tristate = <TEGRA_PIN_DISABLE>;
140 nvidia,pins = "gmi_a16_pj7",
144 nvidia,function = "uartd";
145 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
146 nvidia,tristate = <TEGRA_PIN_DISABLE>;
151 nvidia,pins = "uart2_rxd_pc3",
153 nvidia,function = "uartb";
154 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
155 nvidia,tristate = <TEGRA_PIN_DISABLE>;
160 nvidia,pins = "sdmmc4_clk_pcc4",
162 nvidia,function = "sdmmc4";
163 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
164 nvidia,tristate = <TEGRA_PIN_DISABLE>;
167 nvidia,pins = "sdmmc4_dat0_paa0",
175 nvidia,function = "sdmmc4";
176 nvidia,pull = <TEGRA_PIN_PULL_UP>;
177 nvidia,tristate = <TEGRA_PIN_DISABLE>;
180 /* Power I2C (On-module) */
182 nvidia,pins = "pwr_i2c_scl_pz6",
184 nvidia,function = "i2cpwr";
185 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
186 nvidia,tristate = <TEGRA_PIN_DISABLE>;
187 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
188 nvidia,lock = <TEGRA_PIN_DISABLE>;
189 nvidia,open-drain = <TEGRA_PIN_ENABLE>;
193 * THERMD_ALERT#, unlatched I2C address pin of LM95245
194 * temperature sensor therefore requires disabling for
198 nvidia,pins = "lcd_dc1_pd2";
199 nvidia,function = "rsvd3";
200 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
201 nvidia,tristate = <TEGRA_PIN_DISABLE>;
202 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
208 nvidia,function = "rsvd1";
209 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
210 nvidia,tristate = <TEGRA_PIN_DISABLE>;
211 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
216 hdmiddc: i2c@7000c700 {
217 clock-frequency = <100000>;
221 * PWR_I2C: power I2C to audio codec, PMIC, temperature sensor and
222 * touch screen controller
226 clock-frequency = <100000>;
228 /* SGTL5000 audio codec */
230 compatible = "fsl,sgtl5000";
232 VDDA-supply = <&sys_3v3_reg>;
233 VDDIO-supply = <&sys_3v3_reg>;
234 clocks = <&tegra_car TEGRA30_CLK_EXTERN1>;
238 compatible = "ti,tps65911";
241 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
242 #interrupt-cells = <2>;
243 interrupt-controller;
245 ti,system-power-controller;
250 vcc1-supply = <&sys_3v3_reg>;
251 vcc2-supply = <&sys_3v3_reg>;
252 vcc3-supply = <&vio_reg>;
253 vcc4-supply = <&sys_3v3_reg>;
254 vcc5-supply = <&sys_3v3_reg>;
255 vcc6-supply = <&vio_reg>;
256 vcc7-supply = <&charge_pump_5v0_reg>;
257 vccio-supply = <&sys_3v3_reg>;
260 /* SW1: +V1.35_VDDIO_DDR */
262 regulator-name = "vddio_ddr_1v35";
263 regulator-min-microvolt = <1350000>;
264 regulator-max-microvolt = <1350000>;
270 /* SW CTRL: +V1.0_VDD_CPU */
271 vddctrl_reg: vddctrl {
272 regulator-name = "vdd_cpu,vdd_sys";
273 regulator-min-microvolt = <1150000>;
274 regulator-max-microvolt = <1150000>;
280 regulator-name = "vdd_1v8_gen";
281 regulator-min-microvolt = <1800000>;
282 regulator-max-microvolt = <1800000>;
289 * EN_+V3.3 switching via FET:
290 * +V3.3_AUDIO_AVDD_S, +V3.3 and +V1.8_VDD_LAN
291 * see also 3v3 fixed supply
294 regulator-name = "en_3v3";
295 regulator-min-microvolt = <3300000>;
296 regulator-max-microvolt = <3300000>;
304 regulator-name = "vdd_rtc";
305 regulator-min-microvolt = <1200000>;
306 regulator-max-microvolt = <1200000>;
312 * only required for analog RGB
315 regulator-name = "avdd_vdac";
316 regulator-min-microvolt = <2800000>;
317 regulator-max-microvolt = <2800000>;
322 * +V1.05_AVDD_PLLE: avdd_plle should be 1.05V
323 * but LDO6 can't set voltage in 50mV
327 regulator-name = "avdd_plle";
328 regulator-min-microvolt = <1100000>;
329 regulator-max-microvolt = <1100000>;
334 regulator-name = "avdd_pll";
335 regulator-min-microvolt = <1200000>;
336 regulator-max-microvolt = <1200000>;
340 /* +V1.0_VDD_DDR_HS */
342 regulator-name = "vdd_ddr_hs";
343 regulator-min-microvolt = <1000000>;
344 regulator-max-microvolt = <1000000>;
350 /* STMPE811 touch screen controller */
352 compatible = "st,stmpe811";
353 #address-cells = <1>;
356 interrupts = <TEGRA_GPIO(V, 0) IRQ_TYPE_LEVEL_LOW>;
357 interrupt-parent = <&gpio>;
358 interrupt-controller;
364 compatible = "st,stmpe-ts";
366 /* 3.25 MHz ADC clock speed */
368 /* 8 sample average control */
370 /* 7 length fractional part in z */
373 * 50 mA typical 80 mA max touchscreen drivers
374 * current limit value
379 /* internal ADC reference */
381 /* ADC converstion time: 80 clocks */
382 st,sample-time = <4>;
383 /* 1 ms panel driver settling time */
385 /* 5 ms touch detect interrupt delay */
386 st,touch-det-delay = <5>;
391 * LM95245 temperature sensor
392 * Note: OVERT_N directly connected to PMIC PWRDN
395 compatible = "national,lm95245";
399 /* SW: +V1.2_VDD_CORE */
401 compatible = "ti,tps62362";
404 regulator-name = "tps62362-vout";
405 regulator-min-microvolt = <900000>;
406 regulator-max-microvolt = <1400000>;
410 /* VSEL1: EN_CORE_DVFS_N low for DVFS */
416 nvidia,invert-interrupt;
417 nvidia,suspend-mode = <1>;
418 nvidia,cpu-pwr-good-time = <5000>;
419 nvidia,cpu-pwr-off-time = <5000>;
420 nvidia,core-pwr-good-time = <3845 3845>;
421 nvidia,core-pwr-off-time = <0>;
422 nvidia,core-power-req-active-high;
423 nvidia,sys-clock-req-active-high;
439 /* EHCI instance 1: USB2_DP/N -> AX88772B */
446 nvidia,is-wired = <1>;
450 compatible = "simple-bus";
451 #address-cells = <1>;
455 compatible = "fixed-clock";
458 clock-frequency = <32768>;
463 compatible = "simple-bus";
464 #address-cells = <1>;
467 avdd_hdmi_pll_1v8_reg: regulator@100 {
468 compatible = "regulator-fixed";
470 regulator-name = "+V1.8_AVDD_HDMI_PLL";
471 regulator-min-microvolt = <1800000>;
472 regulator-max-microvolt = <1800000>;
474 gpio = <&pmic 6 GPIO_ACTIVE_HIGH>;
475 vin-supply = <&vio_reg>;
478 sys_3v3_reg: regulator@101 {
479 compatible = "regulator-fixed";
481 regulator-name = "3v3";
482 regulator-min-microvolt = <3300000>;
483 regulator-max-microvolt = <3300000>;
487 avdd_hdmi_3v3_reg: regulator@102 {
488 compatible = "regulator-fixed";
490 regulator-name = "+V3.3_AVDD_HDMI";
491 regulator-min-microvolt = <3300000>;
492 regulator-max-microvolt = <3300000>;
494 gpio = <&pmic 6 GPIO_ACTIVE_HIGH>;
495 vin-supply = <&sys_3v3_reg>;
498 charge_pump_5v0_reg: regulator@103 {
499 compatible = "regulator-fixed";
501 regulator-name = "5v0";
502 regulator-min-microvolt = <5000000>;
503 regulator-max-microvolt = <5000000>;
509 compatible = "toradex,tegra-audio-sgtl5000-colibri_t30",
510 "nvidia,tegra-audio-sgtl5000";
511 nvidia,model = "Toradex Colibri T30";
512 nvidia,audio-routing =
513 "Headphone Jack", "HP_OUT",
514 "LINE_IN", "Line In Jack",
515 "MIC_IN", "Mic Jack";
516 nvidia,i2s-controller = <&tegra_i2s2>;
517 nvidia,audio-codec = <&sgtl5000>;
518 clocks = <&tegra_car TEGRA30_CLK_PLL_A>,
519 <&tegra_car TEGRA30_CLK_PLL_A_OUT0>,
520 <&tegra_car TEGRA30_CLK_EXTERN1>;
521 clock-names = "pll_a", "pll_a_out0", "mclk";