summaryrefslogtreecommitdiff
path: root/arch/arm/boot/dts/tegra30-asus-nexus7-tilapia.dtsi
blob: e3da89f1941a24daafc7dae450d22857f2342e87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
// SPDX-License-Identifier: GPL-2.0

#include "tegra30-asus-nexus7-grouper-common.dtsi"
#include "tegra30-asus-nexus7-tilapia-memory-timings.dtsi"

/ {
	compatible = "asus,tilapia", "asus,grouper", "nvidia,tegra30";

	display-panel {
		enable-gpios = <&gpio TEGRA_GPIO(V, 6) GPIO_ACTIVE_HIGH>;

		panel-timing {
			clock-frequency = <81750000>;
			hactive = <800>;
			vactive = <1280>;
			hfront-porch = <64>;
			hback-porch = <128>;
			hsync-len = <64>;
			vsync-len = <1>;
			vfront-porch = <5>;
			vback-porch = <2>;
		};
	};

	gpio@6000d000 {
		init-mode-3g {
			gpio-hog;
			gpios =	<TEGRA_GPIO(D, 2) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(C, 6) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(W, 3) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(P, 1) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(X, 5) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(U, 5) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(X, 0) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(EE, 1) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(Y, 2) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(Y, 3) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(R, 7) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(U, 4) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(U, 3) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(N, 1) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(N, 2) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(N, 0) GPIO_ACTIVE_HIGH>,
				<TEGRA_GPIO(N, 3) GPIO_ACTIVE_HIGH>;
			output-low;
		};
	};

	pinmux@70000868 {
		state_default: pinmux {
			lcd_dc1_pd2 {
				nvidia,pins = "lcd_dc1_pd2";
				nvidia,function = "displaya";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			};
			lcd_pwr2_pc6 {
				nvidia,pins = "lcd_pwr2_pc6";
				nvidia,function = "displaya";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			};
			spi2_cs2_n_pw3 {
				nvidia,pins = "spi2_cs2_n_pw3";
				nvidia,function = "spi2";
				nvidia,pull = <TEGRA_PIN_PULL_UP>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};
			dap3_din_pp1 {
				nvidia,pins = "dap3_din_pp1";
				nvidia,function = "i2s2";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			};
			spi1_sck_px5 {
				nvidia,pins = "spi1_sck_px5";
				nvidia,function = "spi1";
				nvidia,pull = <TEGRA_PIN_PULL_UP>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};
			pu5 {
				nvidia,pins = "pu5";
				nvidia,function = "pwm2";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};
			spi1_miso_px7 {
				nvidia,pins = "spi1_miso_px7";
				nvidia,function = "spi1";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			};
			spi2_mosi_px0 {
				nvidia,pins = "spi2_mosi_px0";
				nvidia,function = "spi2";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			};
			clk3_req_pee1 {
				nvidia,pins = "clk3_req_pee1";
				nvidia,function = "dev3";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};
			ulpi_nxt_py2 {
				nvidia,pins = "ulpi_nxt_py2";
				nvidia,function = "uartd";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			};
			ulpi_stp_py3 {
				nvidia,pins = "ulpi_stp_py3";
				nvidia,function = "uartd";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};
			kb_row7_pr7 {
				nvidia,pins = "kb_row7_pr7";
				nvidia,function = "kbc";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			};
			pu4 {
				nvidia,pins = "pu4";
				nvidia,function = "pwm1";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			};
			pu3 {
				nvidia,pins = "pu3";
				nvidia,function = "rsvd4";
				nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			};
			kb_row15_ps7 {
				nvidia,pins = "kb_row15_ps7";
				nvidia,function = "kbc";
				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};
			dap3_sclk_pp3 {
				nvidia,pins = "dap3_sclk_pp3";
				nvidia,function = "i2s2";
				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			};
			kb_row3_pr3 {
				nvidia,pins = "kb_row3_pr3",
						"kb_row13_ps5";
				nvidia,function = "kbc";
				nvidia,pull = <TEGRA_PIN_PULL_UP>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};
			kb_row13_ps5 {
				nvidia,pins = "kb_row13_ps5";
				nvidia,function = "kbc";
				nvidia,pull = <TEGRA_PIN_PULL_UP>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};
			gmi_wp_n_pc7 {
				nvidia,pins = "gmi_wp_n_pc7",
						"gmi_wait_pi7",
						"gmi_cs4_n_pk2",
						"gmi_cs3_n_pk4";
				nvidia,function = "rsvd1";
				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
				nvidia,tristate = <TEGRA_PIN_ENABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};
			gmi_cs6_n_pi3 {
				nvidia,pins = "gmi_cs6_n_pi3";
				nvidia,function = "gmi";
				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
				nvidia,tristate = <TEGRA_PIN_ENABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};
		};
	};

	i2c@7000c500 {
		proximity-sensor@28 {
			compatible = "microchip,cap1106";
			reg = <0x28>;

			/*
			 * Binding doesn't support specifying linux,input-type
			 * and this results in unwanted key-presses handled by
			 * applications, hence keep it disabled for now.
			 */
			status = "disabled";

			interrupt-parent = <&gpio>;
			interrupts = <TEGRA_GPIO(R, 3) IRQ_TYPE_LEVEL_HIGH>;

			linux,keycodes = <KEY_RESERVED>,
					 <KEY_RESERVED>,
					 <KEY_RESERVED>,
					 <KEY_RESERVED>,
					 <KEY_RESERVED>,
					 <SW_FRONT_PROXIMITY>;
		};

		nfc@2a {
			compatible = "nxp,pn544-i2c";
			reg = <0x2a>;

			clock-frequency = <100000>;

			interrupt-parent = <&gpio>;
			interrupts = <TEGRA_GPIO(S, 7) IRQ_TYPE_EDGE_RISING>;

			enable-gpios   = <&gpio TEGRA_GPIO(P, 0) GPIO_ACTIVE_HIGH>;
			firmware-gpios = <&gpio TEGRA_GPIO(P, 3) GPIO_ACTIVE_HIGH>;
		};
	};
};