blob: fa4ab4d2899f9b7f866414335b703e6843aa25e7 [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>;
Tom Rini53633a82024-02-29 12:33:36 -0500152 enable-gpios = <&pio 45 GPIO_ACTIVE_HIGH>;
153 reset-gpios = <&pio 73 GPIO_ACTIVE_HIGH>;
154 vdd10-supply = <&pp1200_mipibrdg>;
155 vdd18-supply = <&pp1800_mipibrdg>;
156 vdd33-supply = <&vddio_mipibrdg>;
157
Tom Rini6b642ac2024-10-01 12:20:28 -0600158 ports {
159 #address-cells = <1>;
160 #size-cells = <0>;
Tom Rini53633a82024-02-29 12:33:36 -0500161
Tom Rini6b642ac2024-10-01 12:20:28 -0600162 port@0 {
163 reg = <0>;
164
165 anx7625_in: endpoint {
166 remote-endpoint = <&dsi_out>;
167 };
Tom Rini53633a82024-02-29 12:33:36 -0500168 };
Tom Rini53633a82024-02-29 12:33:36 -0500169
Tom Rini6b642ac2024-10-01 12:20:28 -0600170 port@1 {
171 reg = <1>;
Tom Rini53633a82024-02-29 12:33:36 -0500172
Tom Rini6b642ac2024-10-01 12:20:28 -0600173 anx7625_out: endpoint {
174 remote-endpoint = <&panel_in>;
175 };
Tom Rini53633a82024-02-29 12:33:36 -0500176 };
177 };
178
179 aux-bus {
180 panel: panel {
181 compatible = "edp-panel";
182 power-supply = <&pp3300_panel>;
183 backlight = <&backlight_lcd0>;
184
185 port {
186 panel_in: endpoint {
187 remote-endpoint = <&anx7625_out>;
188 };
189 };
190 };
191 };
192 };
193};
194
195&i2c_tunnel {
196 google,remote-bus = <2>;
197};
198
199&pio {
200 /* 192 lines */
201 gpio-line-names =
202 "SPI_AP_EC_CS_L",
203 "SPI_AP_EC_MOSI",
204 "SPI_AP_EC_CLK",
205 "I2S3_DO",
206 "USB_PD_INT_ODL",
207 "",
208 "",
209 "",
210 "",
211 "IT6505_HPD_L",
212 "I2S3_TDM_D3",
213 "SOC_I2C6_1V8_SCL",
214 "SOC_I2C6_1V8_SDA",
215 "DPI_D0",
216 "DPI_D1",
217 "DPI_D2",
218 "DPI_D3",
219 "DPI_D4",
220 "DPI_D5",
221 "DPI_D6",
222 "DPI_D7",
223 "DPI_D8",
224 "DPI_D9",
225 "DPI_D10",
226 "DPI_D11",
227 "DPI_HSYNC",
228 "DPI_VSYNC",
229 "DPI_DE",
230 "DPI_CK",
231 "AP_MSDC1_CLK",
232 "AP_MSDC1_DAT3",
233 "AP_MSDC1_CMD",
234 "AP_MSDC1_DAT0",
235 "AP_MSDC1_DAT2",
236 "AP_MSDC1_DAT1",
237 "",
238 "",
239 "",
240 "",
241 "",
242 "",
243 "OTG_EN",
244 "DRVBUS",
245 "DISP_PWM",
246 "DSI_TE",
247 "LCM_RST_1V8",
248 "AP_CTS_WIFI_RTS",
249 "AP_RTS_WIFI_CTS",
250 "SOC_I2C5_1V8_SCL",
251 "SOC_I2C5_1V8_SDA",
252 "SOC_I2C3_1V8_SCL",
253 "SOC_I2C3_1V8_SDA",
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 "",
282 "",
283 "SOC_I2C1_1V8_SDA",
284 "SOC_I2C0_1V8_SDA",
285 "SOC_I2C0_1V8_SCL",
286 "SOC_I2C1_1V8_SCL",
287 "AP_SPI_H1_MISO",
288 "AP_SPI_H1_CS_L",
289 "AP_SPI_H1_MOSI",
290 "AP_SPI_H1_CLK",
291 "I2S5_BCK",
292 "I2S5_LRCK",
293 "I2S5_DO",
294 "BOOTBLOCK_EN_L",
295 "MT8183_KPCOL0",
296 "SPI_AP_EC_MISO",
297 "UART_DBG_TX_AP_RX",
298 "UART_AP_TX_DBG_RX",
299 "I2S2_MCK",
300 "I2S2_BCK",
301 "CLK_5M_WCAM",
302 "CLK_2M_UCAM",
303 "I2S2_LRCK",
304 "I2S2_DI",
305 "SOC_I2C2_1V8_SCL",
306 "SOC_I2C2_1V8_SDA",
307 "SOC_I2C4_1V8_SCL",
308 "SOC_I2C4_1V8_SDA",
309 "",
310 "SCL8",
311 "SDA8",
312 "FCAM_PWDN_L",
313 "",
314 "",
315 "",
316 "",
317 "",
318 "",
319 "",
320 "",
321 "",
322 "",
323 "",
324 "",
325 "",
326 "",
327 "",
328 "",
329 "",
330 "",
331 "",
332 "",
333 "",
334 "",
335 "",
336 "",
337 "",
338 "I2S_PMIC",
339 "I2S_PMIC",
340 "I2S_PMIC",
341 "I2S_PMIC",
342 "I2S_PMIC",
343 "I2S_PMIC",
344 "I2S_PMIC",
345 "I2S_PMIC",
346 "",
347 "",
348 "",
349 "",
350 "",
351 "",
352 /*
353 * AP_FLASH_WP_L is crossystem ABI. Rev1 schematics
354 * call it BIOS_FLASH_WP_R_L.
355 */
356 "AP_FLASH_WP_L",
357 "EC_AP_INT_ODL",
358 "IT6505_INT_ODL",
359 "H1_INT_OD_L",
360 "",
361 "",
362 "",
363 "",
364 "",
365 "",
366 "",
367 "AP_SPI_FLASH_MISO",
368 "AP_SPI_FLASH_CS_L",
369 "AP_SPI_FLASH_MOSI",
370 "AP_SPI_FLASH_CLK",
371 "DA7219_IRQ",
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 "";
398
399 pp1200_mipibrdg_en: pp1200-mipibrdg-en {
400 pins1 {
401 pinmux = <PINMUX_GPIO54__FUNC_GPIO54>;
402 output-low;
403 };
404 };
405
406 pp1800_lcd_en: pp1800-lcd-en {
407 pins1 {
408 pinmux = <PINMUX_GPIO36__FUNC_GPIO36>;
409 output-low;
410 };
411 };
412
413 pp3300_panel_pins: pp3300-panel-pins {
414 panel_3v3_enable: panel-3v3-enable {
415 pinmux = <PINMUX_GPIO35__FUNC_GPIO35>;
416 output-low;
417 };
418 };
419
420 ppvarp_lcd_en: ppvarp-lcd-en {
421 pins1 {
422 pinmux = <PINMUX_GPIO66__FUNC_GPIO66>;
423 output-low;
424 };
425 };
426
427 ppvarn_lcd_en: ppvarn-lcd-en {
428 pins1 {
429 pinmux = <PINMUX_GPIO166__FUNC_GPIO166>;
430 output-low;
431 };
432 };
433
434 anx7625_pins: anx7625-pins {
435 pins1 {
436 pinmux = <PINMUX_GPIO45__FUNC_GPIO45>,
437 <PINMUX_GPIO73__FUNC_GPIO73>;
438 output-low;
439 };
440 pins2 {
441 pinmux = <PINMUX_GPIO4__FUNC_GPIO4>;
442 input-enable;
443 bias-pull-up;
444 };
445 };
446
447 touchscreen_pins: touchscreen-pins {
448 touch-int-odl {
449 pinmux = <PINMUX_GPIO155__FUNC_GPIO155>;
450 input-enable;
451 bias-pull-up;
452 };
453
454 touch-rst-l {
455 pinmux = <PINMUX_GPIO156__FUNC_GPIO156>;
456 output-high;
457 };
458 };
459
460 trackpad_pins: trackpad-pins {
461 trackpad-int {
462 pinmux = <PINMUX_GPIO7__FUNC_GPIO7>;
463 input-enable;
464 bias-disable; /* pulled externally */
465 };
466 };
467
468 vddio_mipibrdg_en: vddio-mipibrdg-en {
469 pins1 {
470 pinmux = <PINMUX_GPIO37__FUNC_GPIO37>;
471 output-low;
472 };
473 };
474
475 volume_button_pins: volume-button-pins {
476 voldn-btn-odl {
477 pinmux = <PINMUX_GPIO6__FUNC_GPIO6>;
478 input-enable;
479 bias-pull-up;
480 };
481
482 volup-btn-odl {
483 pinmux = <PINMUX_GPIO5__FUNC_GPIO5>;
484 input-enable;
485 bias-pull-up;
486 };
487 };
488};
489