xref: /openbmc/linux/arch/arm64/boot/dts/qcom/sc7180-trogdor-quackingstick.dtsi (revision 060f35a317ef09101b128f399dce7ed13d019461)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Google Quackingstick board device tree source
4 *
5 * Copyright 2021 Google LLC.
6 */
7
8/dts-v1/;
9
10#include "sc7180-trogdor.dtsi"
11
12/* This board only has 1 USB Type-C port. */
13/delete-node/ &usb_c1;
14
15/ {
16	ppvar_lcd: ppvar-lcd-regulator {
17		compatible = "regulator-fixed";
18		regulator-name = "ppvar_lcd";
19
20		gpio = <&tlmm 88 GPIO_ACTIVE_HIGH>;
21		enable-active-high;
22		pinctrl-names = "default";
23		pinctrl-0 = <&ppvar_lcd_en>;
24
25		vin-supply = <&pp5000_a>;
26	};
27
28	v1p8_disp: v1p8-disp-regulator {
29		compatible = "regulator-fixed";
30		regulator-name = "v1p8_disp";
31
32		gpio = <&tlmm 86 GPIO_ACTIVE_HIGH>;
33		enable-active-high;
34		pinctrl-names = "default";
35		pinctrl-0 = <&pp1800_disp_on>;
36
37		vin-supply = <&pp3300_a>;
38	};
39};
40
41&backlight {
42	pwms = <&cros_ec_pwm 0>;
43};
44
45&camcc {
46	status = "okay";
47};
48
49&cros_ec {
50	keyboard-controller {
51		compatible = "google,cros-ec-keyb-switches";
52	};
53};
54
55&gpio_keys {
56	status = "okay";
57};
58
59&i2c4 {
60	status = "okay";
61	clock-frequency = <400000>;
62
63	ap_ts: touchscreen@10 {
64		compatible = "hid-over-i2c";
65		reg = <0x10>;
66		pinctrl-names = "default";
67		pinctrl-0 = <&ts_int_l>, <&ts_reset_l>;
68
69		interrupt-parent = <&tlmm>;
70		interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
71
72		post-power-on-delay-ms = <20>;
73		hid-descr-addr = <0x0001>;
74
75		vdd-supply = <&pp3300_ts>;
76	};
77};
78
79&mdss_dsi0 {
80	panel: panel@0 {
81		/* Compatible will be filled in per-board */
82		reg = <0>;
83		enable-gpios = <&tlmm 87 GPIO_ACTIVE_HIGH>;
84		pinctrl-names = "default";
85		pinctrl-0 = <&lcd_rst>;
86		avdd-supply = <&ppvar_lcd>;
87		avee-supply = <&ppvar_lcd>;
88		pp1800-supply = <&v1p8_disp>;
89		pp3300-supply = <&pp3300_dx_edp>;
90		backlight = <&backlight>;
91		rotation = <270>;
92
93		port {
94			panel_in: endpoint {
95				remote-endpoint = <&mdss_dsi0_out>;
96			};
97		};
98	};
99
100	ports {
101		port@1 {
102			endpoint {
103				remote-endpoint = <&panel_in>;
104				data-lanes = <0 1 2 3>;
105			};
106		};
107	};
108};
109
110&sdhc_2 {
111	status = "okay";
112};
113
114&pp1800_uf_cam {
115	status = "okay";
116};
117
118&pp1800_wf_cam {
119	status = "okay";
120};
121
122&pp2800_uf_cam {
123	status = "okay";
124};
125
126&pp2800_wf_cam {
127	status = "okay";
128};
129
130/*
131 * No eDP on this board but it's logically the same signal so just give it
132 * a new name and assign the proper GPIO.
133 */
134pp3300_disp_on: &pp3300_dx_edp {
135	gpio = <&tlmm 67 GPIO_ACTIVE_HIGH>;
136};
137
138/* PINCTRL - modifications to sc7180-trogdor.dtsi */
139
140/*
141 * No eDP on this board but it's logically the same signal so just give it
142 * a new name and assign the proper GPIO.
143 */
144
145tp_en: &en_pp3300_dx_edp {
146	pins = "gpio67";
147};
148
149/* PINCTRL - board-specific pinctrl */
150
151&tlmm {
152	gpio-line-names = "HUB_RST_L",
153			  "AP_RAM_ID0",
154			  "AP_SKU_ID2",
155			  "AP_RAM_ID1",
156			  "",
157			  "AP_RAM_ID2",
158			  "UF_CAM_EN",
159			  "WF_CAM_EN",
160			  "TS_RESET_L",
161			  "TS_INT_L",
162			  "",
163			  "",
164			  "AP_EDP_BKLTEN",
165			  "UF_CAM_MCLK",
166			  "WF_CAM_CLK",
167			  "EDP_BRIJ_I2C_SDA",
168			  "EDP_BRIJ_I2C_SCL",
169			  "UF_CAM_SDA",
170			  "UF_CAM_SCL",
171			  "WF_CAM_SDA",
172			  "WF_CAM_SCL",
173			  "",
174			  "",
175			  "AMP_EN",
176			  "P_SENSOR_INT_L",
177			  "AP_SAR_SENSOR_SDA",
178			  "AP_SAR_SENSOR_SCL",
179			  "",
180			  "HP_IRQ",
181			  "WF_CAM_RST_L",
182			  "UF_CAM_RST_L",
183			  "AP_BRD_ID2",
184			  "",
185			  "AP_BRD_ID0",
186			  "AP_H1_SPI_MISO",
187			  "AP_H1_SPI_MOSI",
188			  "AP_H1_SPI_CLK",
189			  "AP_H1_SPI_CS_L",
190			  "",
191			  "",
192			  "",
193			  "",
194			  "H1_AP_INT_ODL",
195			  "",
196			  "UART_AP_TX_DBG_RX",
197			  "UART_DBG_TX_AP_RX",
198			  "HP_I2C_SDA",
199			  "HP_I2C_SCL",
200			  "FORCED_USB_BOOT",
201			  "",
202			  "",
203			  "AMP_DIN",
204			  "PEN_DET_ODL",
205			  "HP_BCLK",
206			  "HP_LRCLK",
207			  "HP_DOUT",
208			  "HP_DIN",
209			  "HP_MCLK",
210			  "AP_SKU_ID0",
211			  "AP_EC_SPI_MISO",
212			  "AP_EC_SPI_MOSI",
213			  "AP_EC_SPI_CLK",
214			  "AP_EC_SPI_CS_L",
215			  "AP_SPI_CLK",
216			  "AP_SPI_MOSI",
217			  "AP_SPI_MISO",
218			  /*
219			   * AP_FLASH_WP_L is crossystem ABI. Schematics
220			   * call it BIOS_FLASH_WP_L.
221			   */
222			  "AP_FLASH_WP_L",
223			  "EN_PP3300_DX_EDP",
224			  "AP_SPI_CS0_L",
225			  "SD_CD_ODL",
226			  "",
227			  "",
228			  "",
229			  "",
230			  "",
231			  "UIM2_DATA",
232			  "UIM2_CLK",
233			  "UIM2_RST",
234			  "UIM2_PRESENT_L",
235			  "UIM1_DATA",
236			  "UIM1_CLK",
237			  "UIM1_RST",
238			  "",
239			  "CODEC_PWR_EN",
240			  "HUB_EN",
241			  "",
242			  "PP1800_DISP_ON",
243			  "LCD_RST",
244			  "PPVAR_LCD_EN",
245			  "",
246			  "AP_SKU_ID1",
247			  "AP_RST_REQ",
248			  "",
249			  "AP_BRD_ID1",
250			  "AP_EC_INT_L",
251			  "",
252			  "",
253			  "",
254			  "",
255			  "",
256			  "",
257			  "",
258			  "",
259			  "",
260			  "",
261			  "",
262			  "",
263			  "",
264			  "",
265			  "",
266			  "",
267			  "",
268			  "",
269			  "",
270			  "",
271			  "AP_TS_I2C_SDA",
272			  "AP_TS_I2C_SCL",
273			  "DP_HOT_PLUG_DET",
274			  "EC_IN_RW_ODL";
275
276	lcd_rst: lcd-rst-state {
277		pins = "gpio87";
278		function = "gpio";
279		drive-strength = <2>;
280		bias-disable;
281	};
282
283	ppvar_lcd_en: ppvar-lcd-en-state {
284		pins = "gpio88";
285		function = "gpio";
286		drive-strength = <2>;
287		bias-disable;
288	};
289
290	pp1800_disp_on: pp1800-disp-on-state {
291		pins = "gpio86";
292		function = "gpio";
293		drive-strength = <2>;
294		bias-disable;
295	};
296};
297