1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Google Homestar board device tree source
4 *
5 * Copyright 2021 Google LLC.
6 */
7
8/* This file must be included after sc7180-trogdor.dtsi */
9
10/ {
11	/* BOARD-SPECIFIC TOP LEVEL NODES */
12
13	max98360a_1: max98360a_1 {
14		compatible = "maxim,max98360a";
15		#sound-dai-cells = <0>;
16	};
17
18	max98360a_2: max98360a_2 {
19		compatible = "maxim,max98360a";
20		#sound-dai-cells = <0>;
21	};
22
23	max98360a_3: max98360a_3 {
24		compatible = "maxim,max98360a";
25		#sound-dai-cells = <0>;
26	};
27
28	pp3300_touch: pp3300-touch {
29		compatible = "regulator-fixed";
30		regulator-name = "pp3300_touch";
31
32		regulator-min-microvolt = <3300000>;
33		regulator-max-microvolt = <3300000>;
34
35		gpio = <&tlmm 87 GPIO_ACTIVE_HIGH>;
36		enable-active-high;
37		pinctrl-names = "default";
38		pinctrl-0 = <&en_pp3300_touch>;
39
40		vin-supply = <&pp3300_a>;
41	};
42
43	thermal-zones {
44		skin_temp_thermal: skin-temp-thermal {
45			polling-delay-passive = <250>;
46			polling-delay = <0>;
47
48			thermal-sensors = <&pm6150_adc_tm 1>;
49			sustainable-power = <965>;
50
51			trips {
52				skin_temp_alert0: trip-point0 {
53					temperature = <55000>;
54					hysteresis = <1000>;
55					type = "passive";
56				};
57
58				skin_temp_alert1: trip-point1 {
59					temperature = <58000>;
60					hysteresis = <1000>;
61					type = "passive";
62				};
63
64				skin-temp-crit {
65					temperature = <73000>;
66					hysteresis = <1000>;
67					type = "critical";
68				};
69			};
70
71			cooling-maps {
72				map0 {
73					trip = <&skin_temp_alert0>;
74					cooling-device = <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
75							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
76				};
77
78				map1 {
79					trip = <&skin_temp_alert1>;
80					cooling-device = <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
81							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
82				};
83			};
84		};
85	};
86};
87
88ap_ts_pen_1v8: &i2c4 {
89	status = "okay";
90	clock-frequency = <400000>;
91
92	ap_ts: touchscreen@14 {
93		compatible = "goodix,gt7375p";
94		reg = <0x14>;
95		pinctrl-names = "default";
96		pinctrl-0 = <&ts_int_l>, <&ts_reset_l>;
97
98		interrupt-parent = <&tlmm>;
99		interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
100
101		reset-gpios = <&tlmm 8 GPIO_ACTIVE_LOW>;
102
103		vdd-supply = <&pp3300_touch>;
104	};
105};
106
107/* Panel controls backlight over aux channel */
108
109&backlight {
110	status = "disabled";
111};
112
113&camcc {
114	status = "okay";
115};
116
117&cros_ec {
118	keyboard-controller {
119		compatible = "google,cros-ec-keyb-switches";
120	};
121};
122
123&panel {
124	compatible = "samsung,atna33xc20";
125	enable-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>;
126	/delete-property/ backlight;
127};
128
129&pm6150_adc {
130	skin-temp-thermistor@4d {
131		reg = <ADC5_AMUX_THM1_100K_PU>;
132		qcom,ratiometric;
133		qcom,hw-settle-time = <200>;
134	};
135};
136
137&pm6150_adc_tm {
138	status = "okay";
139
140	skin-temp-thermistor@1 {
141		reg = <1>;
142		io-channels = <&pm6150_adc ADC5_AMUX_THM1_100K_PU>;
143		qcom,ratiometric;
144		qcom,hw-settle-time-us = <200>;
145	};
146};
147
148&pp1800_uf_cam {
149	status = "okay";
150};
151
152&pp1800_wf_cam {
153	status = "okay";
154};
155
156&pp2800_uf_cam {
157	status = "okay";
158};
159
160&pp2800_wf_cam {
161	status = "okay";
162};
163
164&pp3300_dx_edp {
165	gpio = <&tlmm 67 GPIO_ACTIVE_HIGH>;
166};
167
168&secondary_mi2s {
169	qcom,playback-sd-lines = <0 1>;
170};
171
172&sound_multimedia1_codec {
173	sound-dai = <&max98360a>, <&max98360a_1>, <&max98360a_2>, <&max98360a_3> ;
174};
175
176&wifi {
177	qcom,ath10k-calibration-variant = "GO_HOMESTAR";
178};
179
180/* PINCTRL - modifications to sc7180-trogdor.dtsi */
181
182&en_pp3300_dx_edp {
183	pinmux {
184		pins = "gpio67";
185	};
186
187	pinconf {
188		pins = "gpio67";
189	};
190};
191
192&sec_mi2s_active {
193	pinmux {
194		pins = "gpio49", "gpio50", "gpio51", "gpio52";
195		function = "mi2s_1";
196	};
197
198	pinconf {
199		pins = "gpio49", "gpio50", "gpio51", "gpio52";
200		drive-strength = <2>;
201		bias-pull-down;
202	};
203};
204
205&ts_reset_l {
206	pinconf {
207		/*
208		 * We want reset state by default and it will be up to the
209		 * driver to disable this when it's ready.
210		 */
211		output-low;
212	};
213};
214
215/* PINCTRL - board-specific pinctrl */
216
217&tlmm {
218	gpio-line-names = "HUB_RST_L",
219			  "AP_RAM_ID0",
220			  "AP_SKU_ID2",
221			  "AP_RAM_ID1",
222			  "",
223			  "AP_RAM_ID2",
224			  "UF_CAM_EN",
225			  "WF_CAM_EN",
226			  "TS_RESET_L",
227			  "TS_INT_L",
228			  "",
229			  "EDP_BRIJ_IRQ",
230			  "AP_EDP_BKLTEN",
231			  "UF_CAM_MCLK",
232			  "WF_CAM_CLK",
233			  "EDP_BRIJ_I2C_SDA",
234			  "EDP_BRIJ_I2C_SCL",
235			  "UF_CAM_SDA",
236			  "UF_CAM_SCL",
237			  "WF_CAM_SDA",
238			  "WF_CAM_SCL",
239			  "AVEE_LCD_EN",
240			  "",
241			  "AMP_EN",
242			  "AMP_EN2",
243			  "AP_SAR_SENSOR_SDA",
244			  "AP_SAR_SENSOR_SCL",
245			  "SEL_LCM",
246			  "HP_IRQ",
247			  "WF_CAM_RST_L",
248			  "UF_CAM_RST_L",
249			  "AP_BRD_ID2",
250			  "BRIJ_SUSPEND",
251			  "AP_BRD_ID0",
252			  "AP_H1_SPI_MISO",
253			  "AP_H1_SPI_MOSI",
254			  "AP_H1_SPI_CLK",
255			  "AP_H1_SPI_CS_L",
256			  "BT_UART_CTS",
257			  "BT_UART_RTS",
258			  "BT_UART_TXD",
259			  "BT_UART_RXD",
260			  "H1_AP_INT_ODL",
261			  "",
262			  "UART_AP_TX_DBG_RX",
263			  "UART_DBG_TX_AP_RX",
264			  "HP_I2C_SDA",
265			  "HP_I2C_SCL",
266			  "FORCED_USB_BOOT",
267			  "AMP_BCLK",
268			  "AMP_LRCLK",
269			  "AMP_DIN",
270			  "AMP_DIN_2",
271			  "HP_BCLK",
272			  "HP_LRCLK",
273			  "HP_DOUT",
274			  "HP_DIN",
275			  "HP_MCLK",
276			  "AP_SKU_ID0",
277			  "AP_EC_SPI_MISO",
278			  "AP_EC_SPI_MOSI",
279			  "AP_EC_SPI_CLK",
280			  "AP_EC_SPI_CS_L",
281			  "AP_SPI_CLK",
282			  "AP_SPI_MOSI",
283			  "AP_SPI_MISO",
284			  /*
285			   * AP_FLASH_WP_L is crossystem ABI. Schematics
286			   * call it BIOS_FLASH_WP_L.
287			   */
288			  "AP_FLASH_WP_L",
289			  "EN_PP3300_DX_EDP",
290			  "AP_SPI_CS0_L",
291			  "SD_CD_ODL",
292			  "",
293			  "",
294			  "",
295			  "WLAN_SW_CTRL",
296			  "",
297			  "REPORT_E",
298			  "VDD_RESET_1.8V",
299			  "ID0",
300			  "",
301			  "ID1",
302			  "AVDD_LCD_EN",
303			  "MIPI_1.8V_EN",
304			  "",
305			  "CODEC_PWR_EN",
306			  "HUB_EN",
307			  "",
308			  "PP1800_MIPI_SW_EN",
309			  "EN_PP3300_TOUCH",
310			  "",
311			  "",
312			  "AP_SKU_ID1",
313			  "AP_RST_REQ",
314			  "",
315			  "AP_BRD_ID1",
316			  "AP_EC_INT_L",
317			  "SDM_GRFC_3",
318			  "",
319			  "",
320			  "BOOT_CONFIG_4",
321			  "BOOT_CONFIG_2",
322			  "",
323			  "",
324			  "",
325			  "",
326			  "EDP_BRIJ_EN",
327			  "",
328			  "",
329			  "BOOT_CONFIG_3",
330			  "WCI2_LTE_COEX_TXD",
331			  "WCI2_LTE_COEX_RXD",
332			  "",
333			  "",
334			  "",
335			  "",
336			  "FORCED_USB_BOOT_POL",
337			  "AP_TS_PEN_I2C_SDA",
338			  "AP_TS_PEN_I2C_SCL",
339			  "DP_HOT_PLUG_DET",
340			  "EC_IN_RW_ODL";
341
342	en_pp3300_touch: en-pp3300-touch {
343		pinmux {
344			pins = "gpio87";
345			function = "gpio";
346		};
347
348		pinconf {
349			pins = "gpio87";
350			drive-strength = <2>;
351			bias-disable;
352		};
353	};
354};
355