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