blob: 820260348de9b655f051b0d9fc1eb78721e73fd6 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2/*
3 * Copyright 2021 Google LLC
4 */
5
6#include "mt8183-kukui.dtsi"
7/* Must come after mt8183-kukui.dtsi to modify cros_ec */
8#include <arm/cros-ec-keyboard.dtsi>
9
10/ {
11 pp1200_mipibrdg: pp1200-mipibrdg {
12 compatible = "regulator-fixed";
13 regulator-name = "pp1200_mipibrdg";
14 pinctrl-names = "default";
15 pinctrl-0 = <&pp1200_mipibrdg_en>;
16
17 enable-active-high;
18 regulator-boot-on;
19
20 gpio = <&pio 54 GPIO_ACTIVE_HIGH>;
21 };
22
23 pp1800_mipibrdg: pp1800-mipibrdg {
24 compatible = "regulator-fixed";
25 regulator-name = "pp1800_mipibrdg";
26 pinctrl-names = "default";
27 pinctrl-0 = <&pp1800_lcd_en>;
28
29 enable-active-high;
30 regulator-boot-on;
31
32 gpio = <&pio 36 GPIO_ACTIVE_HIGH>;
33 };
34
35 pp3300_panel: pp3300-panel {
36 compatible = "regulator-fixed";
37 regulator-name = "pp3300_panel";
38 regulator-min-microvolt = <3300000>;
39 regulator-max-microvolt = <3300000>;
40 pinctrl-names = "default";
41 pinctrl-0 = <&pp3300_panel_pins>;
42
43 enable-active-high;
44 regulator-boot-on;
45
46 gpio = <&pio 35 GPIO_ACTIVE_HIGH>;
47 };
48
49 vddio_mipibrdg: vddio-mipibrdg {
50 compatible = "regulator-fixed";
51 regulator-name = "vddio_mipibrdg";
52 pinctrl-names = "default";
53 pinctrl-0 = <&vddio_mipibrdg_en>;
54
55 enable-active-high;
56 regulator-boot-on;
57
58 gpio = <&pio 37 GPIO_ACTIVE_HIGH>;
59 };
60
61 volume_buttons: volume-buttons {
62 compatible = "gpio-keys";
63 pinctrl-names = "default";
64 pinctrl-0 = <&volume_button_pins>;
65
66 button-volume-down {
67 label = "Volume Down";
68 linux,code = <KEY_VOLUMEDOWN>;
69 debounce-interval = <100>;
70
71 gpios = <&pio 6 GPIO_ACTIVE_LOW>;
72 };
73
74 button-volume-up {
75 label = "Volume Up";
76 linux,code = <KEY_VOLUMEUP>;
77 debounce-interval = <100>;
78
79 gpios = <&pio 5 GPIO_ACTIVE_LOW>;
80 };
81 };
82};
83
84&cros_ec {
85 cros_ec_pwm: pwm {
86 compatible = "google,cros-ec-pwm";
87 #pwm-cells = <1>;
88 status = "disabled";
89 };
90};
91
92&dsi0 {
93 status = "okay";
94 /delete-property/#size-cells;
95 /delete-property/#address-cells;
96 /delete-node/panel@0;
97 ports {
98 port {
99 dsi_out: endpoint {
100 remote-endpoint = <&anx7625_in>;
101 };
102 };
103 };
104};
105
106&i2c0 {
107 status = "okay";
108
109 touchscreen: touchscreen@10 {
110 compatible = "elan,ekth3500";
111 reg = <0x10>;
112
113 pinctrl-names = "default";
114 pinctrl-0 = <&touchscreen_pins>;
115
116 interrupts-extended = <&pio 155 IRQ_TYPE_LEVEL_LOW>;
117
118 reset-gpios = <&pio 156 GPIO_ACTIVE_LOW>;
119 };
120};
121
122&i2c2 {
123 pinctrl-names = "default";
124 pinctrl-0 = <&i2c2_pins>;
125 status = "okay";
126 clock-frequency = <400000>;
127
128 trackpad@15 {
129 compatible = "elan,ekth3000";
130 reg = <0x15>;
131
132 pinctrl-names = "default";
133 pinctrl-0 = <&trackpad_pins>;
134
135 interrupts-extended = <&pio 7 IRQ_TYPE_LEVEL_LOW>;
136
137 wakeup-source;
138 };
139};
140
141&i2c4 {
142 pinctrl-names = "default";
143 pinctrl-0 = <&i2c4_pins>;
144 status = "okay";
145 clock-frequency = <100000>;
146
147 anx_bridge: anx7625@58 {
148 compatible = "analogix,anx7625";
149 reg = <0x58>;
150 pinctrl-names = "default";
151 pinctrl-0 = <&anx7625_pins>;
152 panel_flags = <1>;
153 enable-gpios = <&pio 45 GPIO_ACTIVE_HIGH>;
154 reset-gpios = <&pio 73 GPIO_ACTIVE_HIGH>;
155 vdd10-supply = <&pp1200_mipibrdg>;
156 vdd18-supply = <&pp1800_mipibrdg>;
157 vdd33-supply = <&vddio_mipibrdg>;
158
159 #address-cells = <1>;
160 #size-cells = <0>;
161 port@0 {
162 reg = <0>;
163
164 anx7625_in: endpoint {
165 remote-endpoint = <&dsi_out>;
166 };
167 };
168
169 port@1 {
170 reg = <1>;
171
172 anx7625_out: endpoint {
173 remote-endpoint = <&panel_in>;
174 };
175 };
176
177 aux-bus {
178 panel: panel {
179 compatible = "edp-panel";
180 power-supply = <&pp3300_panel>;
181 backlight = <&backlight_lcd0>;
182
183 port {
184 panel_in: endpoint {
185 remote-endpoint = <&anx7625_out>;
186 };
187 };
188 };
189 };
190 };
191};
192
193&i2c_tunnel {
194 google,remote-bus = <2>;
195};
196
197&pio {
198 /* 192 lines */
199 gpio-line-names =
200 "SPI_AP_EC_CS_L",
201 "SPI_AP_EC_MOSI",
202 "SPI_AP_EC_CLK",
203 "I2S3_DO",
204 "USB_PD_INT_ODL",
205 "",
206 "",
207 "",
208 "",
209 "IT6505_HPD_L",
210 "I2S3_TDM_D3",
211 "SOC_I2C6_1V8_SCL",
212 "SOC_I2C6_1V8_SDA",
213 "DPI_D0",
214 "DPI_D1",
215 "DPI_D2",
216 "DPI_D3",
217 "DPI_D4",
218 "DPI_D5",
219 "DPI_D6",
220 "DPI_D7",
221 "DPI_D8",
222 "DPI_D9",
223 "DPI_D10",
224 "DPI_D11",
225 "DPI_HSYNC",
226 "DPI_VSYNC",
227 "DPI_DE",
228 "DPI_CK",
229 "AP_MSDC1_CLK",
230 "AP_MSDC1_DAT3",
231 "AP_MSDC1_CMD",
232 "AP_MSDC1_DAT0",
233 "AP_MSDC1_DAT2",
234 "AP_MSDC1_DAT1",
235 "",
236 "",
237 "",
238 "",
239 "",
240 "",
241 "OTG_EN",
242 "DRVBUS",
243 "DISP_PWM",
244 "DSI_TE",
245 "LCM_RST_1V8",
246 "AP_CTS_WIFI_RTS",
247 "AP_RTS_WIFI_CTS",
248 "SOC_I2C5_1V8_SCL",
249 "SOC_I2C5_1V8_SDA",
250 "SOC_I2C3_1V8_SCL",
251 "SOC_I2C3_1V8_SDA",
252 "",
253 "",
254 "",
255 "",
256 "",
257 "",
258 "",
259 "",
260 "",
261 "",
262 "",
263 "",
264 "",
265 "",
266 "",
267 "",
268 "",
269 "",
270 "",
271 "",
272 "",
273 "",
274 "",
275 "",
276 "",
277 "",
278 "",
279 "",
280 "",
281 "SOC_I2C1_1V8_SDA",
282 "SOC_I2C0_1V8_SDA",
283 "SOC_I2C0_1V8_SCL",
284 "SOC_I2C1_1V8_SCL",
285 "AP_SPI_H1_MISO",
286 "AP_SPI_H1_CS_L",
287 "AP_SPI_H1_MOSI",
288 "AP_SPI_H1_CLK",
289 "I2S5_BCK",
290 "I2S5_LRCK",
291 "I2S5_DO",
292 "BOOTBLOCK_EN_L",
293 "MT8183_KPCOL0",
294 "SPI_AP_EC_MISO",
295 "UART_DBG_TX_AP_RX",
296 "UART_AP_TX_DBG_RX",
297 "I2S2_MCK",
298 "I2S2_BCK",
299 "CLK_5M_WCAM",
300 "CLK_2M_UCAM",
301 "I2S2_LRCK",
302 "I2S2_DI",
303 "SOC_I2C2_1V8_SCL",
304 "SOC_I2C2_1V8_SDA",
305 "SOC_I2C4_1V8_SCL",
306 "SOC_I2C4_1V8_SDA",
307 "",
308 "SCL8",
309 "SDA8",
310 "FCAM_PWDN_L",
311 "",
312 "",
313 "",
314 "",
315 "",
316 "",
317 "",
318 "",
319 "",
320 "",
321 "",
322 "",
323 "",
324 "",
325 "",
326 "",
327 "",
328 "",
329 "",
330 "",
331 "",
332 "",
333 "",
334 "",
335 "",
336 "I2S_PMIC",
337 "I2S_PMIC",
338 "I2S_PMIC",
339 "I2S_PMIC",
340 "I2S_PMIC",
341 "I2S_PMIC",
342 "I2S_PMIC",
343 "I2S_PMIC",
344 "",
345 "",
346 "",
347 "",
348 "",
349 "",
350 /*
351 * AP_FLASH_WP_L is crossystem ABI. Rev1 schematics
352 * call it BIOS_FLASH_WP_R_L.
353 */
354 "AP_FLASH_WP_L",
355 "EC_AP_INT_ODL",
356 "IT6505_INT_ODL",
357 "H1_INT_OD_L",
358 "",
359 "",
360 "",
361 "",
362 "",
363 "",
364 "",
365 "AP_SPI_FLASH_MISO",
366 "AP_SPI_FLASH_CS_L",
367 "AP_SPI_FLASH_MOSI",
368 "AP_SPI_FLASH_CLK",
369 "DA7219_IRQ",
370 "",
371 "",
372 "",
373 "",
374 "",
375 "",
376 "",
377 "",
378 "",
379 "",
380 "",
381 "",
382 "",
383 "",
384 "",
385 "",
386 "",
387 "",
388 "",
389 "",
390 "",
391 "",
392 "",
393 "",
394 "",
395 "";
396
397 pp1200_mipibrdg_en: pp1200-mipibrdg-en {
398 pins1 {
399 pinmux = <PINMUX_GPIO54__FUNC_GPIO54>;
400 output-low;
401 };
402 };
403
404 pp1800_lcd_en: pp1800-lcd-en {
405 pins1 {
406 pinmux = <PINMUX_GPIO36__FUNC_GPIO36>;
407 output-low;
408 };
409 };
410
411 pp3300_panel_pins: pp3300-panel-pins {
412 panel_3v3_enable: panel-3v3-enable {
413 pinmux = <PINMUX_GPIO35__FUNC_GPIO35>;
414 output-low;
415 };
416 };
417
418 ppvarp_lcd_en: ppvarp-lcd-en {
419 pins1 {
420 pinmux = <PINMUX_GPIO66__FUNC_GPIO66>;
421 output-low;
422 };
423 };
424
425 ppvarn_lcd_en: ppvarn-lcd-en {
426 pins1 {
427 pinmux = <PINMUX_GPIO166__FUNC_GPIO166>;
428 output-low;
429 };
430 };
431
432 anx7625_pins: anx7625-pins {
433 pins1 {
434 pinmux = <PINMUX_GPIO45__FUNC_GPIO45>,
435 <PINMUX_GPIO73__FUNC_GPIO73>;
436 output-low;
437 };
438 pins2 {
439 pinmux = <PINMUX_GPIO4__FUNC_GPIO4>;
440 input-enable;
441 bias-pull-up;
442 };
443 };
444
445 touchscreen_pins: touchscreen-pins {
446 touch-int-odl {
447 pinmux = <PINMUX_GPIO155__FUNC_GPIO155>;
448 input-enable;
449 bias-pull-up;
450 };
451
452 touch-rst-l {
453 pinmux = <PINMUX_GPIO156__FUNC_GPIO156>;
454 output-high;
455 };
456 };
457
458 trackpad_pins: trackpad-pins {
459 trackpad-int {
460 pinmux = <PINMUX_GPIO7__FUNC_GPIO7>;
461 input-enable;
462 bias-disable; /* pulled externally */
463 };
464 };
465
466 vddio_mipibrdg_en: vddio-mipibrdg-en {
467 pins1 {
468 pinmux = <PINMUX_GPIO37__FUNC_GPIO37>;
469 output-low;
470 };
471 };
472
473 volume_button_pins: volume-button-pins {
474 voldn-btn-odl {
475 pinmux = <PINMUX_GPIO6__FUNC_GPIO6>;
476 input-enable;
477 bias-pull-up;
478 };
479
480 volup-btn-odl {
481 pinmux = <PINMUX_GPIO5__FUNC_GPIO5>;
482 input-enable;
483 bias-pull-up;
484 };
485 };
486};
487