1 #include "tegra30.dtsi"
4 * Toradex Apalis T30 Device Tree
5 * Compatible for Revisions 1GB: V1.0A; 2GB: V1.0B, V1.0C
8 model = "Toradex Apalis T30";
9 compatible = "toradex,apalis_t30", "nvidia,tegra30";
11 pcie-controller@00003000 {
12 avdd-pexa-supply = <&vdd2_reg>;
13 vdd-pexa-supply = <&vdd2_reg>;
14 avdd-pexb-supply = <&vdd2_reg>;
15 vdd-pexb-supply = <&vdd2_reg>;
16 avdd-pex-pll-supply = <&vdd2_reg>;
17 avdd-plle-supply = <&ldo6_reg>;
18 vddio-pex-ctl-supply = <&sys_3v3_reg>;
19 hvdd-pex-supply = <&sys_3v3_reg>;
22 nvidia,num-lanes = <4>;
26 nvidia,num-lanes = <1>;
30 nvidia,num-lanes = <1>;
36 vdd-supply = <&sys_3v3_reg>;
37 pll-supply = <&vio_reg>;
40 <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
41 nvidia,ddc-i2c-bus = <&hdmiddc>;
46 pinctrl-names = "default";
47 pinctrl-0 = <&state_default>;
49 state_default: pinmux {
53 nvidia,function = "rsvd4";
54 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
55 nvidia,tristate = <TEGRA_PIN_DISABLE>;
60 nvidia,pins = "uart3_rts_n_pc0";
61 nvidia,function = "pwm0";
62 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
63 nvidia,tristate = <TEGRA_PIN_DISABLE>;
65 /* BKL1_PWM_EN#, disable TPS65911 PMIC PWM backlight */
67 nvidia,pins = "uart3_cts_n_pa1";
68 nvidia,function = "rsvd1";
69 nvidia,pull = <TEGRA_PIN_PULL_UP>;
70 nvidia,tristate = <TEGRA_PIN_DISABLE>;
73 /* Apalis CAN1 on SPI6 */
75 nvidia,pins = "spi2_cs0_n_px3",
79 nvidia,function = "spi6";
80 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
81 nvidia,tristate = <TEGRA_PIN_DISABLE>;
85 nvidia,pins = "spi2_cs1_n_pw2";
86 nvidia,function = "spi3";
87 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
88 nvidia,tristate = <TEGRA_PIN_DISABLE>;
89 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
92 /* Apalis CAN2 on SPI4 */
94 nvidia,pins = "gmi_a16_pj7",
98 nvidia,function = "spi4";
99 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
100 nvidia,tristate = <TEGRA_PIN_DISABLE>;
104 nvidia,pins = "spi2_cs2_n_pw3";
105 nvidia,function = "spi3";
106 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
107 nvidia,tristate = <TEGRA_PIN_DISABLE>;
108 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
113 nvidia,pins = "cam_i2c_scl_pbb1",
115 nvidia,function = "i2c3";
116 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
117 nvidia,tristate = <TEGRA_PIN_DISABLE>;
118 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
119 nvidia,lock = <TEGRA_PIN_DISABLE>;
120 nvidia,open-drain = <TEGRA_PIN_ENABLE>;
125 nvidia,pins = "sdmmc3_clk_pa6",
127 nvidia,function = "sdmmc3";
128 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
129 nvidia,tristate = <TEGRA_PIN_DISABLE>;
132 nvidia,pins = "sdmmc3_dat0_pb7",
140 nvidia,function = "sdmmc3";
141 nvidia,pull = <TEGRA_PIN_PULL_UP>;
142 nvidia,tristate = <TEGRA_PIN_DISABLE>;
144 /* Apalis MMC1_CD# */
147 nvidia,function = "rsvd2";
148 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
149 nvidia,tristate = <TEGRA_PIN_DISABLE>;
150 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
155 nvidia,pins = "gpio_pu6";
156 nvidia,function = "pwm3";
157 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
158 nvidia,tristate = <TEGRA_PIN_DISABLE>;
163 nvidia,pins = "gpio_pu5";
164 nvidia,function = "pwm2";
165 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
166 nvidia,tristate = <TEGRA_PIN_DISABLE>;
171 nvidia,pins = "gpio_pu4";
172 nvidia,function = "pwm1";
173 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
174 nvidia,tristate = <TEGRA_PIN_DISABLE>;
179 nvidia,pins = "gpio_pu3";
180 nvidia,function = "pwm0";
181 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
182 nvidia,tristate = <TEGRA_PIN_DISABLE>;
185 /* Apalis RESET_MOCI# */
187 nvidia,pins = "gmi_rst_n_pi4";
188 nvidia,function = "gmi";
189 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
190 nvidia,tristate = <TEGRA_PIN_DISABLE>;
195 nvidia,pins = "sdmmc1_clk_pz0";
196 nvidia,function = "sdmmc1";
197 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
198 nvidia,tristate = <TEGRA_PIN_DISABLE>;
201 nvidia,pins = "sdmmc1_cmd_pz1",
206 nvidia,function = "sdmmc1";
207 nvidia,pull = <TEGRA_PIN_PULL_UP>;
208 nvidia,tristate = <TEGRA_PIN_DISABLE>;
212 nvidia,pins = "clk2_req_pcc5";
213 nvidia,function = "rsvd2";
214 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
215 nvidia,tristate = <TEGRA_PIN_DISABLE>;
216 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
221 nvidia,pins = "spi1_sck_px5",
225 nvidia,function = "spi1";
226 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
227 nvidia,tristate = <TEGRA_PIN_DISABLE>;
232 nvidia,pins = "lcd_sck_pz4",
236 nvidia,function = "spi5";
237 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
238 nvidia,tristate = <TEGRA_PIN_DISABLE>;
243 nvidia,pins = "ulpi_data0_po1",
251 nvidia,function = "uarta";
252 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
253 nvidia,tristate = <TEGRA_PIN_DISABLE>;
258 nvidia,pins = "ulpi_clk_py0",
262 nvidia,function = "uartd";
263 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
264 nvidia,tristate = <TEGRA_PIN_DISABLE>;
269 nvidia,pins = "uart2_rxd_pc3",
271 nvidia,function = "uartb";
272 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
273 nvidia,tristate = <TEGRA_PIN_DISABLE>;
278 nvidia,pins = "uart3_rxd_pw7",
280 nvidia,function = "uartc";
281 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
282 nvidia,tristate = <TEGRA_PIN_DISABLE>;
285 /* Apalis USBO1_EN */
287 nvidia,pins = "gen2_i2c_scl_pt5";
288 nvidia,function = "rsvd4";
289 nvidia,open-drain = <TEGRA_PIN_DISABLE>;
290 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
291 nvidia,tristate = <TEGRA_PIN_DISABLE>;
294 /* Apalis USBO1_OC# */
296 nvidia,pins = "gen2_i2c_sda_pt6";
297 nvidia,function = "rsvd4";
298 nvidia,open-drain = <TEGRA_PIN_DISABLE>;
299 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
300 nvidia,tristate = <TEGRA_PIN_DISABLE>;
301 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
304 /* Apalis WAKE1_MICO */
307 nvidia,function = "rsvd1";
308 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
309 nvidia,tristate = <TEGRA_PIN_DISABLE>;
310 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
313 /* eMMC (On-module) */
315 nvidia,pins = "sdmmc4_clk_pcc4",
317 nvidia,function = "sdmmc4";
318 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
319 nvidia,tristate = <TEGRA_PIN_DISABLE>;
322 nvidia,pins = "sdmmc4_dat0_paa0",
330 nvidia,function = "sdmmc4";
331 nvidia,pull = <TEGRA_PIN_PULL_UP>;
332 nvidia,tristate = <TEGRA_PIN_DISABLE>;
335 /* LVDS Transceiver Configuration */
337 nvidia,pins = "pbb0",
341 nvidia,function = "rsvd2";
342 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
343 nvidia,tristate = <TEGRA_PIN_DISABLE>;
344 nvidia,enable-input = <TEGRA_PIN_DISABLE>;
345 nvidia,lock = <TEGRA_PIN_DISABLE>;
348 nvidia,pins = "pbb3",
352 nvidia,function = "displayb";
353 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
354 nvidia,tristate = <TEGRA_PIN_DISABLE>;
355 nvidia,enable-input = <TEGRA_PIN_DISABLE>;
356 nvidia,lock = <TEGRA_PIN_DISABLE>;
359 /* Power I2C (On-module) */
361 nvidia,pins = "pwr_i2c_scl_pz6",
363 nvidia,function = "i2cpwr";
364 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
365 nvidia,tristate = <TEGRA_PIN_DISABLE>;
366 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
367 nvidia,lock = <TEGRA_PIN_DISABLE>;
368 nvidia,open-drain = <TEGRA_PIN_ENABLE>;
372 * THERMD_ALERT#, unlatched I2C address pin of LM95245
373 * temperature sensor therefore requires disabling for
377 nvidia,pins = "lcd_dc1_pd2";
378 nvidia,function = "rsvd3";
379 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
380 nvidia,tristate = <TEGRA_PIN_DISABLE>;
381 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
387 nvidia,function = "rsvd1";
388 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
389 nvidia,tristate = <TEGRA_PIN_DISABLE>;
390 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
395 hdmiddc: i2c@7000c700 {
396 clock-frequency = <100000>;
400 * PWR_I2C: power I2C to audio codec, PMIC, temperature sensor and
401 * touch screen controller
405 clock-frequency = <100000>;
408 compatible = "ti,tps65911";
411 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
412 #interrupt-cells = <2>;
413 interrupt-controller;
415 ti,system-power-controller;
420 vcc1-supply = <&sys_3v3_reg>;
421 vcc2-supply = <&sys_3v3_reg>;
422 vcc3-supply = <&vio_reg>;
423 vcc4-supply = <&sys_3v3_reg>;
424 vcc5-supply = <&sys_3v3_reg>;
425 vcc6-supply = <&vio_reg>;
426 vcc7-supply = <&charge_pump_5v0_reg>;
427 vccio-supply = <&sys_3v3_reg>;
430 /* SW1: +V1.35_VDDIO_DDR */
432 regulator-name = "vddio_ddr_1v35";
433 regulator-min-microvolt = <1350000>;
434 regulator-max-microvolt = <1350000>;
441 "vdd_pexa,vdd_pexb,vdd_sata";
442 regulator-min-microvolt = <1050000>;
443 regulator-max-microvolt = <1050000>;
446 /* SW CTRL: +V1.0_VDD_CPU */
447 vddctrl_reg: vddctrl {
448 regulator-name = "vdd_cpu,vdd_sys";
449 regulator-min-microvolt = <1150000>;
450 regulator-max-microvolt = <1150000>;
456 regulator-name = "vdd_1v8_gen";
457 regulator-min-microvolt = <1800000>;
458 regulator-max-microvolt = <1800000>;
465 * EN_+V3.3 switching via FET:
466 * +V3.3_AUDIO_AVDD_S, +V3.3 and +V1.8_VDD_LAN
467 * see also v3_3 fixed supply
470 regulator-name = "en_3v3";
471 regulator-min-microvolt = <3300000>;
472 regulator-max-microvolt = <3300000>;
479 "avdd_dsi_csi,pwrdet_mipi";
480 regulator-min-microvolt = <1200000>;
481 regulator-max-microvolt = <1200000>;
486 regulator-name = "vdd_rtc";
487 regulator-min-microvolt = <1200000>;
488 regulator-max-microvolt = <1200000>;
494 * only required for analog RGB
497 regulator-name = "avdd_vdac";
498 regulator-min-microvolt = <2800000>;
499 regulator-max-microvolt = <2800000>;
504 * +V1.05_AVDD_PLLE: avdd_plle should be 1.05V
505 * but LDO6 can't set voltage in 50mV
509 regulator-name = "avdd_plle";
510 regulator-min-microvolt = <1100000>;
511 regulator-max-microvolt = <1100000>;
516 regulator-name = "avdd_pll";
517 regulator-min-microvolt = <1200000>;
518 regulator-max-microvolt = <1200000>;
522 /* +V1.0_VDD_DDR_HS */
524 regulator-name = "vdd_ddr_hs";
525 regulator-min-microvolt = <1000000>;
526 regulator-max-microvolt = <1000000>;
532 /* STMPE811 touch screen controller */
534 compatible = "st,stmpe811";
535 #address-cells = <1>;
538 interrupts = <TEGRA_GPIO(V, 0) IRQ_TYPE_LEVEL_LOW>;
539 interrupt-parent = <&gpio>;
540 interrupt-controller;
546 compatible = "st,stmpe-ts";
548 /* 3.25 MHz ADC clock speed */
550 /* 8 sample average control */
552 /* 7 length fractional part in z */
555 * 50 mA typical 80 mA max touchscreen drivers
556 * current limit value
561 /* internal ADC reference */
563 /* ADC converstion time: 80 clocks */
564 st,sample-time = <4>;
565 /* 1 ms panel driver settling time */
567 /* 5 ms touch detect interrupt delay */
568 st,touch-det-delay = <5>;
573 * LM95245 temperature sensor
574 * Note: OVERT_N directly connected to PMIC PWRDN
577 compatible = "national,lm95245";
581 /* SW: +V1.2_VDD_CORE */
583 compatible = "ti,tps62362";
586 regulator-name = "tps62362-vout";
587 regulator-min-microvolt = <900000>;
588 regulator-max-microvolt = <1400000>;
592 /* VSEL1: EN_CORE_DVFS_N low for DVFS */
600 spi-max-frequency = <10000000>;
603 compatible = "microchip,mcp2515";
606 interrupt-parent = <&gpio>;
607 interrupts = <TEGRA_GPIO(W, 3) GPIO_ACTIVE_LOW>;
608 spi-max-frequency = <10000000>;
615 spi-max-frequency = <10000000>;
618 compatible = "microchip,mcp2515";
621 interrupt-parent = <&gpio>;
622 interrupts = <TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
623 spi-max-frequency = <10000000>;
628 nvidia,invert-interrupt;
629 nvidia,suspend-mode = <1>;
630 nvidia,cpu-pwr-good-time = <5000>;
631 nvidia,cpu-pwr-off-time = <5000>;
632 nvidia,core-pwr-good-time = <3845 3845>;
633 nvidia,core-pwr-off-time = <0>;
634 nvidia,core-power-req-active-high;
635 nvidia,sys-clock-req-active-high;
645 compatible = "simple-bus";
646 #address-cells = <1>;
650 compatible = "fixed-clock";
653 clock-frequency = <32768>;
656 compatible = "fixed-clock";
659 clock-frequency = <16000000>;
660 clock-output-names = "clk16m";
665 compatible = "simple-bus";
666 #address-cells = <1>;
669 sys_3v3_reg: regulator@100 {
670 compatible = "regulator-fixed";
672 regulator-name = "3v3";
673 regulator-min-microvolt = <3300000>;
674 regulator-max-microvolt = <3300000>;
678 charge_pump_5v0_reg: regulator@101 {
679 compatible = "regulator-fixed";
681 regulator-name = "5v0";
682 regulator-min-microvolt = <5000000>;
683 regulator-max-microvolt = <5000000>;