1// SPDX-License-Identifier: GPL-2.0
2
3#include <dt-bindings/input/gpio-keys.h>
4#include <dt-bindings/input/input.h>
5#include <dt-bindings/power/summit,smb347-charger.h>
6#include <dt-bindings/thermal/thermal.h>
7
8#include "tegra30.dtsi"
9#include "tegra30-cpu-opp.dtsi"
10#include "tegra30-cpu-opp-microvolt.dtsi"
11
12/ {
13	aliases {
14		mmc0 = &sdmmc4; /* eMMC */
15		mmc1 = &sdmmc3; /* WiFi */
16
17		rtc0 = &pmic;
18		rtc1 = "/rtc@7000e000";
19
20		serial1 = &uartc; /* Bluetooth */
21		serial2 = &uartb; /* GPS */
22	};
23
24	/*
25	 * The decompressor and also some bootloaders rely on a
26	 * pre-existing /chosen node to be available to insert the
27	 * command line and merge other ATAGS info.
28	 */
29	chosen {};
30
31	memory@80000000 {
32		reg = <0x80000000 0x40000000>;
33	};
34
35	reserved-memory {
36		#address-cells = <1>;
37		#size-cells = <1>;
38		ranges;
39
40		linux,cma@80000000 {
41			compatible = "shared-dma-pool";
42			alloc-ranges = <0x80000000 0x30000000>;
43			size = <0x10000000>; /* 256MiB */
44			linux,cma-default;
45			reusable;
46		};
47
48		ramoops@bfdf0000 {
49			compatible = "ramoops";
50			reg = <0xbfdf0000 0x10000>;	/* 64kB */
51			console-size = <0x8000>;	/* 32kB */
52			record-size = <0x400>;		/*  1kB */
53			ecc-size = <16>;
54		};
55
56		trustzone@bfe00000 {
57			reg = <0xbfe00000 0x200000>;
58			no-map;
59		};
60	};
61
62	host1x@50000000 {
63		dc@54200000 {
64			rgb {
65				status = "okay";
66
67				port@0 {
68					lcd_output: endpoint {
69						remote-endpoint = <&lvds_encoder_input>;
70						bus-width = <24>;
71					};
72				};
73			};
74		};
75	};
76
77	gpio@6000d000 {
78		init-mode-hog {
79			gpio-hog;
80			gpios =	<TEGRA_GPIO(DD, 7) GPIO_ACTIVE_HIGH>,
81				<TEGRA_GPIO(CC, 6) GPIO_ACTIVE_HIGH>,
82				<TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>;
83			output-low;
84		};
85
86		init-low-power-mode-hog {
87			gpio-hog;
88			gpios = <TEGRA_GPIO(I, 6) GPIO_ACTIVE_HIGH>;
89			input;
90		};
91	};
92
93	pinmux@70000868 {
94		pinctrl-names = "default";
95		pinctrl-0 = <&state_default>;
96
97		state_default: pinmux {
98			clk_32k_out_pa0 {
99				nvidia,pins = "clk_32k_out_pa0";
100				nvidia,function = "blink";
101				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
102				nvidia,tristate = <TEGRA_PIN_DISABLE>;
103				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
104			};
105			uart3_cts_n_pa1 {
106				nvidia,pins = "uart3_cts_n_pa1",
107						"uart3_rxd_pw7";
108				nvidia,function = "uartc";
109				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
110				nvidia,tristate = <TEGRA_PIN_DISABLE>;
111				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
112			};
113			dap2_fs_pa2 {
114				nvidia,pins = "dap2_fs_pa2",
115						"dap2_sclk_pa3",
116						"dap2_din_pa4",
117						"dap2_dout_pa5";
118				nvidia,function = "i2s1";
119				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
120				nvidia,tristate = <TEGRA_PIN_DISABLE>;
121				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
122			};
123			sdmmc3_clk_pa6 {
124				nvidia,pins = "sdmmc3_clk_pa6";
125				nvidia,function = "sdmmc3";
126				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
127				nvidia,tristate = <TEGRA_PIN_DISABLE>;
128				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
129			};
130			sdmmc3_cmd_pa7 {
131				nvidia,pins = "sdmmc3_cmd_pa7",
132						"sdmmc3_dat3_pb4",
133						"sdmmc3_dat2_pb5",
134						"sdmmc3_dat1_pb6",
135						"sdmmc3_dat0_pb7",
136						"sdmmc3_dat4_pd1",
137						"sdmmc3_dat6_pd3",
138						"sdmmc3_dat7_pd4";
139				nvidia,function = "sdmmc3";
140				nvidia,pull = <TEGRA_PIN_PULL_UP>;
141				nvidia,tristate = <TEGRA_PIN_DISABLE>;
142				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
143			};
144			gmi_a17_pb0 {
145				nvidia,pins = "gmi_a17_pb0",
146						"gmi_a18_pb1";
147				nvidia,function = "uartd";
148				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
149				nvidia,tristate = <TEGRA_PIN_DISABLE>;
150				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
151			};
152			lcd_pwr0_pb2 {
153				nvidia,pins = "lcd_pwr0_pb2",
154						"lcd_pwr1_pc1",
155						"lcd_m1_pw1";
156				nvidia,function = "displaya";
157				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
158				nvidia,tristate = <TEGRA_PIN_DISABLE>;
159				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
160			};
161			lcd_pclk_pb3 {
162				nvidia,pins = "lcd_pclk_pb3",
163						"lcd_d0_pe0",
164						"lcd_d1_pe1",
165						"lcd_d2_pe2",
166						"lcd_d3_pe3",
167						"lcd_d4_pe4",
168						"lcd_d5_pe5",
169						"lcd_d6_pe6",
170						"lcd_d7_pe7",
171						"lcd_d8_pf0",
172						"lcd_d9_pf1",
173						"lcd_d10_pf2",
174						"lcd_d11_pf3",
175						"lcd_d12_pf4",
176						"lcd_d13_pf5",
177						"lcd_d14_pf6",
178						"lcd_d15_pf7",
179						"lcd_de_pj1",
180						"lcd_hsync_pj3",
181						"lcd_vsync_pj4",
182						"lcd_d16_pm0",
183						"lcd_d17_pm1",
184						"lcd_d18_pm2",
185						"lcd_d19_pm3",
186						"lcd_d20_pm4",
187						"lcd_d21_pm5",
188						"lcd_d22_pm6",
189						"lcd_d23_pm7",
190						"lcd_cs0_n_pn4",
191						"lcd_sdout_pn5",
192						"lcd_dc0_pn6",
193						"lcd_cs1_n_pw0",
194						"lcd_sdin_pz2",
195						"lcd_sck_pz4";
196				nvidia,function = "displaya";
197				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
198				nvidia,tristate = <TEGRA_PIN_DISABLE>;
199				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
200			};
201			uart3_rts_n_pc0 {
202				nvidia,pins = "uart3_rts_n_pc0",
203						"uart3_txd_pw6";
204				nvidia,function = "uartc";
205				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
206				nvidia,tristate = <TEGRA_PIN_DISABLE>;
207				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
208			};
209			uart2_txd_pc2 {
210				nvidia,pins = "uart2_txd_pc2",
211						"uart2_rts_n_pj6";
212				nvidia,function = "uartb";
213				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
214				nvidia,tristate = <TEGRA_PIN_DISABLE>;
215				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
216			};
217			uart2_rxd_pc3 {
218				nvidia,pins = "uart2_rxd_pc3",
219						"uart2_cts_n_pj5";
220				nvidia,function = "uartb";
221				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
222				nvidia,tristate = <TEGRA_PIN_DISABLE>;
223				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
224			};
225			gen1_i2c_scl_pc4 {
226				nvidia,pins = "gen1_i2c_scl_pc4",
227						"gen1_i2c_sda_pc5";
228				nvidia,function = "i2c1";
229				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
230				nvidia,tristate = <TEGRA_PIN_DISABLE>;
231				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
232				nvidia,open-drain = <TEGRA_PIN_ENABLE>;
233			};
234			gmi_wp_n_pc7 {
235				nvidia,pins = "gmi_wp_n_pc7",
236						"gmi_wait_pi7",
237						"gmi_cs4_n_pk2",
238						"gmi_cs3_n_pk4";
239				nvidia,function = "rsvd1";
240				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
241				nvidia,tristate = <TEGRA_PIN_ENABLE>;
242				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
243			};
244			gmi_ad12_ph4 {
245				nvidia,pins = "gmi_ad12_ph4",
246						"gmi_cs0_n_pj0",
247						"gmi_cs1_n_pj2",
248						"gmi_cs2_n_pk3";
249				nvidia,function = "rsvd1";
250				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
251				nvidia,tristate = <TEGRA_PIN_ENABLE>;
252				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
253			};
254			sdmmc3_dat5_pd0 {
255				nvidia,pins = "sdmmc3_dat5_pd0";
256				nvidia,function = "sdmmc3";
257				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
258				nvidia,tristate = <TEGRA_PIN_DISABLE>;
259				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
260			};
261			gmi_ad0_pg0 {
262				nvidia,pins = "gmi_ad0_pg0",
263						"gmi_ad1_pg1",
264						"gmi_ad14_ph6",
265						"pu1";
266				nvidia,function = "rsvd1";
267				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
268				nvidia,tristate = <TEGRA_PIN_DISABLE>;
269				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
270			};
271			gmi_ad2_pg2 {
272				nvidia,pins = "gmi_ad2_pg2",
273						"gmi_ad3_pg3",
274						"gmi_ad6_pg6",
275						"gmi_ad7_pg7";
276				nvidia,function = "rsvd1";
277				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
278				nvidia,tristate = <TEGRA_PIN_DISABLE>;
279				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
280			};
281			gmi_ad4_pg4 {
282				nvidia,pins = "gmi_ad4_pg4",
283						"gmi_ad5_pg5";
284				nvidia,function = "nand";
285				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
286				nvidia,tristate = <TEGRA_PIN_DISABLE>;
287				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
288			};
289			gmi_ad8_ph0 {
290				nvidia,pins = "gmi_ad8_ph0";
291				nvidia,function = "pwm0";
292				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
293				nvidia,tristate = <TEGRA_PIN_DISABLE>;
294				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
295			};
296			gmi_ad9_ph1 {
297				nvidia,pins = "gmi_ad9_ph1";
298				nvidia,function = "rsvd4";
299				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
300				nvidia,tristate = <TEGRA_PIN_DISABLE>;
301				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
302			};
303			gmi_ad10_ph2 {
304				nvidia,pins = "gmi_ad10_ph2";
305				nvidia,function = "pwm2";
306				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
307				nvidia,tristate = <TEGRA_PIN_ENABLE>;
308				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
309			};
310			gmi_ad11_ph3 {
311				nvidia,pins = "gmi_ad11_ph3";
312				nvidia,function = "pwm3";
313				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
314				nvidia,tristate = <TEGRA_PIN_DISABLE>;
315				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
316			};
317			gmi_ad13_ph5 {
318				nvidia,pins = "gmi_ad13_ph5",
319						"gmi_wr_n_pi0",
320						"gmi_oe_n_pi1",
321						"gmi_adv_n_pk0";
322				nvidia,function = "rsvd1";
323				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
324				nvidia,tristate = <TEGRA_PIN_ENABLE>;
325				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
326			};
327			gmi_ad15_ph7 {
328				nvidia,pins = "gmi_ad15_ph7";
329				nvidia,function = "rsvd1";
330				nvidia,pull = <TEGRA_PIN_PULL_UP>;
331				nvidia,tristate = <TEGRA_PIN_DISABLE>;
332				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
333			};
334			gmi_dqs_pi2 {
335				nvidia,pins = "gmi_dqs_pi2",
336						"pu2",
337						"pv1";
338				nvidia,function = "rsvd1";
339				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
340				nvidia,tristate = <TEGRA_PIN_DISABLE>;
341				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
342			};
343			gmi_rst_n_pi4 {
344				nvidia,pins = "gmi_rst_n_pi4";
345				nvidia,function = "nand";
346				nvidia,pull = <TEGRA_PIN_PULL_UP>;
347				nvidia,tristate = <TEGRA_PIN_DISABLE>;
348				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
349			};
350			gmi_iordy_pi5 {
351				nvidia,pins = "gmi_iordy_pi5";
352				nvidia,function = "rsvd1";
353				nvidia,pull = <TEGRA_PIN_PULL_UP>;
354				nvidia,tristate = <TEGRA_PIN_DISABLE>;
355				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
356			};
357			gmi_cs7_n_pi6 {
358				nvidia,pins = "gmi_cs7_n_pi6",
359						"gmi_clk_pk1";
360				nvidia,function = "nand";
361				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
362				nvidia,tristate = <TEGRA_PIN_ENABLE>;
363				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
364			};
365			gmi_a16_pj7 {
366				nvidia,pins = "gmi_a16_pj7",
367						"gmi_a19_pk7";
368				nvidia,function = "uartd";
369				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
370				nvidia,tristate = <TEGRA_PIN_DISABLE>;
371				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
372			};
373			spdif_out_pk5 {
374				nvidia,pins = "spdif_out_pk5";
375				nvidia,function = "spdif";
376				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
377				nvidia,tristate = <TEGRA_PIN_DISABLE>;
378				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
379			};
380			spdif_in_pk6 {
381				nvidia,pins = "spdif_in_pk6";
382				nvidia,function = "spdif";
383				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
384				nvidia,tristate = <TEGRA_PIN_DISABLE>;
385				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
386			};
387			dap1_fs_pn0 {
388				nvidia,pins = "dap1_fs_pn0",
389						"dap1_din_pn1",
390						"dap1_dout_pn2",
391						"dap1_sclk_pn3";
392				nvidia,function = "i2s0";
393				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
394				nvidia,tristate = <TEGRA_PIN_DISABLE>;
395				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
396			};
397			hdmi_int_pn7 {
398				nvidia,pins = "hdmi_int_pn7";
399				nvidia,function = "hdmi";
400				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
401				nvidia,tristate = <TEGRA_PIN_ENABLE>;
402				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
403			};
404			ulpi_data7_po0 {
405				nvidia,pins = "ulpi_data7_po0";
406				nvidia,function = "uarta";
407				nvidia,pull = <TEGRA_PIN_PULL_UP>;
408				nvidia,tristate = <TEGRA_PIN_ENABLE>;
409				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
410			};
411			ulpi_data3_po4 {
412				nvidia,pins = "ulpi_data3_po4";
413				nvidia,function = "ulpi";
414				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
415				nvidia,tristate = <TEGRA_PIN_DISABLE>;
416				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
417			};
418			dap3_fs_pp0 {
419				nvidia,pins = "dap3_fs_pp0";
420				nvidia,function = "i2s2";
421				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
422				nvidia,tristate = <TEGRA_PIN_DISABLE>;
423				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
424			};
425			dap4_fs_pp4 {
426				nvidia,pins = "dap4_fs_pp4",
427						"dap4_din_pp5",
428						"dap4_dout_pp6",
429						"dap4_sclk_pp7";
430				nvidia,function = "i2s3";
431				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
432				nvidia,tristate = <TEGRA_PIN_DISABLE>;
433				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
434			};
435			kb_col0_pq0 {
436				nvidia,pins = "kb_col0_pq0",
437						"kb_col1_pq1",
438						"kb_row1_pr1";
439				nvidia,function = "kbc";
440				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
441				nvidia,tristate = <TEGRA_PIN_ENABLE>;
442				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
443			};
444			kb_col2_pq2 {
445				nvidia,pins = "kb_col2_pq2",
446						"kb_col3_pq3";
447				nvidia,function = "rsvd4";
448				nvidia,pull = <TEGRA_PIN_PULL_UP>;
449				nvidia,tristate = <TEGRA_PIN_ENABLE>;
450				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
451			};
452			kb_col4_pq4 {
453				nvidia,pins = "kb_col4_pq4",
454						"kb_col5_pq5",
455						"kb_col7_pq7",
456						"kb_row2_pr2",
457						"kb_row4_pr4",
458						"kb_row5_pr5",
459						"kb_row14_ps6";
460				nvidia,function = "kbc";
461				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
462				nvidia,tristate = <TEGRA_PIN_ENABLE>;
463				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
464			};
465			kb_row0_pr0 {
466				nvidia,pins = "kb_row0_pr0";
467				nvidia,function = "rsvd4";
468				nvidia,pull = <TEGRA_PIN_PULL_UP>;
469				nvidia,tristate = <TEGRA_PIN_DISABLE>;
470				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
471			};
472			kb_row6_pr6 {
473				nvidia,pins = "kb_row6_pr6",
474						"kb_row8_ps0",
475						"kb_row9_ps1",
476						"kb_row10_ps2";
477				nvidia,function = "kbc";
478				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
479				nvidia,tristate = <TEGRA_PIN_DISABLE>;
480				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
481			};
482			kb_row11_ps3 {
483				nvidia,pins = "kb_row11_ps3",
484						"kb_row12_ps4";
485				nvidia,function = "kbc";
486				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
487				nvidia,tristate = <TEGRA_PIN_DISABLE>;
488				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
489			};
490			gen2_i2c_scl_pt5 {
491				nvidia,pins = "gen2_i2c_scl_pt5",
492						"gen2_i2c_sda_pt6";
493				nvidia,function = "i2c2";
494				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
495				nvidia,tristate = <TEGRA_PIN_DISABLE>;
496				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
497				nvidia,open-drain = <TEGRA_PIN_ENABLE>;
498			};
499			sdmmc4_cmd_pt7 {
500				nvidia,pins = "sdmmc4_cmd_pt7",
501						"sdmmc4_dat0_paa0",
502						"sdmmc4_dat1_paa1",
503						"sdmmc4_dat2_paa2",
504						"sdmmc4_dat3_paa3",
505						"sdmmc4_dat4_paa4",
506						"sdmmc4_dat5_paa5",
507						"sdmmc4_dat6_paa6",
508						"sdmmc4_dat7_paa7";
509				nvidia,function = "sdmmc4";
510				nvidia,pull = <TEGRA_PIN_PULL_UP>;
511				nvidia,tristate = <TEGRA_PIN_DISABLE>;
512				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
513			};
514			pu0 {
515				nvidia,pins = "pu0",
516						"pu6";
517				nvidia,function = "rsvd4";
518				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
519				nvidia,tristate = <TEGRA_PIN_DISABLE>;
520				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
521			};
522			jtag_rtck_pu7 {
523				nvidia,pins = "jtag_rtck_pu7";
524				nvidia,function = "rtck";
525				nvidia,pull = <TEGRA_PIN_PULL_UP>;
526				nvidia,tristate = <TEGRA_PIN_DISABLE>;
527				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
528			};
529			pv0 {
530				nvidia,pins = "pv0";
531				nvidia,function = "rsvd1";
532				nvidia,pull = <TEGRA_PIN_PULL_UP>;
533				nvidia,tristate = <TEGRA_PIN_ENABLE>;
534				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
535			};
536			ddc_scl_pv4 {
537				nvidia,pins = "ddc_scl_pv4",
538						"ddc_sda_pv5";
539				nvidia,function = "i2c4";
540				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
541				nvidia,tristate = <TEGRA_PIN_DISABLE>;
542				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
543			};
544			crt_hsync_pv6 {
545				nvidia,pins = "crt_hsync_pv6",
546						"crt_vsync_pv7";
547				nvidia,function = "crt";
548				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
549				nvidia,tristate = <TEGRA_PIN_DISABLE>;
550				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
551			};
552			spi2_cs1_n_pw2 {
553				nvidia,pins = "spi2_cs1_n_pw2",
554						"spi2_miso_px1",
555						"spi2_sck_px2";
556				nvidia,function = "spi2";
557				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
558				nvidia,tristate = <TEGRA_PIN_DISABLE>;
559				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
560			};
561			clk1_out_pw4 {
562				nvidia,pins = "clk1_out_pw4";
563				nvidia,function = "extperiph1";
564				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
565				nvidia,tristate = <TEGRA_PIN_DISABLE>;
566				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
567			};
568			clk2_out_pw5 {
569				nvidia,pins = "clk2_out_pw5";
570				nvidia,function = "extperiph2";
571				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
572				nvidia,tristate = <TEGRA_PIN_DISABLE>;
573				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
574			};
575			spi2_cs0_n_px3 {
576				nvidia,pins = "spi2_cs0_n_px3";
577				nvidia,function = "spi6";
578				nvidia,pull = <TEGRA_PIN_PULL_UP>;
579				nvidia,tristate = <TEGRA_PIN_DISABLE>;
580				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
581			};
582			spi1_mosi_px4 {
583				nvidia,pins = "spi1_mosi_px4",
584						"spi1_cs0_n_px6";
585				nvidia,function = "spi1";
586				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
587				nvidia,tristate = <TEGRA_PIN_DISABLE>;
588				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
589			};
590			ulpi_clk_py0 {
591				nvidia,pins = "ulpi_clk_py0",
592						"ulpi_dir_py1";
593				nvidia,function = "ulpi";
594				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
595				nvidia,tristate = <TEGRA_PIN_ENABLE>;
596				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
597			};
598			sdmmc1_dat3_py4 {
599				nvidia,pins = "sdmmc1_dat3_py4",
600						"sdmmc1_dat2_py5",
601						"sdmmc1_dat1_py6",
602						"sdmmc1_dat0_py7",
603						"sdmmc1_cmd_pz1";
604				nvidia,function = "sdmmc1";
605				nvidia,pull = <TEGRA_PIN_PULL_UP>;
606				nvidia,tristate = <TEGRA_PIN_DISABLE>;
607				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
608			};
609			sdmmc1_clk_pz0 {
610				nvidia,pins = "sdmmc1_clk_pz0";
611				nvidia,function = "sdmmc1";
612				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
613				nvidia,tristate = <TEGRA_PIN_DISABLE>;
614				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
615			};
616			lcd_wr_n_pz3 {
617				nvidia,pins = "lcd_wr_n_pz3";
618				nvidia,function = "displaya";
619				nvidia,pull = <TEGRA_PIN_PULL_UP>;
620				nvidia,tristate = <TEGRA_PIN_DISABLE>;
621				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
622			};
623			sys_clk_req_pz5 {
624				nvidia,pins = "sys_clk_req_pz5";
625				nvidia,function = "sysclk";
626				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
627				nvidia,tristate = <TEGRA_PIN_DISABLE>;
628				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
629			};
630			pwr_i2c_scl_pz6 {
631				nvidia,pins = "pwr_i2c_scl_pz6",
632						"pwr_i2c_sda_pz7";
633				nvidia,function = "i2cpwr";
634				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
635				nvidia,tristate = <TEGRA_PIN_DISABLE>;
636				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
637				nvidia,open-drain = <TEGRA_PIN_ENABLE>;
638			};
639			pbb0 {
640				nvidia,pins = "pbb0",
641						"pcc1";
642				nvidia,function = "rsvd2";
643				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
644				nvidia,tristate = <TEGRA_PIN_DISABLE>;
645				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
646			};
647			cam_i2c_scl_pbb1 {
648				nvidia,pins = "cam_i2c_scl_pbb1",
649						"cam_i2c_sda_pbb2";
650				nvidia,function = "i2c3";
651				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
652				nvidia,tristate = <TEGRA_PIN_DISABLE>;
653				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
654				nvidia,open-drain = <TEGRA_PIN_ENABLE>;
655			};
656			pbb3 {
657				nvidia,pins = "pbb3";
658				nvidia,function = "vgp3";
659				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
660				nvidia,tristate = <TEGRA_PIN_DISABLE>;
661				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
662			};
663			pbb4 {
664				nvidia,pins = "pbb4";
665				nvidia,function = "vgp4";
666				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
667				nvidia,tristate = <TEGRA_PIN_DISABLE>;
668				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
669			};
670			pbb5 {
671				nvidia,pins = "pbb5";
672				nvidia,function = "vgp5";
673				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
674				nvidia,tristate = <TEGRA_PIN_DISABLE>;
675				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
676			};
677			pbb6 {
678				nvidia,pins = "pbb6";
679				nvidia,function = "vgp6";
680				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
681				nvidia,tristate = <TEGRA_PIN_DISABLE>;
682				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
683			};
684			pbb7 {
685				nvidia,pins = "pbb7",
686						"pcc2";
687				nvidia,function = "i2s4";
688				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
689				nvidia,tristate = <TEGRA_PIN_DISABLE>;
690				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
691			};
692			cam_mclk_pcc0 {
693				nvidia,pins = "cam_mclk_pcc0";
694				nvidia,function = "vi_alt3";
695				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
696				nvidia,tristate = <TEGRA_PIN_DISABLE>;
697				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
698			};
699			sdmmc4_rst_n_pcc3 {
700				nvidia,pins = "sdmmc4_rst_n_pcc3";
701				nvidia,function = "rsvd2";
702				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
703				nvidia,tristate = <TEGRA_PIN_DISABLE>;
704				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
705			};
706			sdmmc4_clk_pcc4 {
707				nvidia,pins = "sdmmc4_clk_pcc4";
708				nvidia,function = "sdmmc4";
709				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
710				nvidia,tristate = <TEGRA_PIN_DISABLE>;
711				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
712			};
713			clk2_req_pcc5 {
714				nvidia,pins = "clk2_req_pcc5";
715				nvidia,function = "dap";
716				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
717				nvidia,tristate = <TEGRA_PIN_DISABLE>;
718				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
719			};
720			pex_l2_rst_n_pcc6 {
721				nvidia,pins = "pex_l2_rst_n_pcc6",
722						"pex_l2_clkreq_n_pcc7";
723				nvidia,function = "pcie";
724				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
725				nvidia,tristate = <TEGRA_PIN_DISABLE>;
726				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
727			};
728			pex_wake_n_pdd3 {
729				nvidia,pins = "pex_wake_n_pdd3",
730						"pex_l2_prsnt_n_pdd7";
731				nvidia,function = "pcie";
732				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
733				nvidia,tristate = <TEGRA_PIN_DISABLE>;
734				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
735			};
736			clk3_out_pee0 {
737				nvidia,pins = "clk3_out_pee0";
738				nvidia,function = "extperiph3";
739				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
740				nvidia,tristate = <TEGRA_PIN_DISABLE>;
741				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
742			};
743			clk1_req_pee2 {
744				nvidia,pins = "clk1_req_pee2";
745				nvidia,function = "dap";
746				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
747				nvidia,tristate = <TEGRA_PIN_ENABLE>;
748				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
749			};
750			hdmi_cec_pee3 {
751				nvidia,pins = "hdmi_cec_pee3";
752				nvidia,function = "cec";
753				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
754				nvidia,tristate = <TEGRA_PIN_DISABLE>;
755				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
756				nvidia,open-drain = <TEGRA_PIN_DISABLE>;
757			};
758			owr {
759				nvidia,pins = "owr";
760				nvidia,function = "owr";
761				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
762				nvidia,tristate = <TEGRA_PIN_DISABLE>;
763				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
764			};
765			drive_dap1 {
766				nvidia,pins = "drive_dap1",
767						"drive_dap2",
768						"drive_dbg",
769						"drive_at5",
770						"drive_gme",
771						"drive_ddc",
772						"drive_ao1",
773						"drive_uart3";
774				nvidia,high-speed-mode = <0>;
775				nvidia,schmitt = <TEGRA_PIN_ENABLE>;
776				nvidia,low-power-mode = <TEGRA_PIN_LP_DRIVE_DIV_1>;
777				nvidia,pull-down-strength = <31>;
778				nvidia,pull-up-strength = <31>;
779				nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>;
780				nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>;
781			};
782			drive_sdio1 {
783				nvidia,pins = "drive_sdio1",
784						"drive_sdio3";
785				nvidia,high-speed-mode = <0>;
786				nvidia,schmitt = <TEGRA_PIN_DISABLE>;
787				nvidia,pull-down-strength = <46>;
788				nvidia,pull-up-strength = <42>;
789				nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FAST>;
790				nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FAST>;
791			};
792			drive_gma {
793				nvidia,pins = "drive_gma",
794						"drive_gmb",
795						"drive_gmc",
796						"drive_gmd";
797				nvidia,pull-down-strength = <9>;
798				nvidia,pull-up-strength = <9>;
799				nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOWEST>;
800				nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOWEST>;
801			};
802		};
803	};
804
805	uartb: serial@70006040 {
806		compatible = "nvidia,tegra30-hsuart";
807		/* GPS BCM4751 */
808	};
809
810	uartc: serial@70006200 {
811		compatible = "nvidia,tegra30-hsuart";
812		status = "okay";
813
814		nvidia,adjust-baud-rates = <0 9600 100>,
815					   <9600 115200 200>,
816					   <1000000 4000000 136>;
817
818		/* Azurewave AW-NH665 BCM4330B1 */
819		bluetooth {
820			compatible = "brcm,bcm4330-bt";
821
822			max-speed = <4000000>;
823
824			clocks = <&tegra_pmc TEGRA_PMC_CLK_BLINK>;
825			clock-names = "txco";
826
827			vbat-supply  = <&vdd_3v3_sys>;
828			vddio-supply = <&vdd_1v8>;
829
830			device-wakeup-gpios = <&gpio TEGRA_GPIO(U, 1) GPIO_ACTIVE_HIGH>;
831			host-wakeup-gpios =   <&gpio TEGRA_GPIO(U, 6) GPIO_ACTIVE_HIGH>;
832			shutdown-gpios =      <&gpio TEGRA_GPIO(U, 0) GPIO_ACTIVE_HIGH>;
833		};
834	};
835
836	pwm: pwm@7000a000 {
837		status = "okay";
838	};
839
840	i2c@7000c400 {
841		clock-frequency = <400000>;
842		status = "okay";
843
844		touchscreen@10 {
845			compatible ="elan,ektf3624";
846			reg = <0x10>;
847
848			interrupt-parent = <&gpio>;
849			interrupts = <TEGRA_GPIO(H, 4) IRQ_TYPE_LEVEL_LOW>;
850
851			reset-gpios = <&gpio TEGRA_GPIO(H, 6) GPIO_ACTIVE_LOW>;
852
853			vcc33-supply = <&vcc_3v3_ts>;
854			vccio-supply = <&vcc_3v3_ts>;
855
856			touchscreen-size-x = <2112>;
857			touchscreen-size-y = <1280>;
858			touchscreen-swapped-x-y;
859			touchscreen-inverted-x;
860		};
861	};
862
863	i2c@7000c500 {
864		clock-frequency = <100000>;
865		status = "okay";
866
867		compass@e {
868			compatible = "asahi-kasei,ak8974";
869			reg = <0x0e>;
870
871			interrupt-parent = <&gpio>;
872			interrupts = <TEGRA_GPIO(W, 0) IRQ_TYPE_EDGE_RISING>;
873
874			avdd-supply = <&vdd_3v3_sys>;
875			dvdd-supply = <&vdd_1v8>;
876
877			mount-matrix =	 "0", "-1",  "0",
878					"-1",  "0",  "0",
879					 "0",  "0", "-1";
880		};
881
882		light-sensor@1c {
883			compatible = "dynaimage,al3010";
884			reg = <0x1c>;
885
886			interrupt-parent = <&gpio>;
887			interrupts = <TEGRA_GPIO(Z, 2) IRQ_TYPE_LEVEL_HIGH>;
888
889			vdd-supply = <&vdd_3v3_sys>;
890		};
891
892		accelerometer@68 {
893			compatible = "invensense,mpu6050";
894			reg = <0x68>;
895
896			interrupt-parent = <&gpio>;
897			interrupts = <TEGRA_GPIO(X, 1) IRQ_TYPE_EDGE_RISING>;
898
899			vdd-supply   = <&vdd_3v3_sys>;
900			vddio-supply = <&vdd_1v8>;
901
902			mount-matrix =	 "0", "-1",  "0",
903					"-1",  "0",  "0",
904					 "0",  "0", "-1";
905		};
906	};
907
908	i2c@7000d000 {
909		clock-frequency = <100000>;
910		status = "okay";
911
912		rt5640: audio-codec@1c {
913			compatible = "realtek,rt5640";
914			reg = <0x1c>;
915
916			realtek,dmic1-data-pin = <1>;
917		};
918
919		nct72: temperature-sensor@4c {
920			compatible = "onnn,nct1008";
921			reg = <0x4c>;
922			vcc-supply = <&vdd_3v3_sys>;
923			#thermal-sensor-cells = <1>;
924		};
925
926		fuel-gauge@55 {
927			compatible = "ti,bq27541";
928			reg = <0x55>;
929			power-supplies = <&power_supply>;
930			monitored-battery = <&battery_cell>;
931		};
932
933		power_supply: charger@6a {
934			compatible = "summit,smb347";
935			reg = <0x6a>;
936
937			interrupt-parent = <&gpio>;
938			interrupts = <TEGRA_GPIO(V, 1) IRQ_TYPE_EDGE_BOTH>;
939
940			summit,enable-charge-control = <SMB3XX_CHG_ENABLE_PIN_ACTIVE_LOW>;
941			summit,enable-usb-charging;
942
943			monitored-battery = <&battery_cell>;
944		};
945	};
946
947	pmc@7000e400 {
948		status = "okay";
949		nvidia,invert-interrupt;
950		nvidia,suspend-mode = <1>;
951		nvidia,cpu-pwr-good-time = <2000>;
952		nvidia,cpu-pwr-off-time = <200>;
953		nvidia,core-pwr-good-time = <3845 3845>;
954		nvidia,core-pwr-off-time = <0>;
955		nvidia,core-power-req-active-high;
956		nvidia,sys-clock-req-active-high;
957	};
958
959	ahub@70080000 {
960		i2s@70080400 {
961			status = "okay";
962		};
963	};
964
965	brcm_wifi_pwrseq: wifi-pwrseq {
966		compatible = "mmc-pwrseq-simple";
967
968		clocks = <&tegra_pmc TEGRA_PMC_CLK_BLINK>;
969		clock-names = "ext_clock";
970
971		reset-gpios = <&gpio TEGRA_GPIO(D, 4) GPIO_ACTIVE_LOW>;
972		post-power-on-delay-ms = <300>;
973		power-off-delay-us = <300>;
974	};
975
976	sdmmc3: mmc@78000400 {
977		status = "okay";
978
979		#address-cells = <1>;
980		#size-cells = <0>;
981
982		assigned-clocks = <&tegra_car TEGRA30_CLK_SDMMC3>;
983		assigned-clock-parents = <&tegra_car TEGRA30_CLK_PLL_C>;
984		assigned-clock-rates = <50000000>;
985
986		max-frequency = <50000000>;
987		keep-power-in-suspend;
988		bus-width = <4>;
989		non-removable;
990
991		mmc-pwrseq = <&brcm_wifi_pwrseq>;
992		vmmc-supply = <&vdd_3v3_sys>;
993		vqmmc-supply = <&vdd_1v8>;
994
995		/* Azurewave AW-NH665 BCM4330 */
996		wifi@1 {
997			reg = <1>;
998			compatible = "brcm,bcm4329-fmac";
999			interrupt-parent = <&gpio>;
1000			interrupts = <TEGRA_GPIO(O, 4) IRQ_TYPE_LEVEL_HIGH>;
1001			interrupt-names = "host-wake";
1002		};
1003	};
1004
1005	sdmmc4: mmc@78000600 {
1006		status = "okay";
1007		bus-width = <8>;
1008		vmmc-supply = <&vcore_emmc>;
1009		vqmmc-supply = <&vdd_1v8>;
1010		non-removable;
1011	};
1012
1013	usb@7d000000 {
1014		compatible = "nvidia,tegra30-udc";
1015		status = "okay";
1016		dr_mode = "peripheral";
1017	};
1018
1019	usb-phy@7d000000 {
1020		status = "okay";
1021		dr_mode = "peripheral";
1022		nvidia,hssync-start-delay = <0>;
1023		nvidia,xcvr-lsfslew = <2>;
1024		nvidia,xcvr-lsrslew = <2>;
1025	};
1026
1027	backlight: backlight {
1028		compatible = "pwm-backlight";
1029
1030		power-supply = <&vdd_5v0_sys>;
1031		pwms = <&pwm 0 50000>;
1032
1033		brightness-levels = <1 255>;
1034		num-interpolated-steps = <254>;
1035		default-brightness-level = <15>;
1036	};
1037
1038	battery_cell: battery-cell {
1039		compatible = "simple-battery";
1040		constant-charge-current-max-microamp = <1800000>;
1041		operating-range-celsius = <0 45>;
1042	};
1043
1044	/* PMIC has a built-in 32KHz oscillator which is used by PMC */
1045	clk32k_in: clock@0 {
1046		compatible = "fixed-clock";
1047		#clock-cells = <0>;
1048		clock-frequency = <32768>;
1049		clock-output-names = "pmic-oscillator";
1050	};
1051
1052	cpus {
1053		cpu0: cpu@0 {
1054			cpu-supply = <&vdd_cpu>;
1055			operating-points-v2 = <&cpu0_opp_table>;
1056			#cooling-cells = <2>;
1057		};
1058
1059		cpu1: cpu@1 {
1060			cpu-supply = <&vdd_cpu>;
1061			operating-points-v2 = <&cpu0_opp_table>;
1062			#cooling-cells = <2>;
1063		};
1064
1065		cpu2: cpu@2 {
1066			cpu-supply = <&vdd_cpu>;
1067			operating-points-v2 = <&cpu0_opp_table>;
1068			#cooling-cells = <2>;
1069		};
1070
1071		cpu3: cpu@3 {
1072			cpu-supply = <&vdd_cpu>;
1073			operating-points-v2 = <&cpu0_opp_table>;
1074			#cooling-cells = <2>;
1075		};
1076	};
1077
1078	display-panel {
1079		/*
1080		 * Nexus 7 supports two compatible panel models:
1081		 *
1082		 *  1. hydis,hv070wx2-1e0
1083		 *  2. chunghwa,claa070wp03xg
1084		 *
1085		 * We want to use timing which is optimized for Nexus 7,
1086		 * hence we need to customize the timing.
1087		 */
1088		compatible = "panel-lvds";
1089
1090		power-supply = <&vdd_pnl>;
1091		backlight = <&backlight>;
1092
1093		width-mm = <94>;
1094		height-mm = <150>;
1095		rotation = <180>;
1096
1097		data-mapping = "jeida-24";
1098
1099		port {
1100			panel_input: endpoint {
1101				remote-endpoint = <&lvds_encoder_output>;
1102			};
1103		};
1104	};
1105
1106	firmware {
1107		trusted-foundations {
1108			compatible = "tlm,trusted-foundations";
1109			tlm,version-major = <0x0>;
1110			tlm,version-minor = <0x0>;
1111		};
1112	};
1113
1114	gpio-keys {
1115		compatible = "gpio-keys";
1116
1117		hall-sensor {
1118			label = "Lid";
1119			gpios = <&gpio TEGRA_GPIO(S, 6) GPIO_ACTIVE_LOW>;
1120			linux,input-type = <EV_SW>;
1121			linux,code = <SW_LID>;
1122			debounce-interval = <500>;
1123			wakeup-event-action = <EV_ACT_DEASSERTED>;
1124			wakeup-source;
1125		};
1126
1127		power {
1128			label = "Power";
1129			gpios = <&gpio TEGRA_GPIO(V, 0) GPIO_ACTIVE_LOW>;
1130			linux,code = <KEY_POWER>;
1131			debounce-interval = <10>;
1132			wakeup-event-action = <EV_ACT_ASSERTED>;
1133			wakeup-source;
1134		};
1135
1136		volume-up {
1137			label = "Volume Up";
1138			gpios = <&gpio TEGRA_GPIO(Q, 2) GPIO_ACTIVE_LOW>;
1139			linux,code = <KEY_VOLUMEUP>;
1140			debounce-interval = <10>;
1141			wakeup-event-action = <EV_ACT_ASSERTED>;
1142			wakeup-source;
1143		};
1144
1145		volume-down {
1146			label = "Volume Down";
1147			gpios = <&gpio TEGRA_GPIO(Q, 3) GPIO_ACTIVE_LOW>;
1148			linux,code = <KEY_VOLUMEDOWN>;
1149			debounce-interval = <10>;
1150			wakeup-event-action = <EV_ACT_ASSERTED>;
1151			wakeup-source;
1152		};
1153	};
1154
1155	lvds-encoder {
1156		compatible = "ti,sn75lvds83", "lvds-encoder";
1157
1158		powerdown-gpios = <&gpio TEGRA_GPIO(N, 6) GPIO_ACTIVE_LOW>;
1159		power-supply = <&vdd_3v3_sys>;
1160
1161		ports {
1162			#address-cells = <1>;
1163			#size-cells = <0>;
1164
1165			port@0 {
1166				reg = <0>;
1167
1168				lvds_encoder_input: endpoint {
1169					remote-endpoint = <&lcd_output>;
1170				};
1171			};
1172
1173			port@1 {
1174				reg = <1>;
1175
1176				lvds_encoder_output: endpoint {
1177					remote-endpoint = <&panel_input>;
1178				};
1179			};
1180		};
1181	};
1182
1183	vdd_5v0_sys: regulator@0 {
1184		compatible = "regulator-fixed";
1185		regulator-name = "vdd_5v0";
1186		regulator-min-microvolt = <5000000>;
1187		regulator-max-microvolt = <5000000>;
1188		regulator-always-on;
1189		regulator-boot-on;
1190	};
1191
1192	vdd_3v3_sys: regulator@1 {
1193		compatible = "regulator-fixed";
1194		regulator-name = "vdd_3v3";
1195		regulator-min-microvolt = <3300000>;
1196		regulator-max-microvolt = <3300000>;
1197		regulator-always-on;
1198		regulator-boot-on;
1199		vin-supply = <&vdd_5v0_sys>;
1200	};
1201
1202	vdd_pnl: regulator@2 {
1203		compatible = "regulator-fixed";
1204		regulator-name = "vdd_panel";
1205		regulator-min-microvolt = <3300000>;
1206		regulator-max-microvolt = <3300000>;
1207		regulator-enable-ramp-delay = <300000>;
1208		gpio = <&gpio TEGRA_GPIO(W, 1) GPIO_ACTIVE_HIGH>;
1209		enable-active-high;
1210		vin-supply = <&vdd_3v3_sys>;
1211	};
1212
1213	vcc_3v3_ts: regulator@3 {
1214		compatible = "regulator-fixed";
1215		regulator-name = "ldo_s-1167_3v3";
1216		regulator-min-microvolt = <3300000>;
1217		regulator-max-microvolt = <3300000>;
1218		regulator-always-on;
1219		regulator-boot-on;
1220		vin-supply = <&vdd_5v0_sys>;
1221	};
1222
1223	sound {
1224		compatible = "nvidia,tegra-audio-rt5640-grouper",
1225			     "nvidia,tegra-audio-rt5640";
1226		nvidia,model = "ASUS Google Nexus 7 ALC5642";
1227
1228		nvidia,audio-routing =
1229			"Headphones", "HPOR",
1230			"Headphones", "HPOL",
1231			"Speakers", "SPORP",
1232			"Speakers", "SPORN",
1233			"Speakers", "SPOLP",
1234			"Speakers", "SPOLN",
1235			"DMIC1", "Mic Jack";
1236
1237		nvidia,i2s-controller = <&tegra_i2s1>;
1238		nvidia,audio-codec = <&rt5640>;
1239
1240		nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
1241
1242		clocks = <&tegra_car TEGRA30_CLK_PLL_A>,
1243			 <&tegra_car TEGRA30_CLK_PLL_A_OUT0>,
1244			 <&tegra_pmc TEGRA_PMC_CLK_OUT_1>;
1245		clock-names = "pll_a", "pll_a_out0", "mclk";
1246
1247		assigned-clocks = <&tegra_car TEGRA30_CLK_EXTERN1>,
1248				  <&tegra_pmc TEGRA_PMC_CLK_OUT_1>;
1249
1250		assigned-clock-parents = <&tegra_car TEGRA30_CLK_PLL_A_OUT0>,
1251					 <&tegra_car TEGRA30_CLK_EXTERN1>;
1252	};
1253
1254	thermal-zones {
1255		skin-thermal {
1256			polling-delay-passive = <1000>; /* milliseconds */
1257			polling-delay = <0>; /* milliseconds */
1258
1259			thermal-sensors = <&nct72 0>;
1260		};
1261
1262		cpu-thermal {
1263			polling-delay-passive = <1000>; /* milliseconds */
1264			polling-delay = <5000>; /* milliseconds */
1265
1266			thermal-sensors = <&nct72 1>;
1267
1268			trips {
1269				trip0: cpu-alert0 {
1270					/* throttle at 57C until temperature drops to 56.8C */
1271					temperature = <57000>;
1272					hysteresis = <200>;
1273					type = "passive";
1274				};
1275
1276				trip1: cpu-crit {
1277					/* shut down at 60C */
1278					temperature = <60000>;
1279					hysteresis = <2000>;
1280					type = "critical";
1281				};
1282			};
1283
1284			cooling-maps {
1285				map0 {
1286					trip = <&trip0>;
1287					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1288							 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1289							 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1290							 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
1291				};
1292			};
1293		};
1294	};
1295};
1296