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