1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Google CoachZ board device tree source
4 *
5 * Copyright 2020 Google LLC.
6 */
7
8#include "sc7180.dtsi"
9
10ap_ec_spi: &spi6 {};
11ap_h1_spi: &spi0 {};
12
13#include "sc7180-trogdor.dtsi"
14#include "sc7180-trogdor-ti-sn65dsi86.dtsi"
15
16/* Deleted nodes from trogdor.dtsi */
17
18/delete-node/ &alc5682;
19/delete-node/ &pp3300_codec;
20
21/ {
22	/* BOARD-SPECIFIC TOP LEVEL NODES */
23
24	adau7002: audio-codec-1 {
25		compatible = "adi,adau7002";
26		IOVDD-supply = <&pp1800_l15a>;
27		wakeup-delay-ms = <80>;
28		#sound-dai-cells = <0>;
29	};
30
31	thermal-zones {
32		skin_temp_thermal: skin-temp-thermal {
33			polling-delay-passive = <250>;
34			polling-delay = <0>;
35
36			thermal-sensors = <&pm6150_adc_tm 1>;
37			sustainable-power = <965>;
38
39			trips {
40				skin_temp_alert0: trip-point0 {
41					temperature = <42000>;
42					hysteresis = <1000>;
43					type = "passive";
44				};
45
46				skin_temp_alert1: trip-point1 {
47					temperature = <45000>;
48					hysteresis = <1000>;
49					type = "passive";
50				};
51
52				skin-temp-crit {
53					temperature = <60000>;
54					hysteresis = <1000>;
55					type = "critical";
56				};
57			};
58
59			cooling-maps {
60				map0 {
61					trip = <&skin_temp_alert0>;
62					cooling-device = <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
63							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
64				};
65
66				map1 {
67					trip = <&skin_temp_alert1>;
68					cooling-device = <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
69							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
70				};
71			};
72		};
73	};
74};
75
76&ap_spi_fp {
77	status = "okay";
78};
79
80&backlight {
81	pwms = <&cros_ec_pwm 0>;
82};
83
84&camcc {
85	status = "okay";
86};
87
88&cros_ec {
89	cros_ec_proximity: proximity {
90		compatible = "google,cros-ec-mkbp-proximity";
91		label = "proximity-wifi";
92	};
93};
94
95ap_ts_pen_1v8: &i2c4 {
96	status = "okay";
97	clock-frequency = <400000>;
98
99	ap_ts: touchscreen@5d {
100		compatible = "goodix,gt7375p";
101		reg = <0x5d>;
102		pinctrl-names = "default";
103		pinctrl-0 = <&ts_int_l>, <&ts_reset_l>;
104
105		interrupt-parent = <&tlmm>;
106		interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
107
108		reset-gpios = <&tlmm 8 GPIO_ACTIVE_LOW>;
109
110		vdd-supply = <&pp3300_ts>;
111	};
112};
113
114&i2c7 {
115	status = "disabled";
116};
117
118&i2c9 {
119	status = "disabled";
120};
121
122&panel {
123	compatible = "boe,nv110wtm-n61";
124};
125
126&pm6150_adc {
127	skin-temp-thermistor@4e {
128		reg = <ADC5_AMUX_THM2_100K_PU>;
129		qcom,ratiometric;
130		qcom,hw-settle-time = <200>;
131	};
132};
133
134&pm6150_adc_tm {
135	status = "okay";
136
137	skin-temp-thermistor@1 {
138		reg = <1>;
139		io-channels = <&pm6150_adc ADC5_AMUX_THM2_100K_PU>;
140		qcom,ratiometric;
141		qcom,hw-settle-time-us = <200>;
142	};
143};
144
145&pp3300_dx_edp {
146	gpio = <&tlmm 67 GPIO_ACTIVE_HIGH>;
147};
148
149&sdhc_2 {
150	status = "okay";
151};
152
153&sn65dsi86_out {
154	data-lanes = <0 1 2 3>;
155};
156
157&sound {
158	compatible = "google,sc7180-coachz";
159	model = "sc7180-adau7002-max98357a";
160	audio-routing = "PDM_DAT", "DMIC";
161
162	pinctrl-names = "default";
163	pinctrl-0 = <&dmic_clk_en>;
164};
165
166&sound_multimedia0_codec {
167	sound-dai = <&adau7002>;
168};
169
170/* PINCTRL - modifications to sc7180-trogdor.dtsi */
171
172&en_pp3300_dx_edp {
173	pinmux  {
174		pins = "gpio67";
175	};
176
177	pinconf {
178		pins = "gpio67";
179	};
180};
181
182&ts_reset_l {
183	pinconf {
184		/*
185		 * We want reset state by default and it will be up to the
186		 * driver to disable this when it's ready.
187		 */
188		output-low;
189	};
190};
191
192/* PINCTRL - board-specific pinctrl */
193
194&tlmm {
195	gpio-line-names = "HUB_RST_L",
196			  "AP_RAM_ID0",
197			  "AP_SKU_ID2",
198			  "AP_RAM_ID1",
199			  "FP_TO_AP_IRQ_L",
200			  "AP_RAM_ID2",
201			  "UF_CAM_EN",
202			  "WF_CAM_EN",
203			  "TS_RESET_L",
204			  "TS_INT_L",
205			  "FPMCU_BOOT0",
206			  "EDP_BRIJ_IRQ",
207			  "AP_EDP_BKLTEN",
208			  "UF_CAM_MCLK",
209			  "WF_CAM_CLK",
210			  "EDP_BRIJ_I2C_SDA",
211			  "EDP_BRIJ_I2C_SCL",
212			  "UF_CAM_SDA",
213			  "UF_CAM_SCL",
214			  "WF_CAM_SDA",
215			  "WF_CAM_SCL",
216			  "WLC_IRQ",
217			  "FP_RST_L",
218			  "AMP_EN",
219			  "WLC_NRST",
220			  "AP_SAR_SENSOR_SDA",
221			  "AP_SAR_SENSOR_SCL",
222			  "",
223			  "",
224			  "WF_CAM_RST_L",
225			  "UF_CAM_RST_L",
226			  "AP_BRD_ID2",
227			  "BRIJ_SUSPEND",
228			  "AP_BRD_ID0",
229			  "AP_H1_SPI_MISO",
230			  "AP_H1_SPI_MOSI",
231			  "AP_H1_SPI_CLK",
232			  "AP_H1_SPI_CS_L",
233			  "",
234			  "",
235			  "",
236			  "",
237			  "H1_AP_INT_ODL",
238			  "",
239			  "UART_AP_TX_DBG_RX",
240			  "UART_DBG_TX_AP_RX",
241			  "",
242			  "",
243			  "FORCED_USB_BOOT",
244			  "AMP_BCLK",
245			  "AMP_LRCLK",
246			  "AMP_DIN",
247			  "",
248			  "HP_BCLK",
249			  "HP_LRCLK",
250			  "HP_DOUT",
251			  "HP_DIN",
252			  "HP_MCLK",
253			  "AP_SKU_ID0",
254			  "AP_EC_SPI_MISO",
255			  "AP_EC_SPI_MOSI",
256			  "AP_EC_SPI_CLK",
257			  "AP_EC_SPI_CS_L",
258			  "AP_SPI_CLK",
259			  "AP_SPI_MOSI",
260			  "AP_SPI_MISO",
261			  /*
262			   * AP_FLASH_WP_L is crossystem ABI. Schematics
263			   * call it BIOS_FLASH_WP_L.
264			   */
265			  "AP_FLASH_WP_L",
266			  "EN_PP3300_DX_EDP",
267			  "AP_SPI_CS0_L",
268			  "SD_CD_ODL",
269			  "",
270			  "",
271			  "",
272			  "",
273			  "EN_FP_RAILS",
274			  "UIM2_DATA",
275			  "UIM2_CLK",
276			  "UIM2_RST",
277			  "UIM2_PRESENT_L",
278			  "UIM1_DATA",
279			  "UIM1_CLK",
280			  "UIM1_RST",
281			  "",
282			  "",
283			  "HUB_EN",
284			  "",
285			  "AP_SPI_FP_MISO",
286			  "AP_SPI_FP_MOSI",
287			  "AP_SPI_FP_CLK",
288			  "AP_SPI_FP_CS_L",
289			  "AP_SKU_ID1",
290			  "AP_RST_REQ",
291			  "",
292			  "AP_BRD_ID1",
293			  "AP_EC_INT_L",
294			  "",
295			  "",
296			  "",
297			  "",
298			  "",
299			  "",
300			  "",
301			  "",
302			  "",
303			  "EDP_BRIJ_EN",
304			  "",
305			  "",
306			  "",
307			  "",
308			  "",
309			  "",
310			  "",
311			  "",
312			  "",
313			  "",
314			  "AP_TS_PEN_I2C_SDA",
315			  "AP_TS_PEN_I2C_SCL",
316			  "DP_HOT_PLUG_DET",
317			  "EC_IN_RW_ODL";
318
319	dmic_clk_en: dmic_clk_en {
320		pinmux {
321			pins = "gpio83";
322			function = "gpio";
323		};
324
325		pinconf {
326			pins = "gpio83";
327			drive-strength = <8>;
328			bias-pull-up;
329		};
330	};
331};
332