0001 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
0002 /*
0003 * Copyright 2020 Google LLC
0004 */
0005
0006 #include "mt8183-kukui.dtsi"
0007 #include <dt-bindings/input/gpio-keys.h>
0008
0009 / {
0010 ppvarn_lcd: ppvarn-lcd {
0011 compatible = "regulator-fixed";
0012 regulator-name = "ppvarn_lcd";
0013 pinctrl-names = "default";
0014 pinctrl-0 = <&ppvarn_lcd_en>;
0015
0016 enable-active-high;
0017
0018 gpio = <&pio 66 GPIO_ACTIVE_HIGH>;
0019 };
0020
0021 ppvarp_lcd: ppvarp-lcd {
0022 compatible = "regulator-fixed";
0023 regulator-name = "ppvarp_lcd";
0024 pinctrl-names = "default";
0025 pinctrl-0 = <&ppvarp_lcd_en>;
0026
0027 enable-active-high;
0028
0029 gpio = <&pio 166 GPIO_ACTIVE_HIGH>;
0030 };
0031
0032 pp1800_lcd: pp1800-lcd {
0033 compatible = "regulator-fixed";
0034 regulator-name = "pp1800_lcd";
0035 pinctrl-names = "default";
0036 pinctrl-0 = <&pp1800_lcd_en>;
0037
0038 enable-active-high;
0039
0040 gpio = <&pio 36 GPIO_ACTIVE_HIGH>;
0041 };
0042
0043 gpio-keys {
0044 compatible = "gpio-keys";
0045 pinctrl-names = "default";
0046 pinctrl-0 = <&pen_eject>;
0047
0048 switch-pen-insert {
0049 label = "Pen Insert";
0050 /* Insert = low, eject = high */
0051 gpios = <&pio 6 GPIO_ACTIVE_LOW>;
0052 linux,code = <SW_PEN_INSERTED>;
0053 linux,input-type = <EV_SW>;
0054 wakeup-event-action = <EV_ACT_DEASSERTED>;
0055 wakeup-source;
0056 };
0057 };
0058 };
0059
0060 &bluetooth {
0061 firmware-name = "nvm_00440302_i2s_eu.bin";
0062 };
0063
0064 &i2c0 {
0065 status = "okay";
0066
0067 touchscreen: touchscreen@10 {
0068 compatible = "hid-over-i2c";
0069 reg = <0x10>;
0070 pinctrl-names = "default";
0071 pinctrl-0 = <&open_touch>;
0072
0073 interrupt-parent = <&pio>;
0074 interrupts = <155 IRQ_TYPE_EDGE_FALLING>;
0075
0076 post-power-on-delay-ms = <10>;
0077 hid-descr-addr = <0x0001>;
0078 };
0079 };
0080
0081 &mt6358_vcama2_reg {
0082 regulator-min-microvolt = <2800000>;
0083 regulator-max-microvolt = <2800000>;
0084 };
0085
0086 &i2c2 {
0087 pinctrl-names = "default";
0088 pinctrl-0 = <&i2c2_pins>;
0089 status = "okay";
0090 clock-frequency = <400000>;
0091 vbus-supply = <&mt6358_vcamio_reg>;
0092
0093 eeprom@58 {
0094 compatible = "atmel,24c32";
0095 reg = <0x58>;
0096 pagesize = <32>;
0097 vcc-supply = <&mt6358_vcama2_reg>;
0098 };
0099 };
0100
0101 &i2c4 {
0102 pinctrl-names = "default";
0103 pinctrl-0 = <&i2c4_pins>;
0104 status = "okay";
0105 clock-frequency = <400000>;
0106 vbus-supply = <&mt6358_vcn18_reg>;
0107
0108 eeprom@54 {
0109 compatible = "atmel,24c32";
0110 reg = <0x54>;
0111 pagesize = <32>;
0112 vcc-supply = <&mt6358_vcn18_reg>;
0113 };
0114 };
0115
0116 &mipi_tx0 {
0117 drive-strength-microamp = <5800>;
0118 };
0119
0120 &pio {
0121 /* 192 lines */
0122 gpio-line-names =
0123 "SPI_AP_EC_CS_L",
0124 "SPI_AP_EC_MOSI",
0125 "SPI_AP_EC_CLK",
0126 "I2S3_DO",
0127 "USB_PD_INT_ODL",
0128 "",
0129 "",
0130 "",
0131 "",
0132 "IT6505_HPD_L",
0133 "I2S3_TDM_D3",
0134 "SOC_I2C6_1V8_SCL",
0135 "SOC_I2C6_1V8_SDA",
0136 "DPI_D0",
0137 "DPI_D1",
0138 "DPI_D2",
0139 "DPI_D3",
0140 "DPI_D4",
0141 "DPI_D5",
0142 "DPI_D6",
0143 "DPI_D7",
0144 "DPI_D8",
0145 "DPI_D9",
0146 "DPI_D10",
0147 "DPI_D11",
0148 "DPI_HSYNC",
0149 "DPI_VSYNC",
0150 "DPI_DE",
0151 "DPI_CK",
0152 "AP_MSDC1_CLK",
0153 "AP_MSDC1_DAT3",
0154 "AP_MSDC1_CMD",
0155 "AP_MSDC1_DAT0",
0156 "AP_MSDC1_DAT2",
0157 "AP_MSDC1_DAT1",
0158 "",
0159 "",
0160 "",
0161 "",
0162 "",
0163 "",
0164 "OTG_EN",
0165 "DRVBUS",
0166 "DISP_PWM",
0167 "DSI_TE",
0168 "LCM_RST_1V8",
0169 "AP_CTS_WIFI_RTS",
0170 "AP_RTS_WIFI_CTS",
0171 "SOC_I2C5_1V8_SCL",
0172 "SOC_I2C5_1V8_SDA",
0173 "SOC_I2C3_1V8_SCL",
0174 "SOC_I2C3_1V8_SDA",
0175 "",
0176 "",
0177 "",
0178 "",
0179 "",
0180 "",
0181 "",
0182 "",
0183 "",
0184 "",
0185 "",
0186 "",
0187 "",
0188 "",
0189 "",
0190 "",
0191 "",
0192 "",
0193 "",
0194 "",
0195 "",
0196 "",
0197 "",
0198 "",
0199 "",
0200 "",
0201 "",
0202 "",
0203 "",
0204 "SOC_I2C1_1V8_SDA",
0205 "SOC_I2C0_1V8_SDA",
0206 "SOC_I2C0_1V8_SCL",
0207 "SOC_I2C1_1V8_SCL",
0208 "AP_SPI_H1_MISO",
0209 "AP_SPI_H1_CS_L",
0210 "AP_SPI_H1_MOSI",
0211 "AP_SPI_H1_CLK",
0212 "I2S5_BCK",
0213 "I2S5_LRCK",
0214 "I2S5_DO",
0215 "BOOTBLOCK_EN_L",
0216 "MT8183_KPCOL0",
0217 "SPI_AP_EC_MISO",
0218 "UART_DBG_TX_AP_RX",
0219 "UART_AP_TX_DBG_RX",
0220 "I2S2_MCK",
0221 "I2S2_BCK",
0222 "CLK_5M_WCAM",
0223 "CLK_2M_UCAM",
0224 "I2S2_LRCK",
0225 "I2S2_DI",
0226 "SOC_I2C2_1V8_SCL",
0227 "SOC_I2C2_1V8_SDA",
0228 "SOC_I2C4_1V8_SCL",
0229 "SOC_I2C4_1V8_SDA",
0230 "",
0231 "SCL8",
0232 "SDA8",
0233 "FCAM_PWDN_L",
0234 "",
0235 "",
0236 "",
0237 "",
0238 "",
0239 "",
0240 "",
0241 "",
0242 "",
0243 "",
0244 "",
0245 "",
0246 "",
0247 "",
0248 "",
0249 "",
0250 "",
0251 "",
0252 "",
0253 "",
0254 "",
0255 "",
0256 "",
0257 "",
0258 "",
0259 "I2S_PMIC",
0260 "I2S_PMIC",
0261 "I2S_PMIC",
0262 "I2S_PMIC",
0263 "I2S_PMIC",
0264 "I2S_PMIC",
0265 "I2S_PMIC",
0266 "I2S_PMIC",
0267 "",
0268 "",
0269 "",
0270 "",
0271 "",
0272 "",
0273 /*
0274 * AP_FLASH_WP_L is crossystem ABI. Rev1 schematics
0275 * call it BIOS_FLASH_WP_R_L.
0276 */
0277 "AP_FLASH_WP_L",
0278 "EC_AP_INT_ODL",
0279 "IT6505_INT_ODL",
0280 "H1_INT_OD_L",
0281 "",
0282 "",
0283 "",
0284 "",
0285 "",
0286 "",
0287 "",
0288 "AP_SPI_FLASH_MISO",
0289 "AP_SPI_FLASH_CS_L",
0290 "AP_SPI_FLASH_MOSI",
0291 "AP_SPI_FLASH_CLK",
0292 "DA7219_IRQ",
0293 "",
0294 "",
0295 "",
0296 "",
0297 "",
0298 "",
0299 "",
0300 "",
0301 "",
0302 "",
0303 "",
0304 "",
0305 "",
0306 "",
0307 "",
0308 "",
0309 "",
0310 "",
0311 "",
0312 "",
0313 "",
0314 "",
0315 "",
0316 "",
0317 "",
0318 "";
0319
0320 ppvarp_lcd_en: ppvarp-lcd-en {
0321 pins1 {
0322 pinmux = <PINMUX_GPIO66__FUNC_GPIO66>;
0323 output-low;
0324 };
0325 };
0326
0327 ppvarn_lcd_en: ppvarn-lcd-en {
0328 pins1 {
0329 pinmux = <PINMUX_GPIO166__FUNC_GPIO166>;
0330 output-low;
0331 };
0332 };
0333
0334 pp1800_lcd_en: pp1800-lcd-en {
0335 pins1 {
0336 pinmux = <PINMUX_GPIO36__FUNC_GPIO36>;
0337 output-low;
0338 };
0339 };
0340
0341 open_touch: open_touch {
0342 irq_pin {
0343 pinmux = <PINMUX_GPIO155__FUNC_GPIO155>;
0344 input-enable;
0345 bias-pull-up;
0346 };
0347
0348 rst_pin {
0349 pinmux = <PINMUX_GPIO156__FUNC_GPIO156>;
0350
0351 /*
0352 * The pen driver doesn't currently support driving
0353 * this reset line. By specifying output-high here
0354 * we're relying on the fact that this pin has a default
0355 * pulldown at boot (which makes sure the pen was in
0356 * reset if it was powered) and then we set it high here
0357 * to take it out of reset. Better would be if the pen
0358 * driver could control this and we could remove
0359 * "output-high" here.
0360 */
0361 output-high;
0362 };
0363 };
0364
0365 pen_eject: peneject {
0366 pen_eject {
0367 pinmux = <PINMUX_GPIO6__FUNC_GPIO6>;
0368 input-enable;
0369 /* External pull-up. */
0370 bias-disable;
0371 };
0372 };
0373 };
0374
0375 &qca_wifi {
0376 qcom,ath10k-calibration-variant = "GO_KAKADU";
0377 };
0378
0379 &panel {
0380 status = "okay";
0381 compatible = "boe,tv105wum-nw0";
0382 };