162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0 OR MIT)
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright 2021 Google LLC
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci/dts-v1/;
762306a36Sopenharmony_ci#include "mt8183-kukui.dtsi"
862306a36Sopenharmony_ci#include "mt8183-kukui-audio-ts3a227e-max98357a.dtsi"
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci/ {
1162306a36Sopenharmony_ci	ppvarn_lcd: ppvarn-lcd {
1262306a36Sopenharmony_ci		compatible = "regulator-fixed";
1362306a36Sopenharmony_ci		regulator-name = "ppvarn_lcd";
1462306a36Sopenharmony_ci		pinctrl-names = "default";
1562306a36Sopenharmony_ci		pinctrl-0 = <&ppvarn_lcd_en>;
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci		enable-active-high;
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci		gpio = <&pio 66 GPIO_ACTIVE_HIGH>;
2062306a36Sopenharmony_ci	};
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ci	ppvarp_lcd: ppvarp-lcd {
2362306a36Sopenharmony_ci		compatible = "regulator-fixed";
2462306a36Sopenharmony_ci		regulator-name = "ppvarp_lcd";
2562306a36Sopenharmony_ci		pinctrl-names = "default";
2662306a36Sopenharmony_ci		pinctrl-0 = <&ppvarp_lcd_en>;
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci		enable-active-high;
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci		gpio = <&pio 166 GPIO_ACTIVE_HIGH>;
3162306a36Sopenharmony_ci	};
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci	pp1800_lcd: pp1800-lcd {
3462306a36Sopenharmony_ci		compatible = "regulator-fixed";
3562306a36Sopenharmony_ci		regulator-name = "pp1800_lcd";
3662306a36Sopenharmony_ci		pinctrl-names = "default";
3762306a36Sopenharmony_ci		pinctrl-0 = <&pp1800_lcd_en>;
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci		enable-active-high;
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci		gpio = <&pio 36 GPIO_ACTIVE_HIGH>;
4262306a36Sopenharmony_ci	};
4362306a36Sopenharmony_ci};
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ci&i2c0 {
4662306a36Sopenharmony_ci	status = "okay";
4762306a36Sopenharmony_ci
4862306a36Sopenharmony_ci	touchscreen: touchscreen@10 {
4962306a36Sopenharmony_ci		compatible = "hid-over-i2c";
5062306a36Sopenharmony_ci		reg = <0x10>;
5162306a36Sopenharmony_ci		interrupt-parent = <&pio>;
5262306a36Sopenharmony_ci		interrupts = <155 IRQ_TYPE_LEVEL_LOW>;
5362306a36Sopenharmony_ci		pinctrl-names = "default";
5462306a36Sopenharmony_ci		pinctrl-0 = <&touch_default>;
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ci		post-power-on-delay-ms = <10>;
5762306a36Sopenharmony_ci		hid-descr-addr = <0x0001>;
5862306a36Sopenharmony_ci	};
5962306a36Sopenharmony_ci};
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ci&i2c2 {
6262306a36Sopenharmony_ci        pinctrl-names = "default";
6362306a36Sopenharmony_ci	pinctrl-0 = <&i2c2_pins>;
6462306a36Sopenharmony_ci	status = "okay";
6562306a36Sopenharmony_ci	clock-frequency = <400000>;
6662306a36Sopenharmony_ci	vbus-supply = <&mt6358_vcamio_reg>;
6762306a36Sopenharmony_ci
6862306a36Sopenharmony_ci	eeprom@58 {
6962306a36Sopenharmony_ci		compatible = "atmel,24c64";
7062306a36Sopenharmony_ci		reg = <0x58>;
7162306a36Sopenharmony_ci		pagesize = <32>;
7262306a36Sopenharmony_ci		vcc-supply = <&mt6358_vcamio_reg>;
7362306a36Sopenharmony_ci	};
7462306a36Sopenharmony_ci};
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ci&i2c4 {
7762306a36Sopenharmony_ci        pinctrl-names = "default";
7862306a36Sopenharmony_ci	pinctrl-0 = <&i2c4_pins>;
7962306a36Sopenharmony_ci	status = "okay";
8062306a36Sopenharmony_ci	clock-frequency = <400000>;
8162306a36Sopenharmony_ci	vbus-supply = <&mt6358_vcn18_reg>;
8262306a36Sopenharmony_ci
8362306a36Sopenharmony_ci	eeprom@54 {
8462306a36Sopenharmony_ci		compatible = "atmel,24c64";
8562306a36Sopenharmony_ci		reg = <0x54>;
8662306a36Sopenharmony_ci		pagesize = <32>;
8762306a36Sopenharmony_ci		vcc-supply = <&mt6358_vcn18_reg>;
8862306a36Sopenharmony_ci	};
8962306a36Sopenharmony_ci};
9062306a36Sopenharmony_ci
9162306a36Sopenharmony_ci&mt6358_vcama2_reg {
9262306a36Sopenharmony_ci	regulator-min-microvolt = <2800000>;
9362306a36Sopenharmony_ci	regulator-max-microvolt = <2800000>;
9462306a36Sopenharmony_ci};
9562306a36Sopenharmony_ci
9662306a36Sopenharmony_ci&pio {
9762306a36Sopenharmony_ci	/* 192 lines */
9862306a36Sopenharmony_ci	gpio-line-names =
9962306a36Sopenharmony_ci		"SPI_AP_EC_CS_L",
10062306a36Sopenharmony_ci		"SPI_AP_EC_MOSI",
10162306a36Sopenharmony_ci		"SPI_AP_EC_CLK",
10262306a36Sopenharmony_ci		"I2S3_DO",
10362306a36Sopenharmony_ci		"USB_PD_INT_ODL",
10462306a36Sopenharmony_ci		"",
10562306a36Sopenharmony_ci		"",
10662306a36Sopenharmony_ci		"",
10762306a36Sopenharmony_ci		"",
10862306a36Sopenharmony_ci		"IT6505_HPD_L",
10962306a36Sopenharmony_ci		"I2S3_TDM_D3",
11062306a36Sopenharmony_ci		"SOC_I2C6_1V8_SCL",
11162306a36Sopenharmony_ci		"SOC_I2C6_1V8_SDA",
11262306a36Sopenharmony_ci		"DPI_D0",
11362306a36Sopenharmony_ci		"DPI_D1",
11462306a36Sopenharmony_ci		"DPI_D2",
11562306a36Sopenharmony_ci		"DPI_D3",
11662306a36Sopenharmony_ci		"DPI_D4",
11762306a36Sopenharmony_ci		"DPI_D5",
11862306a36Sopenharmony_ci		"DPI_D6",
11962306a36Sopenharmony_ci		"DPI_D7",
12062306a36Sopenharmony_ci		"DPI_D8",
12162306a36Sopenharmony_ci		"DPI_D9",
12262306a36Sopenharmony_ci		"DPI_D10",
12362306a36Sopenharmony_ci		"DPI_D11",
12462306a36Sopenharmony_ci		"DPI_HSYNC",
12562306a36Sopenharmony_ci		"DPI_VSYNC",
12662306a36Sopenharmony_ci		"DPI_DE",
12762306a36Sopenharmony_ci		"DPI_CK",
12862306a36Sopenharmony_ci		"AP_MSDC1_CLK",
12962306a36Sopenharmony_ci		"AP_MSDC1_DAT3",
13062306a36Sopenharmony_ci		"AP_MSDC1_CMD",
13162306a36Sopenharmony_ci		"AP_MSDC1_DAT0",
13262306a36Sopenharmony_ci		"AP_MSDC1_DAT2",
13362306a36Sopenharmony_ci		"AP_MSDC1_DAT1",
13462306a36Sopenharmony_ci		"",
13562306a36Sopenharmony_ci		"",
13662306a36Sopenharmony_ci		"",
13762306a36Sopenharmony_ci		"",
13862306a36Sopenharmony_ci		"",
13962306a36Sopenharmony_ci		"",
14062306a36Sopenharmony_ci		"OTG_EN",
14162306a36Sopenharmony_ci		"DRVBUS",
14262306a36Sopenharmony_ci		"DISP_PWM",
14362306a36Sopenharmony_ci		"DSI_TE",
14462306a36Sopenharmony_ci		"LCM_RST_1V8",
14562306a36Sopenharmony_ci		"AP_CTS_WIFI_RTS",
14662306a36Sopenharmony_ci		"AP_RTS_WIFI_CTS",
14762306a36Sopenharmony_ci		"SOC_I2C5_1V8_SCL",
14862306a36Sopenharmony_ci		"SOC_I2C5_1V8_SDA",
14962306a36Sopenharmony_ci		"SOC_I2C3_1V8_SCL",
15062306a36Sopenharmony_ci		"SOC_I2C3_1V8_SDA",
15162306a36Sopenharmony_ci		"",
15262306a36Sopenharmony_ci		"",
15362306a36Sopenharmony_ci		"",
15462306a36Sopenharmony_ci		"",
15562306a36Sopenharmony_ci		"",
15662306a36Sopenharmony_ci		"",
15762306a36Sopenharmony_ci		"",
15862306a36Sopenharmony_ci		"",
15962306a36Sopenharmony_ci		"",
16062306a36Sopenharmony_ci		"",
16162306a36Sopenharmony_ci		"",
16262306a36Sopenharmony_ci		"",
16362306a36Sopenharmony_ci		"",
16462306a36Sopenharmony_ci		"",
16562306a36Sopenharmony_ci		"",
16662306a36Sopenharmony_ci		"",
16762306a36Sopenharmony_ci		"",
16862306a36Sopenharmony_ci		"",
16962306a36Sopenharmony_ci		"",
17062306a36Sopenharmony_ci		"",
17162306a36Sopenharmony_ci		"",
17262306a36Sopenharmony_ci		"",
17362306a36Sopenharmony_ci		"",
17462306a36Sopenharmony_ci		"",
17562306a36Sopenharmony_ci		"",
17662306a36Sopenharmony_ci		"",
17762306a36Sopenharmony_ci		"",
17862306a36Sopenharmony_ci		"",
17962306a36Sopenharmony_ci		"",
18062306a36Sopenharmony_ci		"SOC_I2C1_1V8_SDA",
18162306a36Sopenharmony_ci		"SOC_I2C0_1V8_SDA",
18262306a36Sopenharmony_ci		"SOC_I2C0_1V8_SCL",
18362306a36Sopenharmony_ci		"SOC_I2C1_1V8_SCL",
18462306a36Sopenharmony_ci		"AP_SPI_H1_MISO",
18562306a36Sopenharmony_ci		"AP_SPI_H1_CS_L",
18662306a36Sopenharmony_ci		"AP_SPI_H1_MOSI",
18762306a36Sopenharmony_ci		"AP_SPI_H1_CLK",
18862306a36Sopenharmony_ci		"I2S5_BCK",
18962306a36Sopenharmony_ci		"I2S5_LRCK",
19062306a36Sopenharmony_ci		"I2S5_DO",
19162306a36Sopenharmony_ci		"BOOTBLOCK_EN_L",
19262306a36Sopenharmony_ci		"MT8183_KPCOL0",
19362306a36Sopenharmony_ci		"SPI_AP_EC_MISO",
19462306a36Sopenharmony_ci		"UART_DBG_TX_AP_RX",
19562306a36Sopenharmony_ci		"UART_AP_TX_DBG_RX",
19662306a36Sopenharmony_ci		"I2S2_MCK",
19762306a36Sopenharmony_ci		"I2S2_BCK",
19862306a36Sopenharmony_ci		"CLK_5M_WCAM",
19962306a36Sopenharmony_ci		"CLK_2M_UCAM",
20062306a36Sopenharmony_ci		"I2S2_LRCK",
20162306a36Sopenharmony_ci		"I2S2_DI",
20262306a36Sopenharmony_ci		"SOC_I2C2_1V8_SCL",
20362306a36Sopenharmony_ci		"SOC_I2C2_1V8_SDA",
20462306a36Sopenharmony_ci		"SOC_I2C4_1V8_SCL",
20562306a36Sopenharmony_ci		"SOC_I2C4_1V8_SDA",
20662306a36Sopenharmony_ci		"",
20762306a36Sopenharmony_ci		"SCL8",
20862306a36Sopenharmony_ci		"SDA8",
20962306a36Sopenharmony_ci		"FCAM_PWDN_L",
21062306a36Sopenharmony_ci		"",
21162306a36Sopenharmony_ci		"",
21262306a36Sopenharmony_ci		"",
21362306a36Sopenharmony_ci		"",
21462306a36Sopenharmony_ci		"",
21562306a36Sopenharmony_ci		"",
21662306a36Sopenharmony_ci		"",
21762306a36Sopenharmony_ci		"",
21862306a36Sopenharmony_ci		"",
21962306a36Sopenharmony_ci		"",
22062306a36Sopenharmony_ci		"",
22162306a36Sopenharmony_ci		"",
22262306a36Sopenharmony_ci		"",
22362306a36Sopenharmony_ci		"",
22462306a36Sopenharmony_ci		"",
22562306a36Sopenharmony_ci		"",
22662306a36Sopenharmony_ci		"",
22762306a36Sopenharmony_ci		"",
22862306a36Sopenharmony_ci		"",
22962306a36Sopenharmony_ci		"",
23062306a36Sopenharmony_ci		"",
23162306a36Sopenharmony_ci		"",
23262306a36Sopenharmony_ci		"",
23362306a36Sopenharmony_ci		"",
23462306a36Sopenharmony_ci		"",
23562306a36Sopenharmony_ci		"I2S_PMIC",
23662306a36Sopenharmony_ci		"I2S_PMIC",
23762306a36Sopenharmony_ci		"I2S_PMIC",
23862306a36Sopenharmony_ci		"I2S_PMIC",
23962306a36Sopenharmony_ci		"I2S_PMIC",
24062306a36Sopenharmony_ci		"I2S_PMIC",
24162306a36Sopenharmony_ci		"I2S_PMIC",
24262306a36Sopenharmony_ci		"I2S_PMIC",
24362306a36Sopenharmony_ci		"",
24462306a36Sopenharmony_ci		"",
24562306a36Sopenharmony_ci		"",
24662306a36Sopenharmony_ci		"",
24762306a36Sopenharmony_ci		"",
24862306a36Sopenharmony_ci		"",
24962306a36Sopenharmony_ci		/*
25062306a36Sopenharmony_ci		 * AP_FLASH_WP_L is crossystem ABI. Rev1 schematics
25162306a36Sopenharmony_ci		 * call it BIOS_FLASH_WP_R_L.
25262306a36Sopenharmony_ci		 */
25362306a36Sopenharmony_ci		"AP_FLASH_WP_L",
25462306a36Sopenharmony_ci		"EC_AP_INT_ODL",
25562306a36Sopenharmony_ci		"IT6505_INT_ODL",
25662306a36Sopenharmony_ci		"H1_INT_OD_L",
25762306a36Sopenharmony_ci		"",
25862306a36Sopenharmony_ci		"",
25962306a36Sopenharmony_ci		"",
26062306a36Sopenharmony_ci		"",
26162306a36Sopenharmony_ci		"",
26262306a36Sopenharmony_ci		"",
26362306a36Sopenharmony_ci		"",
26462306a36Sopenharmony_ci		"AP_SPI_FLASH_MISO",
26562306a36Sopenharmony_ci		"AP_SPI_FLASH_CS_L",
26662306a36Sopenharmony_ci		"AP_SPI_FLASH_MOSI",
26762306a36Sopenharmony_ci		"AP_SPI_FLASH_CLK",
26862306a36Sopenharmony_ci		"DA7219_IRQ",
26962306a36Sopenharmony_ci		"",
27062306a36Sopenharmony_ci		"",
27162306a36Sopenharmony_ci		"",
27262306a36Sopenharmony_ci		"",
27362306a36Sopenharmony_ci		"",
27462306a36Sopenharmony_ci		"",
27562306a36Sopenharmony_ci		"",
27662306a36Sopenharmony_ci		"",
27762306a36Sopenharmony_ci		"",
27862306a36Sopenharmony_ci		"",
27962306a36Sopenharmony_ci		"",
28062306a36Sopenharmony_ci		"",
28162306a36Sopenharmony_ci		"",
28262306a36Sopenharmony_ci		"",
28362306a36Sopenharmony_ci		"",
28462306a36Sopenharmony_ci		"",
28562306a36Sopenharmony_ci		"",
28662306a36Sopenharmony_ci		"",
28762306a36Sopenharmony_ci		"",
28862306a36Sopenharmony_ci		"",
28962306a36Sopenharmony_ci		"",
29062306a36Sopenharmony_ci		"",
29162306a36Sopenharmony_ci		"",
29262306a36Sopenharmony_ci		"",
29362306a36Sopenharmony_ci		"",
29462306a36Sopenharmony_ci		"";
29562306a36Sopenharmony_ci
29662306a36Sopenharmony_ci	ppvarp_lcd_en: ppvarp-lcd-en {
29762306a36Sopenharmony_ci		pins1 {
29862306a36Sopenharmony_ci			pinmux = <PINMUX_GPIO66__FUNC_GPIO66>;
29962306a36Sopenharmony_ci			output-low;
30062306a36Sopenharmony_ci		};
30162306a36Sopenharmony_ci	};
30262306a36Sopenharmony_ci
30362306a36Sopenharmony_ci	ppvarn_lcd_en: ppvarn-lcd-en {
30462306a36Sopenharmony_ci		pins1 {
30562306a36Sopenharmony_ci			pinmux = <PINMUX_GPIO166__FUNC_GPIO166>;
30662306a36Sopenharmony_ci			output-low;
30762306a36Sopenharmony_ci		};
30862306a36Sopenharmony_ci	};
30962306a36Sopenharmony_ci
31062306a36Sopenharmony_ci	pp1800_lcd_en: pp1800-lcd-en {
31162306a36Sopenharmony_ci		pins1 {
31262306a36Sopenharmony_ci			pinmux = <PINMUX_GPIO36__FUNC_GPIO36>;
31362306a36Sopenharmony_ci			output-low;
31462306a36Sopenharmony_ci		};
31562306a36Sopenharmony_ci	};
31662306a36Sopenharmony_ci
31762306a36Sopenharmony_ci	touch_default: touchdefault {
31862306a36Sopenharmony_ci		pin_irq {
31962306a36Sopenharmony_ci			pinmux = <PINMUX_GPIO155__FUNC_GPIO155>;
32062306a36Sopenharmony_ci			input-enable;
32162306a36Sopenharmony_ci			bias-pull-up;
32262306a36Sopenharmony_ci		};
32362306a36Sopenharmony_ci
32462306a36Sopenharmony_ci		touch_pin_reset: pin_reset {
32562306a36Sopenharmony_ci			pinmux = <PINMUX_GPIO156__FUNC_GPIO156>;
32662306a36Sopenharmony_ci
32762306a36Sopenharmony_ci			/*
32862306a36Sopenharmony_ci			 * The touchscreen driver doesn't currently support driving
32962306a36Sopenharmony_ci			 * this reset line.  By specifying output-high here
33062306a36Sopenharmony_ci			 * we're relying on the fact that this pin has a default
33162306a36Sopenharmony_ci			 * pulldown at boot (which makes sure the controller was in
33262306a36Sopenharmony_ci			 * reset if it was powered) and then we set it high here
33362306a36Sopenharmony_ci			 * to take it out of reset.  Better would be if the touchscreen
33462306a36Sopenharmony_ci			 * driver could control this and we could remove
33562306a36Sopenharmony_ci			 * "output-high" here.
33662306a36Sopenharmony_ci			 */
33762306a36Sopenharmony_ci			output-high;
33862306a36Sopenharmony_ci		};
33962306a36Sopenharmony_ci	};
34062306a36Sopenharmony_ci};
34162306a36Sopenharmony_ci
34262306a36Sopenharmony_ci&cros_ec {
34362306a36Sopenharmony_ci	cbas {
34462306a36Sopenharmony_ci		compatible = "google,cros-cbas";
34562306a36Sopenharmony_ci	};
34662306a36Sopenharmony_ci
34762306a36Sopenharmony_ci	keyboard-controller {
34862306a36Sopenharmony_ci		compatible = "google,cros-ec-keyb-switches";
34962306a36Sopenharmony_ci	};
35062306a36Sopenharmony_ci};
35162306a36Sopenharmony_ci
35262306a36Sopenharmony_ci&qca_wifi {
35362306a36Sopenharmony_ci	qcom,ath10k-calibration-variant = "GO_KODAMA";
35462306a36Sopenharmony_ci};
35562306a36Sopenharmony_ci
35662306a36Sopenharmony_ci&i2c_tunnel {
35762306a36Sopenharmony_ci        google,remote-bus = <2>;
35862306a36Sopenharmony_ci};
359