1d1eaf77fSNicolas Boichat// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2d1eaf77fSNicolas Boichat/* 3d1eaf77fSNicolas Boichat * Copyright 2020 Google LLC 4d1eaf77fSNicolas Boichat */ 5d1eaf77fSNicolas Boichat 6d1eaf77fSNicolas Boichat#include "mt8183-kukui.dtsi" 7d1eaf77fSNicolas Boichat#include <dt-bindings/input/gpio-keys.h> 8d1eaf77fSNicolas Boichat 9d1eaf77fSNicolas Boichat/ { 10d1eaf77fSNicolas Boichat ppvarn_lcd: ppvarn-lcd { 11d1eaf77fSNicolas Boichat compatible = "regulator-fixed"; 12d1eaf77fSNicolas Boichat regulator-name = "ppvarn_lcd"; 13d1eaf77fSNicolas Boichat pinctrl-names = "default"; 14d1eaf77fSNicolas Boichat pinctrl-0 = <&ppvarn_lcd_en>; 15d1eaf77fSNicolas Boichat 16d1eaf77fSNicolas Boichat enable-active-high; 17d1eaf77fSNicolas Boichat 18d1eaf77fSNicolas Boichat gpio = <&pio 66 GPIO_ACTIVE_HIGH>; 19d1eaf77fSNicolas Boichat }; 20d1eaf77fSNicolas Boichat 21d1eaf77fSNicolas Boichat ppvarp_lcd: ppvarp-lcd { 22d1eaf77fSNicolas Boichat compatible = "regulator-fixed"; 23d1eaf77fSNicolas Boichat regulator-name = "ppvarp_lcd"; 24d1eaf77fSNicolas Boichat pinctrl-names = "default"; 25d1eaf77fSNicolas Boichat pinctrl-0 = <&ppvarp_lcd_en>; 26d1eaf77fSNicolas Boichat 27d1eaf77fSNicolas Boichat enable-active-high; 28d1eaf77fSNicolas Boichat 29d1eaf77fSNicolas Boichat gpio = <&pio 166 GPIO_ACTIVE_HIGH>; 30d1eaf77fSNicolas Boichat }; 31d1eaf77fSNicolas Boichat 32d1eaf77fSNicolas Boichat pp1800_lcd: pp1800-lcd { 33d1eaf77fSNicolas Boichat compatible = "regulator-fixed"; 34d1eaf77fSNicolas Boichat regulator-name = "pp1800_lcd"; 35d1eaf77fSNicolas Boichat pinctrl-names = "default"; 36d1eaf77fSNicolas Boichat pinctrl-0 = <&pp1800_lcd_en>; 37d1eaf77fSNicolas Boichat 38d1eaf77fSNicolas Boichat enable-active-high; 39d1eaf77fSNicolas Boichat 40d1eaf77fSNicolas Boichat gpio = <&pio 36 GPIO_ACTIVE_HIGH>; 41d1eaf77fSNicolas Boichat }; 42d1eaf77fSNicolas Boichat 43d1eaf77fSNicolas Boichat gpio-keys { 44d1eaf77fSNicolas Boichat compatible = "gpio-keys"; 45d1eaf77fSNicolas Boichat pinctrl-names = "default"; 46d1eaf77fSNicolas Boichat pinctrl-0 = <&pen_eject>; 47d1eaf77fSNicolas Boichat 48335d1603SKrzysztof Kozlowski switch-pen-insert { 49d1eaf77fSNicolas Boichat label = "Pen Insert"; 50d1eaf77fSNicolas Boichat /* Insert = low, eject = high */ 51d1eaf77fSNicolas Boichat gpios = <&pio 6 GPIO_ACTIVE_LOW>; 52d1eaf77fSNicolas Boichat linux,code = <SW_PEN_INSERTED>; 53d1eaf77fSNicolas Boichat linux,input-type = <EV_SW>; 54d1eaf77fSNicolas Boichat wakeup-event-action = <EV_ACT_DEASSERTED>; 55d1eaf77fSNicolas Boichat wakeup-source; 56d1eaf77fSNicolas Boichat }; 57d1eaf77fSNicolas Boichat }; 58d1eaf77fSNicolas Boichat}; 59d1eaf77fSNicolas Boichat 60d1eaf77fSNicolas Boichat&bluetooth { 61d1eaf77fSNicolas Boichat firmware-name = "nvm_00440302_i2s_eu.bin"; 62d1eaf77fSNicolas Boichat}; 63d1eaf77fSNicolas Boichat 64d1eaf77fSNicolas Boichat&i2c0 { 65d1eaf77fSNicolas Boichat status = "okay"; 66d1eaf77fSNicolas Boichat}; 67d1eaf77fSNicolas Boichat 68d1eaf77fSNicolas Boichat&mt6358_vcama2_reg { 69d1eaf77fSNicolas Boichat regulator-min-microvolt = <2800000>; 70d1eaf77fSNicolas Boichat regulator-max-microvolt = <2800000>; 71d1eaf77fSNicolas Boichat}; 72d1eaf77fSNicolas Boichat 73d1eaf77fSNicolas Boichat&i2c2 { 74d1eaf77fSNicolas Boichat pinctrl-names = "default"; 75d1eaf77fSNicolas Boichat pinctrl-0 = <&i2c2_pins>; 76d1eaf77fSNicolas Boichat status = "okay"; 77d1eaf77fSNicolas Boichat clock-frequency = <400000>; 787e149fd8SHsin-Yi Wang vbus-supply = <&mt6358_vcamio_reg>; 79d1eaf77fSNicolas Boichat 80d1eaf77fSNicolas Boichat eeprom@58 { 81d1eaf77fSNicolas Boichat compatible = "atmel,24c32"; 82d1eaf77fSNicolas Boichat reg = <0x58>; 83d1eaf77fSNicolas Boichat pagesize = <32>; 847e149fd8SHsin-Yi Wang vcc-supply = <&mt6358_vcama2_reg>; 85d1eaf77fSNicolas Boichat }; 86d1eaf77fSNicolas Boichat}; 87d1eaf77fSNicolas Boichat 88d1eaf77fSNicolas Boichat&i2c4 { 89d1eaf77fSNicolas Boichat pinctrl-names = "default"; 90d1eaf77fSNicolas Boichat pinctrl-0 = <&i2c4_pins>; 91d1eaf77fSNicolas Boichat status = "okay"; 92d1eaf77fSNicolas Boichat clock-frequency = <400000>; 937e149fd8SHsin-Yi Wang vbus-supply = <&mt6358_vcn18_reg>; 94d1eaf77fSNicolas Boichat 95d1eaf77fSNicolas Boichat eeprom@54 { 96d1eaf77fSNicolas Boichat compatible = "atmel,24c32"; 97d1eaf77fSNicolas Boichat reg = <0x54>; 98d1eaf77fSNicolas Boichat pagesize = <32>; 997e149fd8SHsin-Yi Wang vcc-supply = <&mt6358_vcn18_reg>; 100d1eaf77fSNicolas Boichat }; 101d1eaf77fSNicolas Boichat}; 102d1eaf77fSNicolas Boichat 103d1eaf77fSNicolas Boichat&mipi_tx0 { 104d1eaf77fSNicolas Boichat drive-strength-microamp = <5800>; 105d1eaf77fSNicolas Boichat}; 106d1eaf77fSNicolas Boichat 107d1eaf77fSNicolas Boichat&pio { 108d1eaf77fSNicolas Boichat /* 192 lines */ 109d1eaf77fSNicolas Boichat gpio-line-names = 110d1eaf77fSNicolas Boichat "SPI_AP_EC_CS_L", 111d1eaf77fSNicolas Boichat "SPI_AP_EC_MOSI", 112d1eaf77fSNicolas Boichat "SPI_AP_EC_CLK", 113d1eaf77fSNicolas Boichat "I2S3_DO", 114d1eaf77fSNicolas Boichat "USB_PD_INT_ODL", 115d1eaf77fSNicolas Boichat "", 116d1eaf77fSNicolas Boichat "", 117d1eaf77fSNicolas Boichat "", 118d1eaf77fSNicolas Boichat "", 119d1eaf77fSNicolas Boichat "IT6505_HPD_L", 120d1eaf77fSNicolas Boichat "I2S3_TDM_D3", 121d1eaf77fSNicolas Boichat "SOC_I2C6_1V8_SCL", 122d1eaf77fSNicolas Boichat "SOC_I2C6_1V8_SDA", 123d1eaf77fSNicolas Boichat "DPI_D0", 124d1eaf77fSNicolas Boichat "DPI_D1", 125d1eaf77fSNicolas Boichat "DPI_D2", 126d1eaf77fSNicolas Boichat "DPI_D3", 127d1eaf77fSNicolas Boichat "DPI_D4", 128d1eaf77fSNicolas Boichat "DPI_D5", 129d1eaf77fSNicolas Boichat "DPI_D6", 130d1eaf77fSNicolas Boichat "DPI_D7", 131d1eaf77fSNicolas Boichat "DPI_D8", 132d1eaf77fSNicolas Boichat "DPI_D9", 133d1eaf77fSNicolas Boichat "DPI_D10", 134d1eaf77fSNicolas Boichat "DPI_D11", 135d1eaf77fSNicolas Boichat "DPI_HSYNC", 136d1eaf77fSNicolas Boichat "DPI_VSYNC", 137d1eaf77fSNicolas Boichat "DPI_DE", 138d1eaf77fSNicolas Boichat "DPI_CK", 139d1eaf77fSNicolas Boichat "AP_MSDC1_CLK", 140d1eaf77fSNicolas Boichat "AP_MSDC1_DAT3", 141d1eaf77fSNicolas Boichat "AP_MSDC1_CMD", 142d1eaf77fSNicolas Boichat "AP_MSDC1_DAT0", 143d1eaf77fSNicolas Boichat "AP_MSDC1_DAT2", 144d1eaf77fSNicolas Boichat "AP_MSDC1_DAT1", 145d1eaf77fSNicolas Boichat "", 146d1eaf77fSNicolas Boichat "", 147d1eaf77fSNicolas Boichat "", 148d1eaf77fSNicolas Boichat "", 149d1eaf77fSNicolas Boichat "", 150d1eaf77fSNicolas Boichat "", 151d1eaf77fSNicolas Boichat "OTG_EN", 152d1eaf77fSNicolas Boichat "DRVBUS", 153d1eaf77fSNicolas Boichat "DISP_PWM", 154d1eaf77fSNicolas Boichat "DSI_TE", 155d1eaf77fSNicolas Boichat "LCM_RST_1V8", 156d1eaf77fSNicolas Boichat "AP_CTS_WIFI_RTS", 157d1eaf77fSNicolas Boichat "AP_RTS_WIFI_CTS", 158d1eaf77fSNicolas Boichat "SOC_I2C5_1V8_SCL", 159d1eaf77fSNicolas Boichat "SOC_I2C5_1V8_SDA", 160d1eaf77fSNicolas Boichat "SOC_I2C3_1V8_SCL", 161d1eaf77fSNicolas Boichat "SOC_I2C3_1V8_SDA", 162d1eaf77fSNicolas Boichat "", 163d1eaf77fSNicolas Boichat "", 164d1eaf77fSNicolas Boichat "", 165d1eaf77fSNicolas Boichat "", 166d1eaf77fSNicolas Boichat "", 167d1eaf77fSNicolas Boichat "", 168d1eaf77fSNicolas Boichat "", 169d1eaf77fSNicolas Boichat "", 170d1eaf77fSNicolas Boichat "", 171d1eaf77fSNicolas Boichat "", 172d1eaf77fSNicolas Boichat "", 173d1eaf77fSNicolas Boichat "", 174d1eaf77fSNicolas Boichat "", 175d1eaf77fSNicolas Boichat "", 176d1eaf77fSNicolas Boichat "", 177d1eaf77fSNicolas Boichat "", 178d1eaf77fSNicolas Boichat "", 179d1eaf77fSNicolas Boichat "", 180d1eaf77fSNicolas Boichat "", 181d1eaf77fSNicolas Boichat "", 182d1eaf77fSNicolas Boichat "", 183d1eaf77fSNicolas Boichat "", 184d1eaf77fSNicolas Boichat "", 185d1eaf77fSNicolas Boichat "", 186d1eaf77fSNicolas Boichat "", 187d1eaf77fSNicolas Boichat "", 188d1eaf77fSNicolas Boichat "", 189d1eaf77fSNicolas Boichat "", 190d1eaf77fSNicolas Boichat "", 191d1eaf77fSNicolas Boichat "SOC_I2C1_1V8_SDA", 192d1eaf77fSNicolas Boichat "SOC_I2C0_1V8_SDA", 193d1eaf77fSNicolas Boichat "SOC_I2C0_1V8_SCL", 194d1eaf77fSNicolas Boichat "SOC_I2C1_1V8_SCL", 195d1eaf77fSNicolas Boichat "AP_SPI_H1_MISO", 196d1eaf77fSNicolas Boichat "AP_SPI_H1_CS_L", 197d1eaf77fSNicolas Boichat "AP_SPI_H1_MOSI", 198d1eaf77fSNicolas Boichat "AP_SPI_H1_CLK", 199d1eaf77fSNicolas Boichat "I2S5_BCK", 200d1eaf77fSNicolas Boichat "I2S5_LRCK", 201d1eaf77fSNicolas Boichat "I2S5_DO", 202d1eaf77fSNicolas Boichat "BOOTBLOCK_EN_L", 203d1eaf77fSNicolas Boichat "MT8183_KPCOL0", 204d1eaf77fSNicolas Boichat "SPI_AP_EC_MISO", 205d1eaf77fSNicolas Boichat "UART_DBG_TX_AP_RX", 206d1eaf77fSNicolas Boichat "UART_AP_TX_DBG_RX", 207d1eaf77fSNicolas Boichat "I2S2_MCK", 208d1eaf77fSNicolas Boichat "I2S2_BCK", 209d1eaf77fSNicolas Boichat "CLK_5M_WCAM", 210d1eaf77fSNicolas Boichat "CLK_2M_UCAM", 211d1eaf77fSNicolas Boichat "I2S2_LRCK", 212d1eaf77fSNicolas Boichat "I2S2_DI", 213d1eaf77fSNicolas Boichat "SOC_I2C2_1V8_SCL", 214d1eaf77fSNicolas Boichat "SOC_I2C2_1V8_SDA", 215d1eaf77fSNicolas Boichat "SOC_I2C4_1V8_SCL", 216d1eaf77fSNicolas Boichat "SOC_I2C4_1V8_SDA", 217d1eaf77fSNicolas Boichat "", 218d1eaf77fSNicolas Boichat "SCL8", 219d1eaf77fSNicolas Boichat "SDA8", 220d1eaf77fSNicolas Boichat "FCAM_PWDN_L", 221d1eaf77fSNicolas Boichat "", 222d1eaf77fSNicolas Boichat "", 223d1eaf77fSNicolas Boichat "", 224d1eaf77fSNicolas Boichat "", 225d1eaf77fSNicolas Boichat "", 226d1eaf77fSNicolas Boichat "", 227d1eaf77fSNicolas Boichat "", 228d1eaf77fSNicolas Boichat "", 229d1eaf77fSNicolas Boichat "", 230d1eaf77fSNicolas Boichat "", 231d1eaf77fSNicolas Boichat "", 232d1eaf77fSNicolas Boichat "", 233d1eaf77fSNicolas Boichat "", 234d1eaf77fSNicolas Boichat "", 235d1eaf77fSNicolas Boichat "", 236d1eaf77fSNicolas Boichat "", 237d1eaf77fSNicolas Boichat "", 238d1eaf77fSNicolas Boichat "", 239d1eaf77fSNicolas Boichat "", 240d1eaf77fSNicolas Boichat "", 241d1eaf77fSNicolas Boichat "", 242d1eaf77fSNicolas Boichat "", 243d1eaf77fSNicolas Boichat "", 244d1eaf77fSNicolas Boichat "", 245d1eaf77fSNicolas Boichat "", 246d1eaf77fSNicolas Boichat "I2S_PMIC", 247d1eaf77fSNicolas Boichat "I2S_PMIC", 248d1eaf77fSNicolas Boichat "I2S_PMIC", 249d1eaf77fSNicolas Boichat "I2S_PMIC", 250d1eaf77fSNicolas Boichat "I2S_PMIC", 251d1eaf77fSNicolas Boichat "I2S_PMIC", 252d1eaf77fSNicolas Boichat "I2S_PMIC", 253d1eaf77fSNicolas Boichat "I2S_PMIC", 254d1eaf77fSNicolas Boichat "", 255d1eaf77fSNicolas Boichat "", 256d1eaf77fSNicolas Boichat "", 257d1eaf77fSNicolas Boichat "", 258d1eaf77fSNicolas Boichat "", 259d1eaf77fSNicolas Boichat "", 260d1eaf77fSNicolas Boichat /* 261d1eaf77fSNicolas Boichat * AP_FLASH_WP_L is crossystem ABI. Rev1 schematics 262d1eaf77fSNicolas Boichat * call it BIOS_FLASH_WP_R_L. 263d1eaf77fSNicolas Boichat */ 264d1eaf77fSNicolas Boichat "AP_FLASH_WP_L", 265d1eaf77fSNicolas Boichat "EC_AP_INT_ODL", 266d1eaf77fSNicolas Boichat "IT6505_INT_ODL", 267d1eaf77fSNicolas Boichat "H1_INT_OD_L", 268d1eaf77fSNicolas Boichat "", 269d1eaf77fSNicolas Boichat "", 270d1eaf77fSNicolas Boichat "", 271d1eaf77fSNicolas Boichat "", 272d1eaf77fSNicolas Boichat "", 273d1eaf77fSNicolas Boichat "", 274d1eaf77fSNicolas Boichat "", 275d1eaf77fSNicolas Boichat "AP_SPI_FLASH_MISO", 276d1eaf77fSNicolas Boichat "AP_SPI_FLASH_CS_L", 277d1eaf77fSNicolas Boichat "AP_SPI_FLASH_MOSI", 278d1eaf77fSNicolas Boichat "AP_SPI_FLASH_CLK", 279d1eaf77fSNicolas Boichat "DA7219_IRQ", 280d1eaf77fSNicolas Boichat "", 281d1eaf77fSNicolas Boichat "", 282d1eaf77fSNicolas Boichat "", 283d1eaf77fSNicolas Boichat "", 284d1eaf77fSNicolas Boichat "", 285d1eaf77fSNicolas Boichat "", 286d1eaf77fSNicolas Boichat "", 287d1eaf77fSNicolas Boichat "", 288d1eaf77fSNicolas Boichat "", 289d1eaf77fSNicolas Boichat "", 290d1eaf77fSNicolas Boichat "", 291d1eaf77fSNicolas Boichat "", 292d1eaf77fSNicolas Boichat "", 293d1eaf77fSNicolas Boichat "", 294d1eaf77fSNicolas Boichat "", 295d1eaf77fSNicolas Boichat "", 296d1eaf77fSNicolas Boichat "", 297d1eaf77fSNicolas Boichat "", 298d1eaf77fSNicolas Boichat "", 299d1eaf77fSNicolas Boichat "", 300d1eaf77fSNicolas Boichat "", 301d1eaf77fSNicolas Boichat "", 302d1eaf77fSNicolas Boichat "", 303d1eaf77fSNicolas Boichat "", 304d1eaf77fSNicolas Boichat "", 305d1eaf77fSNicolas Boichat ""; 306d1eaf77fSNicolas Boichat 307d1eaf77fSNicolas Boichat ppvarp_lcd_en: ppvarp-lcd-en { 308d1eaf77fSNicolas Boichat pins1 { 309d1eaf77fSNicolas Boichat pinmux = <PINMUX_GPIO66__FUNC_GPIO66>; 310d1eaf77fSNicolas Boichat output-low; 311d1eaf77fSNicolas Boichat }; 312d1eaf77fSNicolas Boichat }; 313d1eaf77fSNicolas Boichat 314d1eaf77fSNicolas Boichat ppvarn_lcd_en: ppvarn-lcd-en { 315d1eaf77fSNicolas Boichat pins1 { 316d1eaf77fSNicolas Boichat pinmux = <PINMUX_GPIO166__FUNC_GPIO166>; 317d1eaf77fSNicolas Boichat output-low; 318d1eaf77fSNicolas Boichat }; 319d1eaf77fSNicolas Boichat }; 320d1eaf77fSNicolas Boichat 321d1eaf77fSNicolas Boichat pp1800_lcd_en: pp1800-lcd-en { 322d1eaf77fSNicolas Boichat pins1 { 323d1eaf77fSNicolas Boichat pinmux = <PINMUX_GPIO36__FUNC_GPIO36>; 324d1eaf77fSNicolas Boichat output-low; 325d1eaf77fSNicolas Boichat }; 326d1eaf77fSNicolas Boichat }; 327d1eaf77fSNicolas Boichat 328d1eaf77fSNicolas Boichat open_touch: open_touch { 329d1eaf77fSNicolas Boichat irq_pin { 330d1eaf77fSNicolas Boichat pinmux = <PINMUX_GPIO155__FUNC_GPIO155>; 331d1eaf77fSNicolas Boichat input-enable; 332d1eaf77fSNicolas Boichat bias-pull-up; 333d1eaf77fSNicolas Boichat }; 334d1eaf77fSNicolas Boichat 335d1eaf77fSNicolas Boichat rst_pin { 336d1eaf77fSNicolas Boichat pinmux = <PINMUX_GPIO156__FUNC_GPIO156>; 337d1eaf77fSNicolas Boichat 338d1eaf77fSNicolas Boichat /* 339d1eaf77fSNicolas Boichat * The pen driver doesn't currently support driving 340d1eaf77fSNicolas Boichat * this reset line. By specifying output-high here 341d1eaf77fSNicolas Boichat * we're relying on the fact that this pin has a default 342d1eaf77fSNicolas Boichat * pulldown at boot (which makes sure the pen was in 343d1eaf77fSNicolas Boichat * reset if it was powered) and then we set it high here 344d1eaf77fSNicolas Boichat * to take it out of reset. Better would be if the pen 345d1eaf77fSNicolas Boichat * driver could control this and we could remove 346d1eaf77fSNicolas Boichat * "output-high" here. 347d1eaf77fSNicolas Boichat */ 348d1eaf77fSNicolas Boichat output-high; 349d1eaf77fSNicolas Boichat }; 350d1eaf77fSNicolas Boichat }; 351d1eaf77fSNicolas Boichat 352d1eaf77fSNicolas Boichat pen_eject: peneject { 353d1eaf77fSNicolas Boichat pen_eject { 354d1eaf77fSNicolas Boichat pinmux = <PINMUX_GPIO6__FUNC_GPIO6>; 355d1eaf77fSNicolas Boichat input-enable; 356d1eaf77fSNicolas Boichat /* External pull-up. */ 357d1eaf77fSNicolas Boichat bias-disable; 358d1eaf77fSNicolas Boichat }; 359d1eaf77fSNicolas Boichat }; 360d1eaf77fSNicolas Boichat}; 361d1eaf77fSNicolas Boichat 36282492c4eSHsin-Yi Wang&cros_ec { 363*04bd6411SNícolas F. R. A. Prado cbas { 364*04bd6411SNícolas F. R. A. Prado compatible = "google,cros-cbas"; 365*04bd6411SNícolas F. R. A. Prado }; 366*04bd6411SNícolas F. R. A. Prado 36782492c4eSHsin-Yi Wang keyboard-controller { 36882492c4eSHsin-Yi Wang compatible = "google,cros-ec-keyb-switches"; 36982492c4eSHsin-Yi Wang }; 37082492c4eSHsin-Yi Wang}; 37182492c4eSHsin-Yi Wang 372d1eaf77fSNicolas Boichat&qca_wifi { 373d1eaf77fSNicolas Boichat qcom,ath10k-calibration-variant = "GO_KAKADU"; 374d1eaf77fSNicolas Boichat}; 375d1eaf77fSNicolas Boichat 376d1eaf77fSNicolas Boichat&panel { 377d1eaf77fSNicolas Boichat status = "okay"; 37891e7286bSHsin-Yi Wang /* compatible will be set in board dts */ 379d1eaf77fSNicolas Boichat}; 380