1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Google Pompom board device tree source
4 *
5 * Copyright 2020 Google LLC.
6 */
7
8#include "sc7180-trogdor.dtsi"
9/* Must come after sc7180-trogdor.dtsi to modify cros_ec */
10#include <arm/cros-ec-keyboard.dtsi>
11#include "sc7180-trogdor-rt5682i-sku.dtsi"
12#include "sc7180-trogdor-ti-sn65dsi86.dtsi"
13
14/ {
15	thermal-zones {
16		5v-choke-thermal {
17			polling-delay-passive = <0>;
18			polling-delay = <250>;
19
20			thermal-sensors = <&pm6150_adc_tm 1>;
21
22			trips {
23				5v-choke-crit {
24					temperature = <125000>;
25					hysteresis = <1000>;
26					type = "critical";
27				};
28			};
29		};
30	};
31};
32
33&alc5682 {
34	realtek,dmic-clk-driving-high;
35};
36
37&ap_tp_i2c {
38	status = "okay";
39};
40
41&cpu6_alert0 {
42	temperature = <60000>;
43};
44
45&cpu6_alert1 {
46	temperature = <65000>;
47};
48
49&cpu6_thermal {
50	sustainable-power = <1124>;
51};
52
53&cpu7_alert0 {
54	temperature = <60000>;
55};
56
57&cpu7_alert1 {
58	temperature = <65000>;
59};
60
61&cpu7_thermal {
62	sustainable-power = <1124>;
63};
64
65&cpu8_alert0 {
66	temperature = <60000>;
67};
68
69&cpu8_alert1 {
70	temperature = <65000>;
71};
72
73&cpu8_thermal {
74	sustainable-power = <1124>;
75};
76
77&cpu9_alert0 {
78	temperature = <60000>;
79};
80
81&cpu9_alert1 {
82	temperature = <65000>;
83};
84
85&cpu9_thermal {
86	sustainable-power = <1124>;
87};
88
89&gpio_keys {
90	status = "okay";
91};
92
93ap_ts_pen_1v8: &i2c4 {
94	status = "okay";
95	clock-frequency = <400000>;
96
97	ap_ts: touchscreen@10 {
98		compatible = "hid-over-i2c";
99		reg = <0x10>;
100		pinctrl-names = "default";
101		pinctrl-0 = <&ts_int_l>, <&ts_reset_l>;
102
103		interrupt-parent = <&tlmm>;
104		interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
105
106		panel = <&panel>;
107		post-power-on-delay-ms = <20>;
108		hid-descr-addr = <0x0001>;
109
110		vdd-supply = <&pp3300_ts>;
111	};
112};
113
114&keyboard_controller {
115	function-row-physmap = <
116		MATRIX_KEY(0x00, 0x02, 0)	/* T1 */
117		MATRIX_KEY(0x03, 0x02, 0)	/* T2 */
118		MATRIX_KEY(0x02, 0x02, 0)	/* T3 */
119		MATRIX_KEY(0x01, 0x02, 0)	/* T4 */
120		MATRIX_KEY(0x03, 0x04, 0)	/* T5 */
121		MATRIX_KEY(0x02, 0x04, 0)	/* T6 */
122		MATRIX_KEY(0x01, 0x04, 0)	/* T7 */
123		MATRIX_KEY(0x02, 0x09, 0)	/* T8 */
124		MATRIX_KEY(0x01, 0x09, 0)	/* T9 */
125		MATRIX_KEY(0x00, 0x04, 0)	/* T10 */
126	>;
127	linux,keymap = <
128		MATRIX_KEY(0x00, 0x02, KEY_BACK)
129		MATRIX_KEY(0x03, 0x02, KEY_REFRESH)
130		MATRIX_KEY(0x02, 0x02, KEY_ZOOM)
131		MATRIX_KEY(0x01, 0x02, KEY_SCALE)
132		MATRIX_KEY(0x03, 0x04, KEY_SYSRQ)
133		MATRIX_KEY(0x02, 0x04, KEY_BRIGHTNESSDOWN)
134		MATRIX_KEY(0x01, 0x04, KEY_BRIGHTNESSUP)
135		MATRIX_KEY(0x02, 0x09, KEY_MUTE)
136		MATRIX_KEY(0x01, 0x09, KEY_VOLUMEDOWN)
137		MATRIX_KEY(0x00, 0x04, KEY_VOLUMEUP)
138
139		CROS_STD_MAIN_KEYMAP
140	>;
141};
142
143&panel {
144	compatible = "edp-panel";
145};
146
147&pen_insert {
148	/* Insert = high, eject = low */
149	gpios = <&tlmm 52 GPIO_ACTIVE_HIGH>;
150};
151
152&pm6150_adc {
153	channel@4e {
154		reg = <ADC5_AMUX_THM2_100K_PU>;
155		qcom,ratiometric;
156		qcom,hw-settle-time = <200>;
157		label = "5v_choke_therm";
158	};
159};
160
161&pm6150_adc_tm {
162	status = "okay";
163
164	5v-choke-thermistor@1 {
165		reg = <1>;
166		io-channels = <&pm6150_adc ADC5_AMUX_THM2_100K_PU>;
167		qcom,ratiometric;
168		qcom,hw-settle-time-us = <200>;
169	};
170};
171
172&sdhc_2 {
173	status = "okay";
174};
175
176&sound {
177	model = "sc7180-rt5682-max98357a-2mic";
178	pinctrl-names = "default";
179	pinctrl-0 = <&dmic_sel>;
180	dmic-gpios = <&tlmm 86 GPIO_ACTIVE_HIGH>;
181};
182
183&usb_c1 {
184	status = "disabled";
185};
186
187&wifi {
188	qcom,ath10k-calibration-variant = "GO_POMPOM";
189};
190
191/* PINCTRL - board-specific pinctrl */
192
193&tlmm {
194	gpio-line-names = "TP_INT_ODL",
195			  "AP_RAM_ID0",
196			  "AP_SKU_ID2",
197			  "AP_RAM_ID1",
198			  "",
199			  "AP_RAM_ID2",
200			  "AP_TP_I2C_SDA",
201			  "AP_TP_I2C_SCL",
202			  "TS_RESET_L",
203			  "TS_INT_L",
204			  "",
205			  "EDP_BRIJ_IRQ",
206			  "AP_EDP_BKLTEN",
207			  "",
208			  "",
209			  "EDP_BRIJ_I2C_SDA",
210			  "EDP_BRIJ_I2C_SCL",
211			  "HUB_RST_L",
212			  "",
213			  "",
214			  "",
215			  "",
216			  "",
217			  "AMP_EN",
218			  "P_SENSOR_INT_L",
219			  "AP_SAR_SENSOR_SDA",
220			  "AP_SAR_SENSOR_SCL",
221			  "",
222			  "HP_IRQ",
223			  "",
224			  "EN_PP3300_DX_EDP",
225			  "AP_BRD_ID2",
226			  "BRIJ_SUSPEND",
227			  "AP_BRD_ID0",
228			  "AP_H1_SPI_MISO",
229			  "AP_H1_SPI_MOSI",
230			  "AP_H1_SPI_CLK",
231			  "AP_H1_SPI_CS_L",
232			  "",
233			  "",
234			  "",
235			  "",
236			  "H1_AP_INT_ODL",
237			  "",
238			  "UART_AP_TX_DBG_RX",
239			  "UART_DBG_TX_AP_RX",
240			  "HP_I2C_SDA",
241			  "HP_I2C_SCL",
242			  "FORCED_USB_BOOT",
243			  "AMP_BCLK",
244			  "AMP_LRCLK",
245			  "AMP_DIN",
246			  "PEN_PDCT_L",
247			  "HP_BCLK",
248			  "HP_LRCLK",
249			  "HP_DOUT",
250			  "HP_DIN",
251			  "HP_MCLK",
252			  "AP_SKU_ID0",
253			  "AP_EC_SPI_MISO",
254			  "AP_EC_SPI_MOSI",
255			  "AP_EC_SPI_CLK",
256			  "AP_EC_SPI_CS_L",
257			  "AP_SPI_CLK",
258			  "AP_SPI_MOSI",
259			  "AP_SPI_MISO",
260			  /*
261			   * AP_FLASH_WP_L is crossystem ABI. Schematics
262			   * call it BIOS_FLASH_WP_L.
263			   */
264			  "AP_FLASH_WP_L",
265			  "",
266			  "AP_SPI_CS0_L",
267			  "SD_CD_ODL",
268			  "",
269			  "",
270			  "",
271			  "",
272			  "",
273			  "UIM2_DATA",
274			  "UIM2_CLK",
275			  "UIM2_RST",
276			  "UIM2_PRESENT",
277			  "UIM1_DATA",
278			  "UIM1_CLK",
279			  "UIM1_RST",
280			  "",
281			  "EN_PP3300_CODEC",
282			  "EN_PP3300_HUB",
283			  "",
284			  "DMIC_SEL",
285			  "",
286			  "",
287			  "",
288			  "AP_SKU_ID1",
289			  "AP_RST_REQ",
290			  "",
291			  "AP_BRD_ID1",
292			  "AP_EC_INT_R_L",
293			  "",
294			  "",
295			  "",
296			  "",
297			  "",
298			  "",
299			  "",
300			  "",
301			  "",
302			  "EDP_BRIJ_EN",
303			  "",
304			  "",
305			  "",
306			  "",
307			  "",
308			  "",
309			  "",
310			  "",
311			  "",
312			  "",
313			  "AP_TS_PEN_I2C_SDA",
314			  "AP_TS_PEN_I2C_SCL",
315			  "DP_HOT_PLUG_DET",
316			  "EC_IN_RW_ODL";
317
318	dmic_sel: dmic-sel-state {
319		pins = "gpio86";
320		function = "gpio";
321		bias-pull-down;
322	};
323};
324