blob: 5f06842c683b5797ab06d34cf5a226169db3b89e [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// 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};