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 pex-clk-supply = <&sys_3v3_reg>;
13 vdd-supply = <&vdd2_reg>;
14 avdd-supply = <&ldo6_reg>;
17 nvidia,num-lanes = <4>;
21 nvidia,num-lanes = <1>;
25 nvidia,num-lanes = <1>;
31 vdd-supply = <&sys_3v3_reg>;
32 pll-supply = <&vio_reg>;
35 <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
36 nvidia,ddc-i2c-bus = <&hdmiddc>;
41 pinctrl-names = "default";
42 pinctrl-0 = <&state_default>;
44 state_default: pinmux {
48 nvidia,function = "rsvd4";
49 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
50 nvidia,tristate = <TEGRA_PIN_DISABLE>;
55 nvidia,pins = "uart3_rts_n_pc0";
56 nvidia,function = "pwm0";
57 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
58 nvidia,tristate = <TEGRA_PIN_DISABLE>;
60 /* BKL1_PWM_EN#, disable TPS65911 PMIC PWM backlight */
62 nvidia,pins = "uart3_cts_n_pa1";
63 nvidia,function = "rsvd1";
64 nvidia,pull = <TEGRA_PIN_PULL_UP>;
65 nvidia,tristate = <TEGRA_PIN_DISABLE>;
68 /* Apalis CAN1 on SPI6 */
70 nvidia,pins = "spi2_cs0_n_px3",
74 nvidia,function = "spi6";
75 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
76 nvidia,tristate = <TEGRA_PIN_DISABLE>;
80 nvidia,pins = "spi2_cs1_n_pw2";
81 nvidia,function = "spi3";
82 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
83 nvidia,tristate = <TEGRA_PIN_DISABLE>;
84 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
87 /* Apalis CAN2 on SPI4 */
89 nvidia,pins = "gmi_a16_pj7",
93 nvidia,function = "spi4";
94 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
95 nvidia,tristate = <TEGRA_PIN_DISABLE>;
99 nvidia,pins = "spi2_cs2_n_pw3";
100 nvidia,function = "spi3";
101 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
102 nvidia,tristate = <TEGRA_PIN_DISABLE>;
103 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
108 nvidia,pins = "cam_i2c_scl_pbb1",
110 nvidia,function = "i2c3";
111 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
112 nvidia,tristate = <TEGRA_PIN_DISABLE>;
113 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
114 nvidia,lock = <TEGRA_PIN_DISABLE>;
115 nvidia,open-drain = <TEGRA_PIN_ENABLE>;
120 nvidia,pins = "sdmmc3_clk_pa6",
122 nvidia,function = "sdmmc3";
123 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
124 nvidia,tristate = <TEGRA_PIN_DISABLE>;
127 nvidia,pins = "sdmmc3_dat0_pb7",
135 nvidia,function = "sdmmc3";
136 nvidia,pull = <TEGRA_PIN_PULL_UP>;
137 nvidia,tristate = <TEGRA_PIN_DISABLE>;
139 /* Apalis MMC1_CD# */
142 nvidia,function = "rsvd2";
143 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
144 nvidia,tristate = <TEGRA_PIN_DISABLE>;
145 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
150 nvidia,pins = "gpio_pu6";
151 nvidia,function = "pwm3";
152 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
153 nvidia,tristate = <TEGRA_PIN_DISABLE>;
158 nvidia,pins = "gpio_pu5";
159 nvidia,function = "pwm2";
160 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
161 nvidia,tristate = <TEGRA_PIN_DISABLE>;
166 nvidia,pins = "gpio_pu4";
167 nvidia,function = "pwm1";
168 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
169 nvidia,tristate = <TEGRA_PIN_DISABLE>;
174 nvidia,pins = "gpio_pu3";
175 nvidia,function = "pwm0";
176 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
177 nvidia,tristate = <TEGRA_PIN_DISABLE>;
180 /* Apalis RESET_MOCI# */
182 nvidia,pins = "gmi_rst_n_pi4";
183 nvidia,function = "gmi";
184 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
185 nvidia,tristate = <TEGRA_PIN_DISABLE>;
190 nvidia,pins = "sdmmc1_clk_pz0";
191 nvidia,function = "sdmmc1";
192 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
193 nvidia,tristate = <TEGRA_PIN_DISABLE>;
196 nvidia,pins = "sdmmc1_cmd_pz1",
201 nvidia,function = "sdmmc1";
202 nvidia,pull = <TEGRA_PIN_PULL_UP>;
203 nvidia,tristate = <TEGRA_PIN_DISABLE>;
207 nvidia,pins = "clk2_req_pcc5";
208 nvidia,function = "rsvd2";
209 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
210 nvidia,tristate = <TEGRA_PIN_DISABLE>;
211 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
216 nvidia,pins = "spi1_sck_px5",
220 nvidia,function = "spi1";
221 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
222 nvidia,tristate = <TEGRA_PIN_DISABLE>;
227 nvidia,pins = "lcd_sck_pz4",
231 nvidia,function = "spi5";
232 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
233 nvidia,tristate = <TEGRA_PIN_DISABLE>;
238 nvidia,pins = "ulpi_data0_po1",
246 nvidia,function = "uarta";
247 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
248 nvidia,tristate = <TEGRA_PIN_DISABLE>;
253 nvidia,pins = "ulpi_clk_py0",
257 nvidia,function = "uartd";
258 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
259 nvidia,tristate = <TEGRA_PIN_DISABLE>;
264 nvidia,pins = "uart2_rxd_pc3",
266 nvidia,function = "uartb";
267 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
268 nvidia,tristate = <TEGRA_PIN_DISABLE>;
273 nvidia,pins = "uart3_rxd_pw7",
275 nvidia,function = "uartc";
276 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
277 nvidia,tristate = <TEGRA_PIN_DISABLE>;
280 /* Apalis USBO1_EN */
282 nvidia,pins = "gen2_i2c_scl_pt5";
283 nvidia,function = "rsvd4";
284 nvidia,open-drain = <TEGRA_PIN_DISABLE>;
285 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
286 nvidia,tristate = <TEGRA_PIN_DISABLE>;
289 /* Apalis USBO1_OC# */
291 nvidia,pins = "gen2_i2c_sda_pt6";
292 nvidia,function = "rsvd4";
293 nvidia,open-drain = <TEGRA_PIN_DISABLE>;
294 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
295 nvidia,tristate = <TEGRA_PIN_DISABLE>;
296 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
299 /* Apalis WAKE1_MICO */
302 nvidia,function = "rsvd1";
303 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
304 nvidia,tristate = <TEGRA_PIN_DISABLE>;
305 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
308 /* eMMC (On-module) */
310 nvidia,pins = "sdmmc4_clk_pcc4",
312 nvidia,function = "sdmmc4";
313 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
314 nvidia,tristate = <TEGRA_PIN_DISABLE>;
317 nvidia,pins = "sdmmc4_dat0_paa0",
325 nvidia,function = "sdmmc4";
326 nvidia,pull = <TEGRA_PIN_PULL_UP>;
327 nvidia,tristate = <TEGRA_PIN_DISABLE>;
330 /* LVDS Transceiver Configuration */
332 nvidia,pins = "pbb0",
336 nvidia,function = "rsvd2";
337 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
338 nvidia,tristate = <TEGRA_PIN_DISABLE>;
339 nvidia,enable-input = <TEGRA_PIN_DISABLE>;
340 nvidia,lock = <TEGRA_PIN_DISABLE>;
343 nvidia,pins = "pbb3",
347 nvidia,function = "displayb";
348 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
349 nvidia,tristate = <TEGRA_PIN_DISABLE>;
350 nvidia,enable-input = <TEGRA_PIN_DISABLE>;
351 nvidia,lock = <TEGRA_PIN_DISABLE>;
354 /* Power I2C (On-module) */
356 nvidia,pins = "pwr_i2c_scl_pz6",
358 nvidia,function = "i2cpwr";
359 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
360 nvidia,tristate = <TEGRA_PIN_DISABLE>;
361 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
362 nvidia,lock = <TEGRA_PIN_DISABLE>;
363 nvidia,open-drain = <TEGRA_PIN_ENABLE>;
367 * THERMD_ALERT#, unlatched I2C address pin of LM95245
368 * temperature sensor therefore requires disabling for
372 nvidia,pins = "lcd_dc1_pd2";
373 nvidia,function = "rsvd3";
374 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
375 nvidia,tristate = <TEGRA_PIN_DISABLE>;
376 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
382 nvidia,function = "rsvd1";
383 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
384 nvidia,tristate = <TEGRA_PIN_DISABLE>;
385 nvidia,enable-input = <TEGRA_PIN_ENABLE>;
390 hdmiddc: i2c@7000c700 {
391 clock-frequency = <100000>;
395 * PWR_I2C: power I2C to audio codec, PMIC, temperature sensor and
396 * touch screen controller
400 clock-frequency = <100000>;
403 compatible = "ti,tps65911";
406 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
407 #interrupt-cells = <2>;
408 interrupt-controller;
410 ti,system-power-controller;
415 vcc1-supply = <&sys_3v3_reg>;
416 vcc2-supply = <&sys_3v3_reg>;
417 vcc3-supply = <&vio_reg>;
418 vcc4-supply = <&sys_3v3_reg>;
419 vcc5-supply = <&sys_3v3_reg>;
420 vcc6-supply = <&vio_reg>;
421 vcc7-supply = <&sys_5v0_reg>;
422 vccio-supply = <&sys_3v3_reg>;
425 /* SW1: +V1.35_VDDIO_DDR */
427 regulator-name = "vddio_ddr_1v35";
428 regulator-min-microvolt = <1350000>;
429 regulator-max-microvolt = <1350000>;
436 "vdd_pexa,vdd_pexb,vdd_sata";
437 regulator-min-microvolt = <1050000>;
438 regulator-max-microvolt = <1050000>;
441 /* SW CTRL: +V1.0_VDD_CPU */
442 vddctrl_reg: vddctrl {
443 regulator-name = "vdd_cpu,vdd_sys";
444 regulator-min-microvolt = <1150000>;
445 regulator-max-microvolt = <1150000>;
451 regulator-name = "vdd_1v8_gen";
452 regulator-min-microvolt = <1800000>;
453 regulator-max-microvolt = <1800000>;
460 * EN_+V3.3 switching via FET:
461 * +V3.3_AUDIO_AVDD_S, +V3.3 and +V1.8_VDD_LAN
462 * see also v3_3 fixed supply
465 regulator-name = "en_3v3";
466 regulator-min-microvolt = <3300000>;
467 regulator-max-microvolt = <3300000>;
474 "avdd_dsi_csi,pwrdet_mipi";
475 regulator-min-microvolt = <1200000>;
476 regulator-max-microvolt = <1200000>;
481 regulator-name = "vdd_rtc";
482 regulator-min-microvolt = <1200000>;
483 regulator-max-microvolt = <1200000>;
489 * only required for analog RGB
492 regulator-name = "avdd_vdac";
493 regulator-min-microvolt = <2800000>;
494 regulator-max-microvolt = <2800000>;
499 * +V1.05_AVDD_PLLE: avdd_plle should be 1.05V
500 * but LDO6 can't set voltage in 50mV
504 regulator-name = "avdd_plle";
505 regulator-min-microvolt = <1100000>;
506 regulator-max-microvolt = <1100000>;
511 regulator-name = "avdd_pll";
512 regulator-min-microvolt = <1200000>;
513 regulator-max-microvolt = <1200000>;
517 /* +V1.0_VDD_DDR_HS */
519 regulator-name = "vdd_ddr_hs";
520 regulator-min-microvolt = <1000000>;
521 regulator-max-microvolt = <1000000>;
527 /* STMPE811 touch screen controller */
529 compatible = "st,stmpe811";
530 #address-cells = <1>;
533 interrupts = <TEGRA_GPIO(V, 0) IRQ_TYPE_LEVEL_LOW>;
534 interrupt-parent = <&gpio>;
535 interrupt-controller;
541 compatible = "st,stmpe-ts";
543 /* 3.25 MHz ADC clock speed */
545 /* 8 sample average control */
547 /* 7 length fractional part in z */
550 * 50 mA typical 80 mA max touchscreen drivers
551 * current limit value
556 /* internal ADC reference */
558 /* ADC converstion time: 80 clocks */
559 st,sample-time = <4>;
560 /* 1 ms panel driver settling time */
562 /* 5 ms touch detect interrupt delay */
563 st,touch-det-delay = <5>;
568 * LM95245 temperature sensor
569 * Note: OVERT_N directly connected to PMIC PWRDN
572 compatible = "national,lm95245";
576 /* SW: +V1.2_VDD_CORE */
578 compatible = "ti,tps62362";
581 regulator-name = "tps62362-vout";
582 regulator-min-microvolt = <900000>;
583 regulator-max-microvolt = <1400000>;
587 /* VSEL1: EN_CORE_DVFS_N low for DVFS */
595 spi-max-frequency = <10000000>;
598 compatible = "microchip,mcp2515";
601 interrupt-parent = <&gpio>;
602 interrupts = <TEGRA_GPIO(W, 3) GPIO_ACTIVE_LOW>;
603 spi-max-frequency = <10000000>;
610 spi-max-frequency = <10000000>;
613 compatible = "microchip,mcp2515";
616 interrupt-parent = <&gpio>;
617 interrupts = <TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
618 spi-max-frequency = <10000000>;
623 nvidia,invert-interrupt;
624 nvidia,suspend-mode = <1>;
625 nvidia,cpu-pwr-good-time = <5000>;
626 nvidia,cpu-pwr-off-time = <5000>;
627 nvidia,core-pwr-good-time = <3845 3845>;
628 nvidia,core-pwr-off-time = <0>;
629 nvidia,core-power-req-active-high;
630 nvidia,sys-clock-req-active-high;
640 compatible = "simple-bus";
641 #address-cells = <1>;
645 compatible = "fixed-clock";
648 clock-frequency = <32768>;
651 compatible = "fixed-clock";
654 clock-frequency = <16000000>;
655 clock-output-names = "clk16m";
660 compatible = "simple-bus";
661 #address-cells = <1>;
664 sys_3v3_reg: regulator@100 {
665 compatible = "regulator-fixed";
667 regulator-name = "3v3";
668 regulator-min-microvolt = <3300000>;
669 regulator-max-microvolt = <3300000>;