108260782SDouglas Anderson// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
208260782SDouglas Anderson/*
308260782SDouglas Anderson * Google Pompom board device tree source
408260782SDouglas Anderson *
508260782SDouglas Anderson * Copyright 2020 Google LLC.
608260782SDouglas Anderson */
708260782SDouglas Anderson
808260782SDouglas Anderson#include "sc7180.dtsi"
908260782SDouglas Anderson
1008260782SDouglas Andersonap_ec_spi: &spi6 {};
1108260782SDouglas Andersonap_h1_spi: &spi0 {};
1208260782SDouglas Anderson
1308260782SDouglas Anderson#include "sc7180-trogdor.dtsi"
144537977aSPhilip Chen#include "sc7180-trogdor-ti-sn65dsi86.dtsi"
1508260782SDouglas Anderson
1608260782SDouglas Anderson/ {
1708260782SDouglas Anderson	thermal-zones {
1808260782SDouglas Anderson		5v-choke-thermal {
1908260782SDouglas Anderson			polling-delay-passive = <0>;
2008260782SDouglas Anderson			polling-delay = <250>;
2108260782SDouglas Anderson
2208260782SDouglas Anderson			thermal-sensors = <&pm6150_adc_tm 1>;
2308260782SDouglas Anderson
2408260782SDouglas Anderson			trips {
2508260782SDouglas Anderson				5v-choke-crit {
2608260782SDouglas Anderson					temperature = <125000>;
2708260782SDouglas Anderson					hysteresis = <1000>;
2808260782SDouglas Anderson					type = "critical";
2908260782SDouglas Anderson				};
3008260782SDouglas Anderson			};
3108260782SDouglas Anderson		};
3208260782SDouglas Anderson	};
3308260782SDouglas Anderson};
3408260782SDouglas Anderson
3508260782SDouglas Anderson&alc5682 {
3608260782SDouglas Anderson	realtek,dmic-clk-driving-high = "true";
3708260782SDouglas Anderson};
3808260782SDouglas Anderson
39*51d30402SStephen Boyd&ap_tp_i2c {
40*51d30402SStephen Boyd	status = "okay";
41*51d30402SStephen Boyd};
42*51d30402SStephen Boyd
4308260782SDouglas Anderson&cpu6_alert0 {
4408260782SDouglas Anderson	temperature = <60000>;
4508260782SDouglas Anderson};
4608260782SDouglas Anderson
4708260782SDouglas Anderson&cpu6_alert1 {
4808260782SDouglas Anderson	temperature = <65000>;
4908260782SDouglas Anderson};
5008260782SDouglas Anderson
5108260782SDouglas Anderson&cpu6_thermal {
5282ea7d41SDouglas Anderson	sustainable-power = <1124>;
5308260782SDouglas Anderson};
5408260782SDouglas Anderson
5508260782SDouglas Anderson&cpu7_alert0 {
5608260782SDouglas Anderson	temperature = <60000>;
5708260782SDouglas Anderson};
5808260782SDouglas Anderson
5908260782SDouglas Anderson&cpu7_alert1 {
6008260782SDouglas Anderson	temperature = <65000>;
6108260782SDouglas Anderson};
6208260782SDouglas Anderson
6308260782SDouglas Anderson&cpu7_thermal {
6482ea7d41SDouglas Anderson	sustainable-power = <1124>;
6508260782SDouglas Anderson};
6608260782SDouglas Anderson
6708260782SDouglas Anderson&cpu8_alert0 {
6808260782SDouglas Anderson	temperature = <60000>;
6908260782SDouglas Anderson};
7008260782SDouglas Anderson
7108260782SDouglas Anderson&cpu8_alert1 {
7208260782SDouglas Anderson	temperature = <65000>;
7308260782SDouglas Anderson};
7408260782SDouglas Anderson
7508260782SDouglas Anderson&cpu8_thermal {
7682ea7d41SDouglas Anderson	sustainable-power = <1124>;
7708260782SDouglas Anderson};
7808260782SDouglas Anderson
7908260782SDouglas Anderson&cpu9_alert0 {
8008260782SDouglas Anderson	temperature = <60000>;
8108260782SDouglas Anderson};
8208260782SDouglas Anderson
8308260782SDouglas Anderson&cpu9_alert1 {
8408260782SDouglas Anderson	temperature = <65000>;
8508260782SDouglas Anderson};
8608260782SDouglas Anderson
8708260782SDouglas Anderson&cpu9_thermal {
8882ea7d41SDouglas Anderson	sustainable-power = <1124>;
8908260782SDouglas Anderson};
9008260782SDouglas Anderson
9108260782SDouglas Anderson&gpio_keys {
9208260782SDouglas Anderson	status = "okay";
9308260782SDouglas Anderson};
9408260782SDouglas Anderson
9508260782SDouglas Andersonap_ts_pen_1v8: &i2c4 {
9608260782SDouglas Anderson	status = "okay";
9708260782SDouglas Anderson	clock-frequency = <400000>;
9808260782SDouglas Anderson
9908260782SDouglas Anderson	ap_ts: touchscreen@10 {
10008260782SDouglas Anderson		compatible = "hid-over-i2c";
10108260782SDouglas Anderson		reg = <0x10>;
10208260782SDouglas Anderson		pinctrl-names = "default";
10308260782SDouglas Anderson		pinctrl-0 = <&ts_int_l>, <&ts_reset_l>;
10408260782SDouglas Anderson
10508260782SDouglas Anderson		interrupt-parent = <&tlmm>;
10608260782SDouglas Anderson		interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
10708260782SDouglas Anderson
10808260782SDouglas Anderson		post-power-on-delay-ms = <20>;
10908260782SDouglas Anderson		hid-descr-addr = <0x0001>;
11008260782SDouglas Anderson
11108260782SDouglas Anderson		vdd-supply = <&pp3300_ts>;
11208260782SDouglas Anderson	};
11308260782SDouglas Anderson};
11408260782SDouglas Anderson
115ad6fc143SMatthias Kaehlcke&keyboard_controller {
116ad6fc143SMatthias Kaehlcke	function-row-physmap = <
117ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x00, 0x02, 0)	/* T1 */
118ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x03, 0x02, 0)	/* T2 */
119ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x02, 0x02, 0)	/* T3 */
120ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x01, 0x02, 0)	/* T4 */
121ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x03, 0x04, 0)	/* T5 */
122ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x02, 0x04, 0)	/* T6 */
123ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x01, 0x04, 0)	/* T7 */
124ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x02, 0x09, 0)	/* T8 */
125ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x01, 0x09, 0)	/* T9 */
126ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x00, 0x04, 0)	/* T10 */
127ad6fc143SMatthias Kaehlcke	>;
128ad6fc143SMatthias Kaehlcke	linux,keymap = <
129ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x00, 0x02, KEY_BACK)
130ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x03, 0x02, KEY_REFRESH)
131ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x02, 0x02, KEY_ZOOM)
132ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x01, 0x02, KEY_SCALE)
133ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x03, 0x04, KEY_SYSRQ)
134ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x02, 0x04, KEY_BRIGHTNESSDOWN)
135ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x01, 0x04, KEY_BRIGHTNESSUP)
136ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x02, 0x09, KEY_MUTE)
137ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x01, 0x09, KEY_VOLUMEDOWN)
138ad6fc143SMatthias Kaehlcke		MATRIX_KEY(0x00, 0x04, KEY_VOLUMEUP)
139ad6fc143SMatthias Kaehlcke
140ad6fc143SMatthias Kaehlcke		CROS_STD_MAIN_KEYMAP
141ad6fc143SMatthias Kaehlcke	>;
142ad6fc143SMatthias Kaehlcke};
143ad6fc143SMatthias Kaehlcke
14408260782SDouglas Anderson&panel {
14508260782SDouglas Anderson	compatible = "kingdisplay,kd116n21-30nv-a010";
14608260782SDouglas Anderson};
14708260782SDouglas Anderson
14808260782SDouglas Anderson&pen_insert {
14908260782SDouglas Anderson	/* Insert = high, eject = low */
15008260782SDouglas Anderson	gpios = <&tlmm 52 GPIO_ACTIVE_HIGH>;
15108260782SDouglas Anderson};
15208260782SDouglas Anderson
15308260782SDouglas Anderson&pm6150_adc {
15408260782SDouglas Anderson	5v-choke-thermistor@4e {
15508260782SDouglas Anderson		reg = <ADC5_AMUX_THM2_100K_PU>;
15608260782SDouglas Anderson		qcom,ratiometric;
15708260782SDouglas Anderson		qcom,hw-settle-time = <200>;
15808260782SDouglas Anderson	};
15908260782SDouglas Anderson};
16008260782SDouglas Anderson
16108260782SDouglas Anderson&pm6150_adc_tm {
16208260782SDouglas Anderson	status = "okay";
16308260782SDouglas Anderson
16408260782SDouglas Anderson	5v-choke-thermistor@1 {
16508260782SDouglas Anderson		reg = <1>;
16608260782SDouglas Anderson		io-channels = <&pm6150_adc ADC5_AMUX_THM2_100K_PU>;
16708260782SDouglas Anderson		qcom,ratiometric;
16808260782SDouglas Anderson		qcom,hw-settle-time-us = <200>;
16908260782SDouglas Anderson	};
17008260782SDouglas Anderson};
17108260782SDouglas Anderson
17208260782SDouglas Anderson&sdhc_2 {
17308260782SDouglas Anderson	status = "okay";
17408260782SDouglas Anderson};
17508260782SDouglas Anderson
176108ec20bSDouglas Anderson&sound {
177108ec20bSDouglas Anderson	model = "sc7180-rt5682-max98357a-2mic";
178108ec20bSDouglas Anderson	pinctrl-names = "default";
179108ec20bSDouglas Anderson	pinctrl-0 = <&dmic_sel>;
180108ec20bSDouglas Anderson	dmic-gpios = <&tlmm 86 GPIO_ACTIVE_HIGH>;
181108ec20bSDouglas Anderson};
182108ec20bSDouglas Anderson
18308260782SDouglas Anderson&usb_c1 {
18408260782SDouglas Anderson	status = "disabled";
18508260782SDouglas Anderson};
18608260782SDouglas Anderson
18708260782SDouglas Anderson&wifi {
18808260782SDouglas Anderson	qcom,ath10k-calibration-variant = "GO_POMPOM";
18908260782SDouglas Anderson};
19008260782SDouglas Anderson
19108260782SDouglas Anderson/* PINCTRL - board-specific pinctrl */
19208260782SDouglas Anderson
19308260782SDouglas Anderson&tlmm {
19408260782SDouglas Anderson	gpio-line-names = "TP_INT_ODL",
19508260782SDouglas Anderson			  "AP_RAM_ID0",
19608260782SDouglas Anderson			  "AP_SKU_ID2",
19708260782SDouglas Anderson			  "AP_RAM_ID1",
19808260782SDouglas Anderson			  "",
19908260782SDouglas Anderson			  "AP_RAM_ID2",
20008260782SDouglas Anderson			  "AP_TP_I2C_SDA",
20108260782SDouglas Anderson			  "AP_TP_I2C_SCL",
20208260782SDouglas Anderson			  "TS_RESET_L",
20308260782SDouglas Anderson			  "TS_INT_L",
20408260782SDouglas Anderson			  "",
20508260782SDouglas Anderson			  "EDP_BRIJ_IRQ",
20608260782SDouglas Anderson			  "AP_EDP_BKLTEN",
20708260782SDouglas Anderson			  "",
20808260782SDouglas Anderson			  "",
20908260782SDouglas Anderson			  "EDP_BRIJ_I2C_SDA",
21008260782SDouglas Anderson			  "EDP_BRIJ_I2C_SCL",
21108260782SDouglas Anderson			  "HUB_RST_L",
21208260782SDouglas Anderson			  "",
21308260782SDouglas Anderson			  "",
21408260782SDouglas Anderson			  "",
21508260782SDouglas Anderson			  "",
21608260782SDouglas Anderson			  "",
21708260782SDouglas Anderson			  "AMP_EN",
21808260782SDouglas Anderson			  "P_SENSOR_INT_L",
21908260782SDouglas Anderson			  "AP_SAR_SENSOR_SDA",
22008260782SDouglas Anderson			  "AP_SAR_SENSOR_SCL",
22108260782SDouglas Anderson			  "",
22208260782SDouglas Anderson			  "HP_IRQ",
22308260782SDouglas Anderson			  "",
22408260782SDouglas Anderson			  "EN_PP3300_DX_EDP",
22508260782SDouglas Anderson			  "AP_BRD_ID2",
22608260782SDouglas Anderson			  "BRIJ_SUSPEND",
22708260782SDouglas Anderson			  "AP_BRD_ID0",
22808260782SDouglas Anderson			  "AP_H1_SPI_MISO",
22908260782SDouglas Anderson			  "AP_H1_SPI_MOSI",
23008260782SDouglas Anderson			  "AP_H1_SPI_CLK",
23108260782SDouglas Anderson			  "AP_H1_SPI_CS_L",
23208260782SDouglas Anderson			  "",
23308260782SDouglas Anderson			  "",
23408260782SDouglas Anderson			  "",
23508260782SDouglas Anderson			  "",
23608260782SDouglas Anderson			  "H1_AP_INT_ODL",
23708260782SDouglas Anderson			  "",
23808260782SDouglas Anderson			  "UART_AP_TX_DBG_RX",
23908260782SDouglas Anderson			  "UART_DBG_TX_AP_RX",
24008260782SDouglas Anderson			  "HP_I2C_SDA",
24108260782SDouglas Anderson			  "HP_I2C_SCL",
24208260782SDouglas Anderson			  "FORCED_USB_BOOT",
24308260782SDouglas Anderson			  "AMP_BCLK",
24408260782SDouglas Anderson			  "AMP_LRCLK",
24508260782SDouglas Anderson			  "AMP_DIN",
24608260782SDouglas Anderson			  "PEN_PDCT_L",
24708260782SDouglas Anderson			  "HP_BCLK",
24808260782SDouglas Anderson			  "HP_LRCLK",
24908260782SDouglas Anderson			  "HP_DOUT",
25008260782SDouglas Anderson			  "HP_DIN",
25108260782SDouglas Anderson			  "HP_MCLK",
25208260782SDouglas Anderson			  "AP_SKU_ID0",
25308260782SDouglas Anderson			  "AP_EC_SPI_MISO",
25408260782SDouglas Anderson			  "AP_EC_SPI_MOSI",
25508260782SDouglas Anderson			  "AP_EC_SPI_CLK",
25608260782SDouglas Anderson			  "AP_EC_SPI_CS_L",
25708260782SDouglas Anderson			  "AP_SPI_CLK",
25808260782SDouglas Anderson			  "AP_SPI_MOSI",
25908260782SDouglas Anderson			  "AP_SPI_MISO",
26008260782SDouglas Anderson			  /*
26108260782SDouglas Anderson			   * AP_FLASH_WP_L is crossystem ABI. Schematics
26208260782SDouglas Anderson			   * call it BIOS_FLASH_WP_L.
26308260782SDouglas Anderson			   */
26408260782SDouglas Anderson			  "AP_FLASH_WP_L",
26508260782SDouglas Anderson			  "",
26608260782SDouglas Anderson			  "AP_SPI_CS0_L",
26708260782SDouglas Anderson			  "SD_CD_ODL",
26808260782SDouglas Anderson			  "",
26908260782SDouglas Anderson			  "",
27008260782SDouglas Anderson			  "",
27108260782SDouglas Anderson			  "",
27208260782SDouglas Anderson			  "",
27308260782SDouglas Anderson			  "UIM2_DATA",
27408260782SDouglas Anderson			  "UIM2_CLK",
27508260782SDouglas Anderson			  "UIM2_RST",
27608260782SDouglas Anderson			  "UIM2_PRESENT",
27708260782SDouglas Anderson			  "UIM1_DATA",
27808260782SDouglas Anderson			  "UIM1_CLK",
27908260782SDouglas Anderson			  "UIM1_RST",
28008260782SDouglas Anderson			  "",
28108260782SDouglas Anderson			  "EN_PP3300_CODEC",
28208260782SDouglas Anderson			  "EN_PP3300_HUB",
28308260782SDouglas Anderson			  "",
28408260782SDouglas Anderson			  "DMIC_SEL",
28508260782SDouglas Anderson			  "",
28608260782SDouglas Anderson			  "",
28708260782SDouglas Anderson			  "",
28808260782SDouglas Anderson			  "AP_SKU_ID1",
28908260782SDouglas Anderson			  "AP_RST_REQ",
29008260782SDouglas Anderson			  "",
29108260782SDouglas Anderson			  "AP_BRD_ID1",
29208260782SDouglas Anderson			  "AP_EC_INT_R_L",
29308260782SDouglas Anderson			  "",
29408260782SDouglas Anderson			  "",
29508260782SDouglas Anderson			  "",
29608260782SDouglas Anderson			  "",
29708260782SDouglas Anderson			  "",
29808260782SDouglas Anderson			  "",
29908260782SDouglas Anderson			  "",
30008260782SDouglas Anderson			  "",
30108260782SDouglas Anderson			  "",
30208260782SDouglas Anderson			  "EDP_BRIJ_EN",
30308260782SDouglas Anderson			  "",
30408260782SDouglas Anderson			  "",
30508260782SDouglas Anderson			  "",
30608260782SDouglas Anderson			  "",
30708260782SDouglas Anderson			  "",
30808260782SDouglas Anderson			  "",
30908260782SDouglas Anderson			  "",
31008260782SDouglas Anderson			  "",
31108260782SDouglas Anderson			  "",
31208260782SDouglas Anderson			  "",
31308260782SDouglas Anderson			  "AP_TS_PEN_I2C_SDA",
31408260782SDouglas Anderson			  "AP_TS_PEN_I2C_SCL",
31508260782SDouglas Anderson			  "DP_HOT_PLUG_DET",
31608260782SDouglas Anderson			  "EC_IN_RW_ODL";
31708260782SDouglas Anderson
31808260782SDouglas Anderson	dmic_sel: dmic-sel {
31908260782SDouglas Anderson		pinmux {
32008260782SDouglas Anderson			pins = "gpio86";
32108260782SDouglas Anderson			function = "gpio";
32208260782SDouglas Anderson		};
32308260782SDouglas Anderson
32408260782SDouglas Anderson		pinconf {
32508260782SDouglas Anderson			pins = "gpio86";
32608260782SDouglas Anderson			bias-pull-down;
32708260782SDouglas Anderson		};
32808260782SDouglas Anderson	};
32908260782SDouglas Anderson};
330