Linux 6.7-rc7
[linux-modified.git] / arch / arm64 / boot / dts / tesla / fsd-pinctrl.dtsi
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Tesla Full Self-Driving SoC device tree source
4  *
5  * Copyright (c) 2017-2021 Samsung Electronics Co., Ltd.
6  *              https://www.samsung.com
7  * Copyright (c) 2017-2021 Tesla, Inc.
8  *              https://www.tesla.com
9  */
10
11 #include "fsd-pinctrl.h"
12
13 &pinctrl_fsys0 {
14         gpf0: gpf0-gpio-bank {
15                 gpio-controller;
16                 #gpio-cells = <2>;
17
18                 interrupt-controller;
19                 #interrupt-cells = <2>;
20         };
21
22         gpf1: gpf1-gpio-bank {
23                 gpio-controller;
24                 #gpio-cells = <2>;
25
26                 interrupt-controller;
27                 #interrupt-cells = <2>;
28         };
29
30         gpf6: gpf6-gpio-bank {
31                 gpio-controller;
32                 #gpio-cells = <2>;
33
34                 interrupt-controller;
35                 #interrupt-cells = <2>;
36         };
37
38         gpf4: gpf4-gpio-bank {
39                 gpio-controller;
40                 #gpio-cells = <2>;
41
42                 interrupt-controller;
43                 #interrupt-cells = <2>;
44         };
45
46         gpf5: gpf5-gpio-bank {
47                 gpio-controller;
48                 #gpio-cells = <2>;
49
50                 interrupt-controller;
51                 #interrupt-cells = <2>;
52         };
53
54         ufs_rst_n: ufs-rst-n-pins {
55                 samsung,pins = "gpf5-0";
56                 samsung,pin-function = <FSD_PIN_FUNC_2>;
57                 samsung,pin-pud = <FSD_PIN_PULL_DOWN>;
58                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
59         };
60
61         ufs_refclk_out: ufs-refclk-out-pins {
62                 samsung,pins = "gpf5-1";
63                 samsung,pin-function = <FSD_PIN_FUNC_2>;
64                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
65                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
66         };
67 };
68
69 &pinctrl_peric {
70         gpc8: gpc8-gpio-bank {
71                 gpio-controller;
72                 #gpio-cells = <2>;
73
74                 interrupt-controller;
75                 #interrupt-cells = <2>;
76         };
77
78         gpf2: gpf2-gpio-bank {
79                 gpio-controller;
80                 #gpio-cells = <2>;
81
82                 interrupt-controller;
83                 #interrupt-cells = <2>;
84         };
85
86         gpf3: gpf3-gpio-bank {
87                 gpio-controller;
88                 #gpio-cells = <2>;
89
90                 interrupt-controller;
91                 #interrupt-cells = <2>;
92         };
93
94         gpd0: gpd0-gpio-bank {
95                 gpio-controller;
96                 #gpio-cells = <2>;
97
98                 interrupt-controller;
99                 #interrupt-cells = <2>;
100         };
101
102         gpb0: gpb0-gpio-bank {
103                 gpio-controller;
104                 #gpio-cells = <2>;
105
106                 interrupt-controller;
107                 #interrupt-cells = <2>;
108         };
109
110         gpb1: gpb1-gpio-bank {
111                 gpio-controller;
112                 #gpio-cells = <2>;
113
114                 interrupt-controller;
115                 #interrupt-cells = <2>;
116         };
117
118         gpb4: gpb4-gpio-bank {
119                 gpio-controller;
120                 #gpio-cells = <2>;
121
122                 interrupt-controller;
123                 #interrupt-cells = <2>;
124         };
125
126         gpb5: gpb5-gpio-bank {
127                 gpio-controller;
128                 #gpio-cells = <2>;
129
130                 interrupt-controller;
131                 #interrupt-cells = <2>;
132         };
133
134         gpb6: gpb6-gpio-bank {
135                 gpio-controller;
136                 #gpio-cells = <2>;
137
138                 interrupt-controller;
139                 #interrupt-cells = <2>;
140         };
141
142         gpb7: gpb7-gpio-bank {
143                 gpio-controller;
144                 #gpio-cells = <2>;
145
146                 interrupt-controller;
147                 #interrupt-cells = <2>;
148         };
149
150         gpd1: gpd1-gpio-bank {
151                 gpio-controller;
152                 #gpio-cells = <2>;
153
154                 interrupt-controller;
155                 #interrupt-cells = <2>;
156         };
157
158         gpd2: gpd2-gpio-bank {
159                 gpio-controller;
160                 #gpio-cells = <2>;
161
162                 interrupt-controller;
163                 #interrupt-cells = <2>;
164         };
165
166         gpd3: gpd3-gpio-bank {
167                 gpio-controller;
168                 #gpio-cells = <2>;
169
170                 interrupt-controller;
171                 #interrupt-cells = <2>;
172         };
173
174         gpg0: gpg0-gpio-bank {
175                 gpio-controller;
176                 #gpio-cells = <2>;
177
178                 interrupt-controller;
179                 #interrupt-cells = <2>;
180         };
181
182         gpg1: gpg1-gpio-bank {
183                 gpio-controller;
184                 #gpio-cells = <2>;
185
186                 interrupt-controller;
187                 #interrupt-cells = <2>;
188         };
189
190         gpg2: gpg2-gpio-bank {
191                 gpio-controller;
192                 #gpio-cells = <2>;
193
194                 interrupt-controller;
195                 #interrupt-cells = <2>;
196         };
197
198         gpg3: gpg3-gpio-bank {
199                 gpio-controller;
200                 #gpio-cells = <2>;
201
202                 interrupt-controller;
203                 #interrupt-cells = <2>;
204         };
205
206         gpg4: gpg4-gpio-bank {
207                 gpio-controller;
208                 #gpio-cells = <2>;
209
210                 interrupt-controller;
211                 #interrupt-cells = <2>;
212         };
213
214         gpg5: gpg5-gpio-bank {
215                 gpio-controller;
216                 #gpio-cells = <2>;
217
218                 interrupt-controller;
219                 #interrupt-cells = <2>;
220         };
221
222         gpg6: gpg6-gpio-bank {
223                 gpio-controller;
224                 #gpio-cells = <2>;
225
226                 interrupt-controller;
227                 #interrupt-cells = <2>;
228         };
229
230         gpg7: gpg7-gpio-bank {
231                 gpio-controller;
232                 #gpio-cells = <2>;
233
234                 interrupt-controller;
235                 #interrupt-cells = <2>;
236         };
237
238         pwm0_out: pwm0-out-pins {
239                 samsung,pins = "gpb6-1";
240                 samsung,pin-function = <FSD_PIN_FUNC_2>;
241                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
242                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
243         };
244
245         pwm1_out: pwm1-out-pins {
246                 samsung,pins = "gpb6-5";
247                 samsung,pin-function = <FSD_PIN_FUNC_2>;
248                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
249                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
250         };
251
252         hs_i2c0_bus: hs-i2c0-bus-pins {
253                 samsung,pins = "gpb0-0", "gpb0-1";
254                 samsung,pin-function = <FSD_PIN_FUNC_2>;
255                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
256                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
257         };
258
259         hs_i2c1_bus: hs-i2c1-bus-pins {
260                 samsung,pins = "gpb0-2", "gpb0-3";
261                 samsung,pin-function = <FSD_PIN_FUNC_2>;
262                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
263                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
264         };
265
266         hs_i2c2_bus: hs-i2c2-bus-pins {
267                 samsung,pins = "gpb0-4", "gpb0-5";
268                 samsung,pin-function = <FSD_PIN_FUNC_2>;
269                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
270                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
271         };
272
273         hs_i2c3_bus: hs-i2c3-bus-pins {
274                 samsung,pins = "gpb0-6", "gpb0-7";
275                 samsung,pin-function = <FSD_PIN_FUNC_2>;
276                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
277                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
278         };
279
280         hs_i2c4_bus: hs-i2c4-bus-pins {
281                 samsung,pins = "gpb1-0", "gpb1-1";
282                 samsung,pin-function = <FSD_PIN_FUNC_2>;
283                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
284                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
285         };
286
287         hs_i2c5_bus: hs-i2c5-bus-pins {
288                 samsung,pins = "gpb1-2", "gpb1-3";
289                 samsung,pin-function = <FSD_PIN_FUNC_2>;
290                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
291                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
292         };
293
294         hs_i2c6_bus: hs-i2c6-bus-pins {
295                 samsung,pins = "gpb1-4", "gpb1-5";
296                 samsung,pin-function = <FSD_PIN_FUNC_2>;
297                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
298                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
299         };
300
301         hs_i2c7_bus: hs-i2c7-bus-pins {
302                 samsung,pins = "gpb1-6", "gpb1-7";
303                 samsung,pin-function = <FSD_PIN_FUNC_2>;
304                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
305                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
306         };
307
308         uart0_data: uart0-data-pins {
309                 samsung,pins = "gpb7-0", "gpb7-1";
310                 samsung,pin-function = <FSD_PIN_FUNC_2>;
311                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
312                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
313         };
314
315         uart1_data: uart1-data-pins {
316                 samsung,pins = "gpb7-4", "gpb7-5";
317                 samsung,pin-function = <FSD_PIN_FUNC_2>;
318                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
319                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
320         };
321
322         spi0_bus: spi0-bus-pins {
323                 samsung,pins = "gpb4-0", "gpb4-2", "gpb4-3";
324                 samsung,pin-function = <FSD_PIN_FUNC_2>;
325                 samsung,pin-pud = <FSD_PIN_PULL_DOWN>;
326                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
327         };
328
329         spi1_bus: spi1-bus-pins {
330                 samsung,pins = "gpb4-4", "gpb4-6", "gpb4-7";
331                 samsung,pin-function = <FSD_PIN_FUNC_2>;
332                 samsung,pin-pud = <FSD_PIN_PULL_DOWN>;
333                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
334         };
335
336         spi2_bus: spi2-bus-pins {
337                 samsung,pins = "gpb5-0", "gpb5-2", "gpb5-3";
338                 samsung,pin-function = <FSD_PIN_FUNC_2>;
339                 samsung,pin-pud = <FSD_PIN_PULL_DOWN>;
340                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
341         };
342
343         m_can0_bus: m-can0-bus-pins {
344                 samsung,pins = "gpd0-0", "gpd0-1";
345                 samsung,pin-function = <FSD_PIN_FUNC_2>;
346                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
347                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
348         };
349
350         m_can1_bus: m-can1-bus-pins {
351                 samsung,pins = "gpd0-2", "gpd0-3";
352                 samsung,pin-function = <FSD_PIN_FUNC_2>;
353                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
354                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
355         };
356
357         m_can2_bus: m-can2-bus-pins {
358                 samsung,pins = "gpd0-4", "gpd0-5";
359                 samsung,pin-function = <FSD_PIN_FUNC_2>;
360                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
361                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
362         };
363
364         m_can3_bus: m-can3-bus-pins {
365                 samsung,pins = "gpd0-6", "gpd0-7";
366                 samsung,pin-function = <FSD_PIN_FUNC_2>;
367                 samsung,pin-pud = <FSD_PIN_PULL_UP>;
368                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
369         };
370
371         i2s0_bus: i2s0-bus-pins {
372                 samsung,pins = "gpd1-0", "gpd1-1", "gpd1-2", "gpd1-3", "gpd1-4";
373                 samsung,pin-function = <FSD_PIN_FUNC_2>;
374                 samsung,pin-pud = <FSD_PIN_PULL_DOWN>;
375                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
376         };
377
378         i2s1_bus: i2s1-bus-pins {
379                 samsung,pins = "gpd2-0", "gpd2-1", "gpd2-2", "gpd2-3", "gpd2-4";
380                 samsung,pin-function = <FSD_PIN_FUNC_2>;
381                 samsung,pin-pud = <FSD_PIN_PULL_DOWN>;
382                 samsung,pin-drv = <FSD_PIN_DRV_LV4>;
383         };
384 };
385
386 &pinctrl_pmu {
387         gpq0: gpq0-gpio-bank {
388                 gpio-controller;
389                 #gpio-cells = <2>;
390         };
391 };