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