162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci
362306a36Sopenharmony_ci#include "tegra30-asus-nexus7-grouper-common.dtsi"
462306a36Sopenharmony_ci#include "tegra30-asus-nexus7-tilapia-memory-timings.dtsi"
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci/ {
762306a36Sopenharmony_ci	compatible = "asus,tilapia", "asus,grouper", "nvidia,tegra30";
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci	gpio@6000d000 {
1062306a36Sopenharmony_ci		init-mode-3g-hog {
1162306a36Sopenharmony_ci			gpio-hog;
1262306a36Sopenharmony_ci			gpios = <TEGRA_GPIO(D, 2) GPIO_ACTIVE_HIGH>,
1362306a36Sopenharmony_ci				<TEGRA_GPIO(C, 6) GPIO_ACTIVE_HIGH>,
1462306a36Sopenharmony_ci				<TEGRA_GPIO(W, 3) GPIO_ACTIVE_HIGH>,
1562306a36Sopenharmony_ci				<TEGRA_GPIO(P, 1) GPIO_ACTIVE_HIGH>,
1662306a36Sopenharmony_ci				<TEGRA_GPIO(X, 5) GPIO_ACTIVE_HIGH>,
1762306a36Sopenharmony_ci				<TEGRA_GPIO(U, 5) GPIO_ACTIVE_HIGH>,
1862306a36Sopenharmony_ci				<TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>,
1962306a36Sopenharmony_ci				<TEGRA_GPIO(X, 0) GPIO_ACTIVE_HIGH>,
2062306a36Sopenharmony_ci				<TEGRA_GPIO(EE, 1) GPIO_ACTIVE_HIGH>,
2162306a36Sopenharmony_ci				<TEGRA_GPIO(Y, 2) GPIO_ACTIVE_HIGH>,
2262306a36Sopenharmony_ci				<TEGRA_GPIO(Y, 3) GPIO_ACTIVE_HIGH>,
2362306a36Sopenharmony_ci				<TEGRA_GPIO(R, 7) GPIO_ACTIVE_HIGH>,
2462306a36Sopenharmony_ci				<TEGRA_GPIO(U, 4) GPIO_ACTIVE_HIGH>,
2562306a36Sopenharmony_ci				<TEGRA_GPIO(U, 3) GPIO_ACTIVE_HIGH>,
2662306a36Sopenharmony_ci				<TEGRA_GPIO(N, 1) GPIO_ACTIVE_HIGH>,
2762306a36Sopenharmony_ci				<TEGRA_GPIO(N, 2) GPIO_ACTIVE_HIGH>,
2862306a36Sopenharmony_ci				<TEGRA_GPIO(N, 0) GPIO_ACTIVE_HIGH>,
2962306a36Sopenharmony_ci				<TEGRA_GPIO(N, 3) GPIO_ACTIVE_HIGH>;
3062306a36Sopenharmony_ci			output-low;
3162306a36Sopenharmony_ci		};
3262306a36Sopenharmony_ci	};
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci	pinmux@70000868 {
3562306a36Sopenharmony_ci		state_default: pinmux {
3662306a36Sopenharmony_ci			lcd_dc1_pd2 {
3762306a36Sopenharmony_ci				nvidia,pins = "lcd_dc1_pd2";
3862306a36Sopenharmony_ci				nvidia,function = "displaya";
3962306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
4062306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
4162306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
4262306a36Sopenharmony_ci			};
4362306a36Sopenharmony_ci			lcd_pwr2_pc6 {
4462306a36Sopenharmony_ci				nvidia,pins = "lcd_pwr2_pc6";
4562306a36Sopenharmony_ci				nvidia,function = "displaya";
4662306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
4762306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
4862306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
4962306a36Sopenharmony_ci			};
5062306a36Sopenharmony_ci			spi2_cs2_n_pw3 {
5162306a36Sopenharmony_ci				nvidia,pins = "spi2_cs2_n_pw3";
5262306a36Sopenharmony_ci				nvidia,function = "spi2";
5362306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_UP>;
5462306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
5562306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
5662306a36Sopenharmony_ci			};
5762306a36Sopenharmony_ci			dap3_din_pp1 {
5862306a36Sopenharmony_ci				nvidia,pins = "dap3_din_pp1";
5962306a36Sopenharmony_ci				nvidia,function = "i2s2";
6062306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
6162306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
6262306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
6362306a36Sopenharmony_ci			};
6462306a36Sopenharmony_ci			spi1_sck_px5 {
6562306a36Sopenharmony_ci				nvidia,pins = "spi1_sck_px5";
6662306a36Sopenharmony_ci				nvidia,function = "spi1";
6762306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_UP>;
6862306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
6962306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
7062306a36Sopenharmony_ci			};
7162306a36Sopenharmony_ci			pu5 {
7262306a36Sopenharmony_ci				nvidia,pins = "pu5";
7362306a36Sopenharmony_ci				nvidia,function = "pwm2";
7462306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
7562306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
7662306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
7762306a36Sopenharmony_ci			};
7862306a36Sopenharmony_ci			spi1_miso_px7 {
7962306a36Sopenharmony_ci				nvidia,pins = "spi1_miso_px7";
8062306a36Sopenharmony_ci				nvidia,function = "spi1";
8162306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
8262306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
8362306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
8462306a36Sopenharmony_ci			};
8562306a36Sopenharmony_ci			spi2_mosi_px0 {
8662306a36Sopenharmony_ci				nvidia,pins = "spi2_mosi_px0";
8762306a36Sopenharmony_ci				nvidia,function = "spi2";
8862306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
8962306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
9062306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
9162306a36Sopenharmony_ci			};
9262306a36Sopenharmony_ci			clk3_req_pee1 {
9362306a36Sopenharmony_ci				nvidia,pins = "clk3_req_pee1";
9462306a36Sopenharmony_ci				nvidia,function = "dev3";
9562306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
9662306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
9762306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
9862306a36Sopenharmony_ci			};
9962306a36Sopenharmony_ci			ulpi_nxt_py2 {
10062306a36Sopenharmony_ci				nvidia,pins = "ulpi_nxt_py2";
10162306a36Sopenharmony_ci				nvidia,function = "uartd";
10262306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
10362306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
10462306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
10562306a36Sopenharmony_ci			};
10662306a36Sopenharmony_ci			ulpi_stp_py3 {
10762306a36Sopenharmony_ci				nvidia,pins = "ulpi_stp_py3";
10862306a36Sopenharmony_ci				nvidia,function = "uartd";
10962306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
11062306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
11162306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
11262306a36Sopenharmony_ci			};
11362306a36Sopenharmony_ci			kb_row7_pr7 {
11462306a36Sopenharmony_ci				nvidia,pins = "kb_row7_pr7";
11562306a36Sopenharmony_ci				nvidia,function = "kbc";
11662306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
11762306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
11862306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
11962306a36Sopenharmony_ci			};
12062306a36Sopenharmony_ci			pu4 {
12162306a36Sopenharmony_ci				nvidia,pins = "pu4";
12262306a36Sopenharmony_ci				nvidia,function = "pwm1";
12362306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
12462306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
12562306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
12662306a36Sopenharmony_ci			};
12762306a36Sopenharmony_ci			pu3 {
12862306a36Sopenharmony_ci				nvidia,pins = "pu3";
12962306a36Sopenharmony_ci				nvidia,function = "rsvd4";
13062306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
13162306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
13262306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
13362306a36Sopenharmony_ci			};
13462306a36Sopenharmony_ci			kb_row15_ps7 {
13562306a36Sopenharmony_ci				nvidia,pins = "kb_row15_ps7";
13662306a36Sopenharmony_ci				nvidia,function = "kbc";
13762306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
13862306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
13962306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
14062306a36Sopenharmony_ci			};
14162306a36Sopenharmony_ci			dap3_sclk_pp3 {
14262306a36Sopenharmony_ci				nvidia,pins = "dap3_sclk_pp3";
14362306a36Sopenharmony_ci				nvidia,function = "i2s2";
14462306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
14562306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
14662306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
14762306a36Sopenharmony_ci			};
14862306a36Sopenharmony_ci			kb_row3_pr3 {
14962306a36Sopenharmony_ci				nvidia,pins = "kb_row3_pr3",
15062306a36Sopenharmony_ci						"kb_row13_ps5";
15162306a36Sopenharmony_ci				nvidia,function = "kbc";
15262306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_UP>;
15362306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
15462306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
15562306a36Sopenharmony_ci			};
15662306a36Sopenharmony_ci			kb_row13_ps5 {
15762306a36Sopenharmony_ci				nvidia,pins = "kb_row13_ps5";
15862306a36Sopenharmony_ci				nvidia,function = "kbc";
15962306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_UP>;
16062306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_DISABLE>;
16162306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
16262306a36Sopenharmony_ci			};
16362306a36Sopenharmony_ci			gmi_wp_n_pc7 {
16462306a36Sopenharmony_ci				nvidia,pins = "gmi_wp_n_pc7",
16562306a36Sopenharmony_ci						"gmi_wait_pi7",
16662306a36Sopenharmony_ci						"gmi_cs4_n_pk2",
16762306a36Sopenharmony_ci						"gmi_cs3_n_pk4";
16862306a36Sopenharmony_ci				nvidia,function = "rsvd1";
16962306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
17062306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_ENABLE>;
17162306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
17262306a36Sopenharmony_ci			};
17362306a36Sopenharmony_ci			gmi_cs6_n_pi3 {
17462306a36Sopenharmony_ci				nvidia,pins = "gmi_cs6_n_pi3";
17562306a36Sopenharmony_ci				nvidia,function = "gmi";
17662306a36Sopenharmony_ci				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
17762306a36Sopenharmony_ci				nvidia,tristate = <TEGRA_PIN_ENABLE>;
17862306a36Sopenharmony_ci				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
17962306a36Sopenharmony_ci			};
18062306a36Sopenharmony_ci		};
18162306a36Sopenharmony_ci	};
18262306a36Sopenharmony_ci
18362306a36Sopenharmony_ci	i2c@7000c500 {
18462306a36Sopenharmony_ci		proximity-sensor@28 {
18562306a36Sopenharmony_ci			compatible = "microchip,cap1106";
18662306a36Sopenharmony_ci			reg = <0x28>;
18762306a36Sopenharmony_ci
18862306a36Sopenharmony_ci			/*
18962306a36Sopenharmony_ci			 * Binding doesn't support specifying linux,input-type
19062306a36Sopenharmony_ci			 * and this results in unwanted key-presses handled by
19162306a36Sopenharmony_ci			 * applications, hence keep it disabled for now.
19262306a36Sopenharmony_ci			 */
19362306a36Sopenharmony_ci			status = "disabled";
19462306a36Sopenharmony_ci
19562306a36Sopenharmony_ci			interrupt-parent = <&gpio>;
19662306a36Sopenharmony_ci			interrupts = <TEGRA_GPIO(R, 3) IRQ_TYPE_LEVEL_HIGH>;
19762306a36Sopenharmony_ci
19862306a36Sopenharmony_ci			linux,keycodes = <KEY_RESERVED>,
19962306a36Sopenharmony_ci					 <KEY_RESERVED>,
20062306a36Sopenharmony_ci					 <KEY_RESERVED>,
20162306a36Sopenharmony_ci					 <KEY_RESERVED>,
20262306a36Sopenharmony_ci					 <KEY_RESERVED>,
20362306a36Sopenharmony_ci					 <SW_FRONT_PROXIMITY>;
20462306a36Sopenharmony_ci		};
20562306a36Sopenharmony_ci
20662306a36Sopenharmony_ci		nfc@2a {
20762306a36Sopenharmony_ci			compatible = "nxp,pn544-i2c";
20862306a36Sopenharmony_ci			reg = <0x2a>;
20962306a36Sopenharmony_ci
21062306a36Sopenharmony_ci			interrupt-parent = <&gpio>;
21162306a36Sopenharmony_ci			interrupts = <TEGRA_GPIO(S, 7) IRQ_TYPE_EDGE_RISING>;
21262306a36Sopenharmony_ci
21362306a36Sopenharmony_ci			enable-gpios   = <&gpio TEGRA_GPIO(P, 0) GPIO_ACTIVE_HIGH>;
21462306a36Sopenharmony_ci			firmware-gpios = <&gpio TEGRA_GPIO(P, 3) GPIO_ACTIVE_HIGH>;
21562306a36Sopenharmony_ci		};
21662306a36Sopenharmony_ci	};
21762306a36Sopenharmony_ci
21862306a36Sopenharmony_ci	display-panel {
21962306a36Sopenharmony_ci		enable-gpios = <&gpio TEGRA_GPIO(V, 6) GPIO_ACTIVE_HIGH>;
22062306a36Sopenharmony_ci
22162306a36Sopenharmony_ci		panel-timing {
22262306a36Sopenharmony_ci			clock-frequency = <81750000>;
22362306a36Sopenharmony_ci			hactive = <800>;
22462306a36Sopenharmony_ci			vactive = <1280>;
22562306a36Sopenharmony_ci			hfront-porch = <64>;
22662306a36Sopenharmony_ci			hback-porch = <128>;
22762306a36Sopenharmony_ci			hsync-len = <64>;
22862306a36Sopenharmony_ci			vsync-len = <1>;
22962306a36Sopenharmony_ci			vfront-porch = <5>;
23062306a36Sopenharmony_ci			vback-porch = <2>;
23162306a36Sopenharmony_ci		};
23262306a36Sopenharmony_ci	};
23362306a36Sopenharmony_ci};
234