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	5v-choke-thermistor@4e {
152		reg = <ADC5_AMUX_THM2_100K_PU>;
153		qcom,ratiometric;
154		qcom,hw-settle-time = <200>;
155	};
156};
157
158&pm6150_adc_tm {
159	status = "okay";
160
161	5v-choke-thermistor@1 {
162		reg = <1>;
163		io-channels = <&pm6150_adc ADC5_AMUX_THM2_100K_PU>;
164		qcom,ratiometric;
165		qcom,hw-settle-time-us = <200>;
166	};
167};
168
169&sdhc_2 {
170	status = "okay";
171};
172
173&sound {
174	model = "sc7180-rt5682-max98357a-2mic";
175	pinctrl-names = "default";
176	pinctrl-0 = <&dmic_sel>;
177	dmic-gpios = <&tlmm 86 GPIO_ACTIVE_HIGH>;
178};
179
180&usb_c1 {
181	status = "disabled";
182};
183
184&wifi {
185	qcom,ath10k-calibration-variant = "GO_POMPOM";
186};
187
188/* PINCTRL - board-specific pinctrl */
189
190&tlmm {
191	gpio-line-names = "TP_INT_ODL",
192			  "AP_RAM_ID0",
193			  "AP_SKU_ID2",
194			  "AP_RAM_ID1",
195			  "",
196			  "AP_RAM_ID2",
197			  "AP_TP_I2C_SDA",
198			  "AP_TP_I2C_SCL",
199			  "TS_RESET_L",
200			  "TS_INT_L",
201			  "",
202			  "EDP_BRIJ_IRQ",
203			  "AP_EDP_BKLTEN",
204			  "",
205			  "",
206			  "EDP_BRIJ_I2C_SDA",
207			  "EDP_BRIJ_I2C_SCL",
208			  "HUB_RST_L",
209			  "",
210			  "",
211			  "",
212			  "",
213			  "",
214			  "AMP_EN",
215			  "P_SENSOR_INT_L",
216			  "AP_SAR_SENSOR_SDA",
217			  "AP_SAR_SENSOR_SCL",
218			  "",
219			  "HP_IRQ",
220			  "",
221			  "EN_PP3300_DX_EDP",
222			  "AP_BRD_ID2",
223			  "BRIJ_SUSPEND",
224			  "AP_BRD_ID0",
225			  "AP_H1_SPI_MISO",
226			  "AP_H1_SPI_MOSI",
227			  "AP_H1_SPI_CLK",
228			  "AP_H1_SPI_CS_L",
229			  "",
230			  "",
231			  "",
232			  "",
233			  "H1_AP_INT_ODL",
234			  "",
235			  "UART_AP_TX_DBG_RX",
236			  "UART_DBG_TX_AP_RX",
237			  "HP_I2C_SDA",
238			  "HP_I2C_SCL",
239			  "FORCED_USB_BOOT",
240			  "AMP_BCLK",
241			  "AMP_LRCLK",
242			  "AMP_DIN",
243			  "PEN_PDCT_L",
244			  "HP_BCLK",
245			  "HP_LRCLK",
246			  "HP_DOUT",
247			  "HP_DIN",
248			  "HP_MCLK",
249			  "AP_SKU_ID0",
250			  "AP_EC_SPI_MISO",
251			  "AP_EC_SPI_MOSI",
252			  "AP_EC_SPI_CLK",
253			  "AP_EC_SPI_CS_L",
254			  "AP_SPI_CLK",
255			  "AP_SPI_MOSI",
256			  "AP_SPI_MISO",
257			  /*
258			   * AP_FLASH_WP_L is crossystem ABI. Schematics
259			   * call it BIOS_FLASH_WP_L.
260			   */
261			  "AP_FLASH_WP_L",
262			  "",
263			  "AP_SPI_CS0_L",
264			  "SD_CD_ODL",
265			  "",
266			  "",
267			  "",
268			  "",
269			  "",
270			  "UIM2_DATA",
271			  "UIM2_CLK",
272			  "UIM2_RST",
273			  "UIM2_PRESENT",
274			  "UIM1_DATA",
275			  "UIM1_CLK",
276			  "UIM1_RST",
277			  "",
278			  "EN_PP3300_CODEC",
279			  "EN_PP3300_HUB",
280			  "",
281			  "DMIC_SEL",
282			  "",
283			  "",
284			  "",
285			  "AP_SKU_ID1",
286			  "AP_RST_REQ",
287			  "",
288			  "AP_BRD_ID1",
289			  "AP_EC_INT_R_L",
290			  "",
291			  "",
292			  "",
293			  "",
294			  "",
295			  "",
296			  "",
297			  "",
298			  "",
299			  "EDP_BRIJ_EN",
300			  "",
301			  "",
302			  "",
303			  "",
304			  "",
305			  "",
306			  "",
307			  "",
308			  "",
309			  "",
310			  "AP_TS_PEN_I2C_SDA",
311			  "AP_TS_PEN_I2C_SCL",
312			  "DP_HOT_PLUG_DET",
313			  "EC_IN_RW_ODL";
314
315	dmic_sel: dmic-sel {
316		pinmux {
317			pins = "gpio86";
318			function = "gpio";
319		};
320
321		pinconf {
322			pins = "gpio86";
323			bias-pull-down;
324		};
325	};
326};
327