Merge tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[sfrench/cifs-2.6.git] / arch / arm64 / boot / dts / qcom / sc7180-trogdor-quackingstick.dtsi
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 {
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 {
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 &dsi0 {
56         panel: panel@0 {
57                 /* Compatible will be filled in per-board */
58                 reg = <0>;
59                 enable-gpios = <&tlmm 87 GPIO_ACTIVE_HIGH>;
60                 pinctrl-names = "default";
61                 pinctrl-0 = <&lcd_rst>;
62                 avdd-supply = <&ppvar_lcd>;
63                 pp1800-supply = <&v1p8_disp>;
64                 pp3300-supply = <&pp3300_dx_edp>;
65                 backlight = <&backlight>;
66                 rotation = <270>;
67
68                 ports {
69                         #address-cells = <1>;
70                         #size-cells = <0>;
71                         port@0 {
72                                 reg = <0>;
73                                 panel_in: endpoint {
74                                         remote-endpoint = <&dsi0_out>;
75                                 };
76                         };
77                 };
78         };
79
80         ports {
81                 port@1 {
82                         endpoint {
83                                 remote-endpoint = <&panel_in>;
84                                 data-lanes = <0 1 2 3>;
85                         };
86                 };
87         };
88 };
89
90 &gpio_keys {
91         status = "okay";
92 };
93
94 &i2c4 {
95         status = "okay";
96         clock-frequency = <400000>;
97
98         ap_ts: touchscreen@10 {
99                 compatible = "hid-over-i2c";
100                 reg = <0x10>;
101                 pinctrl-names = "default";
102                 pinctrl-0 = <&ts_int_l>, <&ts_reset_l>;
103
104                 interrupt-parent = <&tlmm>;
105                 interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
106
107                 post-power-on-delay-ms = <20>;
108                 hid-descr-addr = <0x0001>;
109
110                 vdd-supply = <&pp3300_ts>;
111         };
112 };
113
114 &sdhc_2 {
115         status = "okay";
116 };
117
118 &pp1800_uf_cam {
119         status = "okay";
120 };
121
122 &pp1800_wf_cam {
123         status = "okay";
124 };
125
126 &pp2800_uf_cam {
127         status = "okay";
128 };
129
130 &pp2800_wf_cam {
131         status = "okay";
132 };
133
134 /*
135  * No eDP on this board but it's logically the same signal so just give it
136  * a new name and assign the proper GPIO.
137  */
138 pp3300_disp_on: &pp3300_dx_edp {
139         gpio = <&tlmm 67 GPIO_ACTIVE_HIGH>;
140 };
141
142 /* PINCTRL - modifications to sc7180-trogdor.dtsi */
143
144 /*
145  * No eDP on this board but it's logically the same signal so just give it
146  * a new name and assign the proper GPIO.
147  */
148
149 tp_en: &en_pp3300_dx_edp {
150         pinmux {
151                 pins = "gpio67";
152         };
153
154         pinconf {
155                 pins = "gpio67";
156         };
157 };
158
159 /* PINCTRL - board-specific pinctrl */
160
161 &tlmm {
162         gpio-line-names = "HUB_RST_L",
163                           "AP_RAM_ID0",
164                           "AP_SKU_ID2",
165                           "AP_RAM_ID1",
166                           "",
167                           "AP_RAM_ID2",
168                           "UF_CAM_EN",
169                           "WF_CAM_EN",
170                           "TS_RESET_L",
171                           "TS_INT_L",
172                           "",
173                           "",
174                           "AP_EDP_BKLTEN",
175                           "UF_CAM_MCLK",
176                           "WF_CAM_CLK",
177                           "EDP_BRIJ_I2C_SDA",
178                           "EDP_BRIJ_I2C_SCL",
179                           "UF_CAM_SDA",
180                           "UF_CAM_SCL",
181                           "WF_CAM_SDA",
182                           "WF_CAM_SCL",
183                           "",
184                           "",
185                           "AMP_EN",
186                           "P_SENSOR_INT_L",
187                           "AP_SAR_SENSOR_SDA",
188                           "AP_SAR_SENSOR_SCL",
189                           "",
190                           "HP_IRQ",
191                           "WF_CAM_RST_L",
192                           "UF_CAM_RST_L",
193                           "AP_BRD_ID2",
194                           "",
195                           "AP_BRD_ID0",
196                           "AP_H1_SPI_MISO",
197                           "AP_H1_SPI_MOSI",
198                           "AP_H1_SPI_CLK",
199                           "AP_H1_SPI_CS_L",
200                           "",
201                           "",
202                           "",
203                           "",
204                           "H1_AP_INT_ODL",
205                           "",
206                           "UART_AP_TX_DBG_RX",
207                           "UART_DBG_TX_AP_RX",
208                           "HP_I2C_SDA",
209                           "HP_I2C_SCL",
210                           "FORCED_USB_BOOT",
211                           "",
212                           "",
213                           "AMP_DIN",
214                           "PEN_DET_ODL",
215                           "HP_BCLK",
216                           "HP_LRCLK",
217                           "HP_DOUT",
218                           "HP_DIN",
219                           "HP_MCLK",
220                           "AP_SKU_ID0",
221                           "AP_EC_SPI_MISO",
222                           "AP_EC_SPI_MOSI",
223                           "AP_EC_SPI_CLK",
224                           "AP_EC_SPI_CS_L",
225                           "AP_SPI_CLK",
226                           "AP_SPI_MOSI",
227                           "AP_SPI_MISO",
228                           /*
229                            * AP_FLASH_WP_L is crossystem ABI. Schematics
230                            * call it BIOS_FLASH_WP_L.
231                            */
232                           "AP_FLASH_WP_L",
233                           "EN_PP3300_DX_EDP",
234                           "AP_SPI_CS0_L",
235                           "SD_CD_ODL",
236                           "",
237                           "",
238                           "",
239                           "",
240                           "",
241                           "UIM2_DATA",
242                           "UIM2_CLK",
243                           "UIM2_RST",
244                           "UIM2_PRESENT_L",
245                           "UIM1_DATA",
246                           "UIM1_CLK",
247                           "UIM1_RST",
248                           "",
249                           "CODEC_PWR_EN",
250                           "HUB_EN",
251                           "",
252                           "PP1800_DISP_ON",
253                           "LCD_RST",
254                           "PPVAR_LCD_EN",
255                           "",
256                           "AP_SKU_ID1",
257                           "AP_RST_REQ",
258                           "",
259                           "AP_BRD_ID1",
260                           "AP_EC_INT_L",
261                           "",
262                           "",
263                           "",
264                           "",
265                           "",
266                           "",
267                           "",
268                           "",
269                           "",
270                           "",
271                           "",
272                           "",
273                           "",
274                           "",
275                           "",
276                           "",
277                           "",
278                           "",
279                           "",
280                           "",
281                           "AP_TS_I2C_SDA",
282                           "AP_TS_I2C_SCL",
283                           "DP_HOT_PLUG_DET",
284                           "EC_IN_RW_ODL";
285
286         lcd_rst: lcd-rst {
287                 pinmux {
288                         pins = "gpio87";
289                         function = "gpio";
290                 };
291
292                 pinconf {
293                         pins = "gpio87";
294                         drive-strength = <2>;
295                         bias-disable;
296                 };
297         };
298
299         ppvar_lcd_en: ppvar-lcd-en {
300                 pinmux {
301                         pins = "gpio88";
302                         function = "gpio";
303                 };
304
305                 pinconf {
306                         pins = "gpio88";
307                         drive-strength = <2>;
308                         bias-disable;
309                 };
310         };
311
312         pp1800_disp_on: pp1800-disp-on {
313                 pinmux {
314                         pins = "gpio86";
315                         function = "gpio";
316                 };
317
318                 pinconf {
319                         pins = "gpio86";
320                         drive-strength = <2>;
321                         bias-disable;
322                 };
323         };
324 };