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