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