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