~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/ti/k3-am62-verdin.dtsi

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
  2 /*
  3  * Copyright 2023 Toradex
  4  *
  5  * Common dtsi for Verdin AM62 SoM
  6  *
  7  * https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62
  8  */
  9 
 10 #include <dt-bindings/gpio/gpio.h>
 11 #include <dt-bindings/input/input.h>
 12 #include <dt-bindings/interrupt-controller/arm-gic.h>
 13 #include <dt-bindings/interrupt-controller/irq.h>
 14 #include <dt-bindings/net/ti-dp83867.h>
 15 
 16 / {
 17         chosen {
 18                 stdout-path = "serial2:115200n8";
 19         };
 20 
 21         aliases {
 22                 can0 = &main_mcan0;
 23                 can1 = &mcu_mcan0;
 24                 ethernet0 = &cpsw_port1;
 25                 ethernet1 = &cpsw_port2;
 26                 i2c0 = &main_i2c0;
 27                 i2c1 = &main_i2c1;
 28                 i2c2 = &main_i2c2;
 29                 i2c3 = &mcu_i2c0;
 30                 i2c4 = &main_i2c3;
 31                 mmc0 = &sdhci0;
 32                 mmc1 = &sdhci1;
 33                 mmc2 = &sdhci2;
 34                 rtc0 = &rtc_i2c;
 35                 rtc1 = &wkup_rtc0;
 36                 serial0 = &main_uart1;
 37                 serial1 = &wkup_uart0;
 38                 serial2 = &main_uart0;
 39                 serial3 = &mcu_uart0;
 40                 serial4 = &main_uart5;
 41                 usb0 = &usb0;
 42                 usb1 = &usb1;
 43         };
 44 
 45         connector {
 46                 compatible = "gpio-usb-b-connector", "usb-b-connector";
 47                 pinctrl-names = "default";
 48                 pinctrl-0 = <&pinctrl_usb0_id>;
 49                 id-gpios = <&main_gpio1 19 GPIO_ACTIVE_HIGH>;
 50                 label = "USB_1";
 51                 self-powered;
 52                 vbus-supply = <&reg_usb0_vbus>;
 53 
 54                 port {
 55                         usb_dr_connector: endpoint {
 56                                 remote-endpoint = <&usb0_ep>;
 57                         };
 58                 };
 59         };
 60 
 61         verdin_gpio_keys: gpio-keys {
 62                 compatible = "gpio-keys";
 63                 pinctrl-names = "default";
 64                 pinctrl-0 = <&pinctrl_ctrl_wake1_mico>;
 65                 status = "disabled";
 66 
 67                 verdin_key_wakeup: key-wakeup {
 68                         debounce-interval = <10>;
 69                         /* Verdin CTRL_WAKE1_MICO# (SODIMM 252) */
 70                         gpios = <&main_gpio0 32 GPIO_ACTIVE_LOW>;
 71                         label = "Wake-Up";
 72                         linux,code = <KEY_WAKEUP>;
 73                         wakeup-source;
 74                 };
 75         };
 76 
 77         memory@80000000 {
 78                 device_type = "memory";
 79                 reg = <0x00000000 0x80000000 0x00000000 0x80000000>; /* 2G RAM */
 80         };
 81 
 82         opp-table {
 83                 /* Add 1.4GHz OPP. Requires VDD_CORE to be at 0.85V */
 84                 opp-1400000000 {
 85                         opp-hz = /bits/ 64 <1400000000>;
 86                         opp-supported-hw = <0x01 0x0004>;
 87                         clock-latency-ns = <6000000>;
 88                 };
 89         };
 90 
 91         /* Module Power Supply */
 92         reg_vsodimm: regulator-vsodimm {
 93                 compatible = "regulator-fixed";
 94                 regulator-name = "+V_SODIMM";
 95         };
 96 
 97         /* Non PMIC On-module Supplies */
 98         reg_3v3: regulator-3v3 {
 99                 compatible = "regulator-fixed";
100                 regulator-max-microvolt = <3300000>;
101                 regulator-min-microvolt = <3300000>;
102                 regulator-name = "On-module +V3.3";
103                 vin-supply = <&reg_vsodimm>;
104         };
105 
106         reg_1v2_dsi: regulator-1v2-dsi {
107                 compatible = "regulator-fixed";
108                 regulator-max-microvolt = <1200000>;
109                 regulator-min-microvolt = <1200000>;
110                 regulator-name = "On-module +V1.2_DSI";
111                 vin-supply = <&reg_1v8>;
112         };
113 
114         /* Enabled by +V1.2_DSI */
115         reg_1v8_dsi: regulator-1v8-dsi {
116                 compatible = "regulator-fixed";
117                 regulator-max-microvolt = <1800000>;
118                 regulator-min-microvolt = <1800000>;
119                 regulator-name = "On-module +V1.8_DSI";
120                 vin-supply = <&reg_1v8>;
121         };
122 
123         /* Enabled by +V2.5_ETH */
124         reg_1v0_eth: regulator-1v0-eth {
125                 compatible = "regulator-fixed";
126                 regulator-max-microvolt = <1000000>;
127                 regulator-min-microvolt = <1000000>;
128                 regulator-name = "On-module +V1.0_ETH";
129                 vin-supply = <&reg_1v8>;
130         };
131 
132         /* Enabled by +V2.5_ETH */
133         reg_1v8_eth: regulator-1v8-eth {
134                 compatible = "regulator-fixed";
135                 regulator-max-microvolt = <1800000>;
136                 regulator-min-microvolt = <1800000>;
137                 regulator-name = "On-module +V1.8_ETH";
138                 vin-supply = <&reg_1v8>;
139         };
140 
141         reg_force_sleep_moci: regulator-force-sleep-moci {
142                 compatible = "regulator-fixed";
143                 enable-active-high;
144                 /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */
145                 gpio = <&main_gpio0 31 GPIO_ACTIVE_HIGH>;
146                 regulator-always-on;
147                 regulator-boot-on;
148                 regulator-name = "CTRL_SLEEP_MOCI#";
149         };
150 
151         /* Verdin SD_1 Power Supply */
152         reg_sdhc1_vmmc: regulator-sdhci1 {
153                 compatible = "regulator-fixed";
154                 pinctrl-names = "default";
155                 pinctrl-0 = <&pinctrl_sd1_pwr_en>;
156                 enable-active-high;
157                 /* Verdin SD_1_PWR_EN (SODIMM 76) */
158                 gpio = <&main_gpio0 29 GPIO_ACTIVE_HIGH>;
159                 off-on-delay-us = <100000>;
160                 regulator-max-microvolt = <3300000>;
161                 regulator-min-microvolt = <3300000>;
162                 regulator-name = "+V3.3_SD";
163                 startup-delay-us = <2000>;
164         };
165 
166         reg_sdhc1_vqmmc: regulator-sdhci1-vqmmc {
167                 compatible = "regulator-gpio";
168                 pinctrl-names = "default";
169                 pinctrl-0 = <&pinctrl_vsel_sd>;
170                 /* PMIC_VSEL_SD */
171                 gpios = <&main_gpio0 21 GPIO_ACTIVE_HIGH>;
172                 regulator-name = "LDO1-VSEL-SD (PMIC)";
173                 regulator-min-microvolt = <1800000>;
174                 regulator-max-microvolt = <3300000>;
175                 states = <1800000 0x0>,
176                          <3300000 0x1>;
177                 vin-supply = <&reg_sd_3v3_1v8>;
178         };
179 
180         reg_usb0_vbus: regulator-usb0-vbus {
181                 compatible = "regulator-fixed";
182                 pinctrl-names = "default";
183                 pinctrl-0 = <&pinctrl_usb0_en>;
184                 enable-active-high;
185                 /* Verdin USB_1_EN (SODIMM 155) */
186                 gpio = <&main_gpio1 50 GPIO_ACTIVE_HIGH>;
187                 regulator-max-microvolt = <5000000>;
188                 regulator-min-microvolt = <5000000>;
189                 regulator-name = "USB_1_EN";
190         };
191 
192         reserved-memory {
193                 #address-cells = <2>;
194                 #size-cells = <2>;
195                 ranges;
196 
197                 secure_tfa_ddr: tfa@9e780000 {
198                         reg = <0x00 0x9e780000 0x00 0x80000>;
199                         alignment = <0x1000>;
200                         no-map;
201                 };
202 
203                 secure_ddr: optee@9e800000 {
204                         reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
205                         alignment = <0x1000>;
206                         no-map;
207                 };
208 
209                 wkup_r5fss0_core0_dma_memory_region: r5f-dma-memory@9db00000 {
210                         compatible = "shared-dma-pool";
211                         reg = <0x00 0x9db00000 0x00 0xc00000>;
212                         no-map;
213                 };
214         };
215 };
216 
217 &main_pmx0 {
218         /* Verdin PWM_1 */
219         pinctrl_epwm0_a: main-epwm0a-default-pins {
220                 pinctrl-single,pins = <
221                         AM62X_IOPAD(0x01b4, PIN_OUTPUT, 2) /* (A13) SPI0_CS0.EHRPWM0_A */ /* SODIMM 15 */
222                 >;
223         };
224 
225         /* Verdin PWM_2 */
226         pinctrl_epwm0_b: main-epwm0b-default-pins {
227                 pinctrl-single,pins = <
228                         AM62X_IOPAD(0x01b8, PIN_OUTPUT, 2) /* (C13) SPI0_CS1.EHRPWM0_B */ /* SODIMM 16 */
229                 >;
230         };
231 
232         /* Verdin PWM_3_DSI */
233         pinctrl_epwm1_a: main-epwm1a-default-pins {
234                 pinctrl-single,pins = <
235                         AM62X_IOPAD(0x01bc, PIN_OUTPUT, 2) /* (A14) SPI0_CLK.EHRPWM1_A */ /* SODIMM 19 */
236                 >;
237         };
238 
239         /* Verdin QSPI_1_CLK as GPIO (conflict with Verdin QSPI_1 interface) */
240         pinctrl_qspi1_clk_gpio: main-gpio0-0-default-pins {
241                 pinctrl-single,pins = <
242                         AM62X_IOPAD(0x0000, PIN_INPUT, 7) /* (H24) OSPI0_CLK.GPIO0_0 */ /* SODIMM 52 */
243                 >;
244         };
245 
246         /* Verdin QSPI_1_IO0 as GPIO (conflict with Verdin QSPI_1 interface) */
247         pinctrl_qspi1_io0_gpio: main-gpio0-3-default-pins {
248                 pinctrl-single,pins = <
249                         AM62X_IOPAD(0x000c, PIN_INPUT, 7) /* (E25) OSPI0_D0.GPIO0_3 */ /* SODIMM 56 */
250                 >;
251         };
252 
253         /* Verdin QSPI_1_IO1 as GPIO (conflict with Verdin QSPI_1 interface) */
254         pinctrl_qspi1_io1_gpio: main-gpio0-4-default-pins {
255                 pinctrl-single,pins = <
256                         AM62X_IOPAD(0x0010, PIN_INPUT, 7) /* (G24) OSPI0_D1.GPIO0_4 */ /* SODIMM 58 */
257                 >;
258         };
259 
260         /* Verdin QSPI_1_IO2 as GPIO (conflict with Verdin QSPI_1 interface) */
261         pinctrl_qspi1_io2_gpio: main-gpio0-5-default-pins {
262                 pinctrl-single,pins = <
263                         AM62X_IOPAD(0x0014, PIN_INPUT, 7) /* (F25) OSPI0_D2.GPIO0_5 */ /* SODIMM 60 */
264                 >;
265         };
266 
267         /* Verdin QSPI_1_IO3 as GPIO (conflict with Verdin QSPI_1 interface) */
268         pinctrl_qspi1_io3_gpio: main-gpio0-6-default-pins {
269                 pinctrl-single,pins = <
270                         AM62X_IOPAD(0x0018, PIN_INPUT, 7) /* (F24) OSPI0_D3.GPIO0_6 */ /* SODIMM 62 */
271                 >;
272         };
273 
274         /* Verdin SPI_1 CS as GPIO */
275         pinctrl_qspi1_io4_gpio: main-gpio0-7-default-pins {
276                 pinctrl-single,pins = <
277                         AM62X_IOPAD(0x001c, PIN_INPUT, 7) /* (J23) OSPI0_D4.GPIO0_7 */ /* SODIMM 202 */
278                 >;
279         };
280 
281         /* Verdin QSPI_1_CS# as GPIO (conflict with Verdin QSPI_1 interface) */
282         pinctrl_qspi1_cs_gpio: main-gpio0-11-default-pins {
283                 pinctrl-single,pins = <
284                         AM62X_IOPAD(0x002c, PIN_INPUT, 7) /* (F23) OSPI0_CSn0.GPIO0_11 */ /* SODIMM 54 */
285                 >;
286         };
287 
288         /* Verdin QSPI_1_CS2# as GPIO (conflict with Verdin QSPI_1 interface) */
289         pinctrl_qspi1_cs2_gpio: main-gpio0-12-default-pins {
290                 pinctrl-single,pins = <
291                         AM62X_IOPAD(0x0030, PIN_INPUT, 7) /* (G21) OSPI0_CSn1.GPIO0_12 */ /* SODIMM 64 */
292                 >;
293         };
294 
295         /* WiFi_W_WKUP_HOST# */
296         pinctrl_wifi_w_wkup_host: main-gpio0-15-default-pins {
297                 pinctrl-single,pins = <
298                         AM62X_IOPAD(0x003c, PIN_INPUT, 7) /* (M25) GPMC0_AD0.GPIO0_15 */ /* SODIMM 174 */
299                 >;
300         };
301 
302         /* WiFi_BT_WKUP_HOST# */
303         pinctrl_bt_wkup_host: main-gpio0-16-default-pins {
304                 pinctrl-single,pins = <
305                         AM62X_IOPAD(0x0040, PIN_INPUT, 7) /* (N23) GPMC0_AD1.GPIO0_16 */ /* SODIMM 172 */
306                 >;
307         };
308 
309         /* PMIC_ETH_RESET# */
310         pinctrl_eth_reset: main-gpio0-17-default-pins {
311                 pinctrl-single,pins = <
312                         AM62X_IOPAD(0x0044, PIN_INPUT, 7) /* (N24) GPMC0_AD2.GPIO0_17 */
313                 >;
314         };
315 
316         /* PMIC_BRIDGE_RESET# */
317         pinctrl_bridge_reset: main-gpio0-20-default-pins {
318                 pinctrl-single,pins = <
319                         AM62X_IOPAD(0x0050, PIN_INPUT, 7) /* (P22) GPMC0_AD5.GPIO0_20 */
320                 >;
321         };
322 
323         /* PMIC_VSEL_SD */
324         pinctrl_vsel_sd: main-gpio0-21-default-pins {
325                 pinctrl-single,pins = <
326                         AM62X_IOPAD(0x0054, PIN_INPUT, 7) /* (P21) GPMC0_AD6.GPIO0_21 */
327                 >;
328         };
329 
330         /* PMIC_EN_WIFI */
331         pinctrl_wifi_en: main-gpio0-22-default-pins {
332                 pinctrl-single,pins = <
333                         AM62X_IOPAD(0x0058, PIN_INPUT, 7) /* (R23) GPMC0_AD7.GPIO0_22 */
334                 >;
335         };
336 
337         /* PMIC_ETH_INT# */
338         pinctrl_eth_int: main-gpio0-25-default-pins {
339                 pinctrl-single,pins = <
340                         AM62X_IOPAD(0x0064, PIN_INPUT_PULLUP, 7) /* (T25) GPMC0_AD10.GPIO0_25 */
341                 >;
342         };
343 
344         /* WiFi_WKUP_BT# */
345         pinctrl_wifi_wkup_bt: main-gpio0-26-default-pins {
346                 pinctrl-single,pins = <
347                         AM62X_IOPAD(0x0068, PIN_INPUT, 7) /* (R21) GPMC0_AD11.GPIO0_26 */
348                 >;
349         };
350 
351         /* WiFi_WKUP_WLAN# */
352         pinctrl_wifi_wkup_wlan: main-gpio0-27-default-pins {
353                 pinctrl-single,pins = <
354                         AM62X_IOPAD(0x006c, PIN_INPUT, 7) /* (T22) GPMC0_AD12.GPIO0_27 */
355                 >;
356         };
357 
358         /* Verdin SD_1_PWR_EN */
359         pinctrl_sd1_pwr_en: main-gpio0-29-default-pins {
360                 pinctrl-single,pins = <
361                         AM62X_IOPAD(0x0074, PIN_INPUT, 7) /* (U25) GPMC0_AD14.GPIO0_29 */ /* SODIMM 76 */
362                 >;
363         };
364 
365         /* Verdin DSI_1_BKL_EN */
366         pinctrl_dsi1_bkl_en: main-gpio0-30-default-pins {
367                 pinctrl-single,pins = <
368                         AM62X_IOPAD(0x0078, PIN_INPUT, 7) /* (U24) GPMC0_AD15.GPIO0_30 */ /* SODIMM 21 */
369                 >;
370         };
371 
372         /* Verdin CTRL_SLEEP_MOCI# */
373         pinctrl_ctrl_sleep_moci: main-gpio0-31-default-pins {
374                 pinctrl-single,pins = <
375                         AM62X_IOPAD(0x007c, PIN_INPUT, 7) /* (P25) GPMC0_CLK.GPIO0_31 */ /* SODIMM 256 */
376                 >;
377         };
378 
379         /* Verdin CTRL_WAKE1_MICO# */
380         pinctrl_ctrl_wake1_mico: main-gpio0-32-default-pins {
381                 pinctrl-single,pins = <
382                         AM62X_IOPAD(0x0084, PIN_INPUT_PULLUP, 7) /* (L23) GPMC0_ADVn_ALE.GPIO0_32 */ /* SODIMM 252 */
383                 >;
384         };
385 
386         /* Verdin I2S_2_D_OUT as GPIO (conflict with Verdin I2S_2 interface) */
387         pinctrl_i2s_2_d_out_gpio: main-gpio0-34-default-pins {
388                 pinctrl-single,pins = <
389                         AM62X_IOPAD(0x008c, PIN_INPUT, 7) /* (L25) GPMC0_WEn.GPIO0_34 */ /* SODIMM 46 */
390                 >;
391         };
392 
393         /* Verdin I2S_2_BCLK as GPIO (conflict with Verdin I2S_2 interface) */
394         pinctrl_i2s_2_bclk_gpio: main-gpio0-35-default-pins {
395                 pinctrl-single,pins = <
396                         AM62X_IOPAD(0x0090, PIN_INPUT, 7) /* (M24) GPMC0_BE0n_CLE.GPIO0_35 */ /* SODIMM 42 */
397                 >;
398         };
399 
400         /* Verdin GPIO_6 */
401         pinctrl_gpio_6: main-gpio0-36-default-pins {
402                 pinctrl-single,pins = <
403                         AM62X_IOPAD(0x0094, PIN_INPUT, 7) /* (N20) GPMC0_BE1n.GPIO0_36 */ /* SODIMM 218 */
404                 >;
405         };
406 
407         /* Verdin ETH_2_RGMII_INT# */
408         pinctrl_eth2_rgmii_int: main-gpio0-38-default-pins {
409                 pinctrl-single,pins = <
410                         AM62X_IOPAD(0x009c, PIN_INPUT, 7) /* (V25) GPMC0_WAIT1.GPIO0_38 */ /* SODIMM 189 */
411                 >;
412         };
413 
414         /* Verdin GPIO_5 */
415         pinctrl_gpio_5: main-gpio0-40-default-pins {
416                 pinctrl-single,pins = <
417                         AM62X_IOPAD(0x00a4, PIN_INPUT, 7) /* (M22) GPMC0_DIR.GPIO0_40 */ /* SODIMM 216 */
418                 >;
419         };
420 
421         /* Verdin GPIO_7 */
422         pinctrl_gpio_7: main-gpio0-41-default-pins {
423                 pinctrl-single,pins = <
424                         AM62X_IOPAD(0x00a8, PIN_INPUT, 7) /* (M21) GPMC0_CSn0.GPIO0_41 */ /* SODIMM 220 */
425                 >;
426         };
427 
428         /* Verdin GPIO_8 */
429         pinctrl_gpio_8: main-gpio0-42-default-pins {
430                 pinctrl-single,pins = <
431                         AM62X_IOPAD(0x00ac, PIN_INPUT, 7) /* (L21) GPMC0_CSn1.GPIO0_42 */ /* SODIMM 222 */
432                 >;
433         };
434 
435         /* Verdin USB_1_OC# */
436         pinctrl_usb1_oc: main-gpio0-71-default-pins {
437                 pinctrl-single,pins = <
438                         AM62X_IOPAD(0x0124, PIN_INPUT, 7) /* (A23) MMC2_SDCD.GPIO0_71 */ /* SODIMM 157 */
439                 >;
440         };
441 
442         /* Verdin USB_2_OC# */
443         pinctrl_usb2_oc: main-gpio0-72-default-pins {
444                 pinctrl-single,pins = <
445                         AM62X_IOPAD(0x0128, PIN_INPUT, 7) /* (B23) MMC2_SDWP.GPIO0_72 */ /* SODIMM 187 */
446                 >;
447         };
448 
449         /* Verdin PWM_3_DSI as GPIO */
450         pinctrl_pwm3_dsi_gpio: main-gpio1-17-default-pins {
451                 pinctrl-single,pins = <
452                         AM62X_IOPAD(0x01bc, PIN_INPUT, 7) /* (A14) SPI0_CLK.GPIO1_17 */ /* SODIMM 19 */
453                 >;
454         };
455 
456         /* Verdin QSPI_1_DQS as GPIO */
457         pinctrl_qspi1_dqs_gpio: main-gpio1-18-default-pins {
458                 pinctrl-single,pins = <
459                         AM62X_IOPAD(0x01c0, PIN_INPUT, 7) /* (B13) SPI0_D0.GPIO1_18 */ /* SODIMM 66 */
460                 >;
461         };
462 
463         /* Verdin USB_1_ID */
464         pinctrl_usb0_id: main-gpio1-19-default-pins {
465                 pinctrl-single,pins = <
466                         AM62X_IOPAD(0x01c4, PIN_INPUT, 7) /* (B14) SPI0_D1.GPIO1_19 */ /* SODIMM 161 */
467                 >;
468         };
469 
470         /* Verdin SD_1_CD# as GPIO */
471         pinctrl_sd1_cd_gpio: main-gpio1-48-default-pins {
472                 pinctrl-single,pins = <
473                         AM62X_IOPAD(0x240, PIN_INPUT_PULLUP, 7) /* (D17) MMC1_SDCD.GPIO1_48 */ /* SODIMM 84 */
474                 >;
475         };
476 
477         /* Verdin DSI_1_INT# (pulled-up as active-low) */
478         pinctrl_dsi1_int: main-gpio1-49-default-pins {
479                 pinctrl-single,pins = <
480                         AM62X_IOPAD(0x0244, PIN_INPUT_PULLUP, 7) /* (C17) MMC1_SDWP.GPIO1_49 */ /* SODIMM 17 */
481                 >;
482         };
483 
484         /* Verdin USB_1_EN */
485         pinctrl_usb0_en: main-gpio1-50-default-pins {
486                 pinctrl-single,pins = <
487                         AM62X_IOPAD(0x0254, PIN_INPUT, 7) /* (C20) USB0_DRVVBUS.GPIO1_50 */ /* SODIMM 155 */
488                 >;
489         };
490 
491         /* On-module I2C - PMIC_I2C */
492         pinctrl_i2c0: main-i2c0-default-pins {
493                 pinctrl-single,pins = <
494                         AM62X_IOPAD(0x01e0, PIN_INPUT, 0) /* (B16) I2C0_SCL */ /* PMIC_I2C_SCL */
495                         AM62X_IOPAD(0x01e4, PIN_INPUT, 0) /* (A16) I2C0_SDA */ /* PMIC_I2C_SDA */
496                 >;
497         };
498 
499         /* Verdin I2C_1 */
500         pinctrl_i2c1: main-i2c1-default-pins {
501                 pinctrl-single,pins = <
502                         AM62X_IOPAD(0x01e8, PIN_INPUT_PULLUP, 0) /* (B17) I2C1_SCL */ /* SODIMM 14 */
503                         AM62X_IOPAD(0x01ec, PIN_INPUT_PULLUP, 0) /* (A17) I2C1_SDA */ /* SODIMM 12 */
504                 >;
505         };
506 
507         /* Verdin I2C_2_DSI */
508         pinctrl_i2c2: main-i2c2-default-pins {
509                 pinctrl-single,pins = <
510                         AM62X_IOPAD(0x00b0, PIN_INPUT, 1) /* (K22) GPMC0_CSn2.I2C2_SCL */ /* SODIMM 55 */
511                         AM62X_IOPAD(0x00b4, PIN_INPUT, 1) /* (K24) GPMC0_CSn3.I2C2_SDA */ /* SODIMM 53 */
512                 >;
513         };
514 
515         /* Verdin I2C_4_CSI */
516         pinctrl_i2c3: main-i2c3-default-pins {
517                 pinctrl-single,pins = <
518                         AM62X_IOPAD(0x01d0, PIN_INPUT, 2) /* (A15) UART0_CTSn.I2C3_SCL */ /* SODIMM 95 */
519                         AM62X_IOPAD(0x01d4, PIN_INPUT, 2) /* (B15) UART0_RTSn.I2C3_SDA */ /* SODIMM 93 */
520                 >;
521         };
522 
523         /* I2S_1_MCLK */
524         pinctrl_i2s1_mclk: main-system-audio-ext-reflock1-default-pins {
525                 pinctrl-single,pins = <
526                         AM62X_IOPAD(0x00a0, PIN_OUTPUT, 1) /* (K25) GPMC0_WPn.AUDIO_EXT_REFCLK1 */ /* SODIMM 38 */
527                 >;
528         };
529 
530         /* Verdin I2S_1 */
531         pinctrl_mcasp0: main-mcasp0-default-pins {
532                 pinctrl-single,pins = <
533                         AM62X_IOPAD(0x01a4, PIN_INPUT,  0) /* (B20) MCASP0_ACLKX */ /* SODIMM 30 */
534                         AM62X_IOPAD(0x01a8, PIN_INPUT,  0) /* (D20) MCASP0_AFSX  */ /* SODIMM 32 */
535                         AM62X_IOPAD(0x01a0, PIN_OUTPUT, 0) /* (E18) MCASP0_AXR0  */ /* SODIMM 34 */
536                         AM62X_IOPAD(0x019c, PIN_INPUT,  0) /* (B18) MCASP0_AXR1  */ /* SODIMM 36 */
537                 >;
538         };
539 
540         /* Verdin I2S_2 */
541         pinctrl_mcasp1: main-mcasp1-default-pins {
542                 pinctrl-single,pins = <
543                         AM62X_IOPAD(0x0090, PIN_INPUT,  2) /* (M24) GPMC0_BE0n_CLE.MCASP1_ACLKX */ /* SODIMM 42 */
544                         AM62X_IOPAD(0x0098, PIN_INPUT,  2) /* (U23) GPMC0_WAIT0.MCASP1_AFSX     */ /* SODIMM 44 */
545                         AM62X_IOPAD(0x008c, PIN_OUTPUT, 2) /* (L25) GPMC0_WEn.MCASP1_AXR0       */ /* SODIMM 46 */
546                         AM62X_IOPAD(0x0088, PIN_INPUT,  2) /* (L24) GPMC0_OEn_REn.MCASP1_AXR1   */ /* SODIMM 48 */
547                 >;
548         };
549 
550         /* Verdin CAN_1 */
551         pinctrl_mcan0: main-mcan0-default-pins {
552                 pinctrl-single,pins = <
553                         AM62X_IOPAD(0x01dc, PIN_INPUT,  0) /* (E15) MCAN0_RX */ /* SODIMM 22 */
554                         AM62X_IOPAD(0x01d8, PIN_OUTPUT, 0) /* (C15) MCAN0_TX */ /* SODIMM 20 */
555                 >;
556         };
557 
558         /* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */
559         pinctrl_mdio: main-mdio1-default-pins {
560                 pinctrl-single,pins = <
561                         AM62X_IOPAD(0x160, PIN_OUTPUT, 0) /* (AD24) MDIO0_MDC  */ /* ETH_1_MDC,  SODIMM 193 */
562                         AM62X_IOPAD(0x15c, PIN_INPUT, 0)  /* (AB22) MDIO0_MDIO */ /* ETH_1_MDIO, SODIMM 191 */
563                 >;
564         };
565 
566         /* On-module eMMC */
567         pinctrl_sdhci0: main-mmc0-default-pins {
568                 pinctrl-single,pins = <
569                         AM62X_IOPAD(0x220, PIN_INPUT, 0) /*  (Y3) MMC0_CMD  */
570                         AM62X_IOPAD(0x218, PIN_INPUT, 0) /* (AB1) MMC0_CLK  */
571                         AM62X_IOPAD(0x214, PIN_INPUT, 0) /* (AA2) MMC0_DAT0 */
572                         AM62X_IOPAD(0x210, PIN_INPUT, 0) /* (AA1) MMC0_DAT1 */
573                         AM62X_IOPAD(0x20c, PIN_INPUT, 0) /* (AA3) MMC0_DAT2 */
574                         AM62X_IOPAD(0x208, PIN_INPUT, 0) /*  (Y4) MMC0_DAT3 */
575                         AM62X_IOPAD(0x204, PIN_INPUT, 0) /* (AB2) MMC0_DAT4 */
576                         AM62X_IOPAD(0x200, PIN_INPUT, 0) /* (AC1) MMC0_DAT5 */
577                         AM62X_IOPAD(0x1fc, PIN_INPUT, 0) /* (AD2) MMC0_DAT6 */
578                         AM62X_IOPAD(0x1f8, PIN_INPUT, 0) /* (AC2) MMC0_DAT7 */
579                 >;
580         };
581 
582         /* Verdin SD_1 */
583         pinctrl_sdhci1: main-mmc1-default-pins {
584                 pinctrl-single,pins = <
585                         AM62X_IOPAD(0x23c, PIN_INPUT,        0) /* (A21) MMC1_CMD  */ /* SODIMM 74 */
586                         AM62X_IOPAD(0x234, PIN_INPUT,        0) /* (B22) MMC1_CLK  */ /* SODIMM 78 */
587                         AM62X_IOPAD(0x230, PIN_INPUT,        0) /* (A22) MMC1_DAT0 */ /* SODIMM 80 */
588                         AM62X_IOPAD(0x22c, PIN_INPUT,        0) /* (B21) MMC1_DAT1 */ /* SODIMM 82 */
589                         AM62X_IOPAD(0x228, PIN_INPUT,        0) /* (C21) MMC1_DAT2 */ /* SODIMM 70 */
590                         AM62X_IOPAD(0x224, PIN_INPUT,        0) /* (D22) MMC1_DAT3 */ /* SODIMM 72 */
591                 >;
592         };
593 
594         /* On-module Wi-Fi on WB SKUs, module-specific SDIO otherwise */
595         pinctrl_sdhci2: main-mmc2-default-pins {
596                 pinctrl-single,pins = <
597                         AM62X_IOPAD(0x120, PIN_INPUT, 0) /* (C24) MMC2_CMD   */ /* WiFi_SDIO_CMD   */
598                         AM62X_IOPAD(0x118, PIN_INPUT, 0) /* (D25) MMC2_CLK   */ /* WiFi_SDIO_CLK   */
599                         AM62X_IOPAD(0x114, PIN_INPUT, 0) /* (B24) MMC2_DAT0  */ /* WiFi_SDIO_DATA0 */
600                         AM62X_IOPAD(0x110, PIN_INPUT, 0) /* (C25) MMC2_DAT1  */ /* WiFi_SDIO_DATA1 */
601                         AM62X_IOPAD(0x10c, PIN_INPUT, 0) /* (E23) MMC2_DAT2  */ /* WiFi_SDIO_DATA2 */
602                         AM62X_IOPAD(0x108, PIN_INPUT, 0) /* (D24) MMC2_DAT3  */ /* WiFi_SDIO_DATA3 */
603                         AM62X_IOPAD(0x11c, PIN_INPUT, 0) /* (#N/A) MMC2_CLKB */
604                 >;
605         };
606 
607         /* Verdin QSPI_1 */
608         pinctrl_ospi0: main-ospi0-default-pins {
609                 pinctrl-single,pins = <
610                         AM62X_IOPAD(0x0000, PIN_OUTPUT, 0) /* (H24) OSPI0_CLK  */ /* SODIMM 52 */
611                         AM62X_IOPAD(0x002c, PIN_OUTPUT, 0) /* (F23) OSPI0_CSn0 */ /* SODIMM 54 */
612                         AM62X_IOPAD(0x0030, PIN_OUTPUT, 0) /* (G21) OSPI0_CSn1 */ /* SODIMM 64 */
613                         AM62X_IOPAD(0x000c, PIN_INPUT, 0)  /* (E25) OSPI0_D0   */ /* SODIMM 56 */
614                         AM62X_IOPAD(0x0010, PIN_INPUT, 0)  /* (G24) OSPI0_D1   */ /* SODIMM 58 */
615                         AM62X_IOPAD(0x0014, PIN_INPUT, 0)  /* (F25) OSPI0_D2   */ /* SODIMM 60 */
616                         AM62X_IOPAD(0x0018, PIN_INPUT, 0)  /* (F24) OSPI0_D3   */ /* SODIMM 62 */
617                 >;
618         };
619 
620         /* Verdin ETH_1 RGMII (On-module PHY) */
621         pinctrl_rgmii1: main-rgmii1-default-pins {
622                 pinctrl-single,pins = <
623                         AM62X_IOPAD(0x14c, PIN_INPUT,  0) /* (AB17) RGMII1_RD0    */
624                         AM62X_IOPAD(0x150, PIN_INPUT,  0) /* (AC17) RGMII1_RD1    */
625                         AM62X_IOPAD(0x154, PIN_INPUT,  0) /* (AB16) RGMII1_RD2    */
626                         AM62X_IOPAD(0x158, PIN_INPUT,  0) /* (AA15) RGMII1_RD3    */
627                         AM62X_IOPAD(0x148, PIN_INPUT,  0) /* (AD17) RGMII1_RXC    */
628                         AM62X_IOPAD(0x144, PIN_INPUT,  0) /* (AE17) RGMII1_RX_CTL */
629                         AM62X_IOPAD(0x134, PIN_OUTPUT, 0) /* (AE20) RGMII1_TD0    */
630                         AM62X_IOPAD(0x138, PIN_OUTPUT, 0) /* (AD20) RGMII1_TD1    */
631                         AM62X_IOPAD(0x13c, PIN_OUTPUT, 0) /* (AE18) RGMII1_TD2    */
632                         AM62X_IOPAD(0x140, PIN_OUTPUT, 0) /* (AD18) RGMII1_TD3    */
633                         AM62X_IOPAD(0x130, PIN_OUTPUT, 0) /* (AE19) RGMII1_TXC    */
634                         AM62X_IOPAD(0x12c, PIN_OUTPUT, 0) /* (AD19) RGMII1_TX_CTL */
635                 >;
636         };
637 
638         /* Verdin ETH_2 RGMII */
639         pinctrl_rgmii2: main-rgmii2-default-pins {
640                 pinctrl-single,pins = <
641                         AM62X_IOPAD(0x184, PIN_INPUT,  0) /* (AE23) RGMII2_RD0    */ /* SODIMM 201 */
642                         AM62X_IOPAD(0x188, PIN_INPUT,  0) /* (AB20) RGMII2_RD1    */ /* SODIMM 203 */
643                         AM62X_IOPAD(0x18c, PIN_INPUT,  0) /* (AC21) RGMII2_RD2    */ /* SODIMM 205 */
644                         AM62X_IOPAD(0x190, PIN_INPUT,  0) /* (AE22) RGMII2_RD3    */ /* SODIMM 207 */
645                         AM62X_IOPAD(0x180, PIN_INPUT,  0) /* (AD23) RGMII2_RXC    */ /* SODIMM 197 */
646                         AM62X_IOPAD(0x17c, PIN_INPUT,  0) /* (AD22) RGMII2_RX_CTL */ /* SODIMM 199 */
647                         AM62X_IOPAD(0x16c, PIN_OUTPUT, 0) /*  (Y18) RGMII2_TD0    */ /* SODIMM 221 */
648                         AM62X_IOPAD(0x170, PIN_OUTPUT, 0) /* (AA18) RGMII2_TD1    */ /* SODIMM 219 */
649                         AM62X_IOPAD(0x174, PIN_OUTPUT, 0) /* (AD21) RGMII2_TD2    */ /* SODIMM 217 */
650                         AM62X_IOPAD(0x178, PIN_OUTPUT, 0) /* (AC20) RGMII2_TD3    */ /* SODIMM 215 */
651                         AM62X_IOPAD(0x168, PIN_OUTPUT, 0) /* (AE21) RGMII2_TXC    */ /* SODIMM 213 */
652                         AM62X_IOPAD(0x164, PIN_OUTPUT, 0) /* (AA19) RGMII2_TX_CTL */ /* SODIMM 211 */
653                 >;
654         };
655 
656         /* Verdin SPI_1 */
657         pinctrl_spi1: main-spi1-default-pins {
658                 pinctrl-single,pins = <
659                         AM62X_IOPAD(0x0020, PIN_INPUT, 1) /* (J25) OSPI0_D5.SPI1_CLK */ /* SODIMM 196 */
660                         AM62X_IOPAD(0x0024, PIN_INPUT, 1) /* (H25) OSPI0_D6.SPI1_D0  */ /* SODIMM 200 */
661                         AM62X_IOPAD(0x0028, PIN_INPUT, 1) /* (J22) OSPI0_D7.SPI1_D1  */ /* SODIMM 198 */
662                 >;
663         };
664 
665         /* Verdin SPI_1 CS */
666         pinctrl_spi1_cs0: main-spi1-cs0-default-pins {
667                 pinctrl-single,pins = <
668                         AM62X_IOPAD(0x001c, PIN_INPUT, 1) /* (J23) OSPI0_D4.SPI1_CS0 */ /* SODIMM 202 */
669                 >;
670         };
671 
672         /* ETH_25MHz_CLK */
673         pinctrl_eth_clock: main-system-clkout0-default-pins {
674                 pinctrl-single,pins = <
675                         AM62X_IOPAD(0x01f0, PIN_OUTPUT_PULLUP, 5) /* (A18) EXT_REFCLK1.CLKOUT0 */
676                 >;
677         };
678 
679         /* PMIC_EXTINT# */
680         pinctrl_pmic_extint: main-system-extint-default-pins {
681                 pinctrl-single,pins = <
682                         AM62X_IOPAD(0x01f4, PIN_INPUT, 0) /* (D16) EXTINTn */
683                 >;
684         };
685 
686         /* Verdin UART_3, used as the Linux console */
687         pinctrl_uart0: main-uart0-default-pins {
688                 pinctrl-single,pins = <
689                         AM62X_IOPAD(0x1c8, PIN_INPUT_PULLUP, 0) /* (D14) UART0_RXD */ /* SODIMM 147 */
690                         AM62X_IOPAD(0x1cc, PIN_OUTPUT,       0) /* (E14) UART0_TXD */ /* SODIMM 149 */
691                 >;
692         };
693 
694         /* Verdin UART_1 */
695         pinctrl_uart1: main-uart1-default-pins {
696                 pinctrl-single,pins = <
697                         AM62X_IOPAD(0x0194, PIN_INPUT_PULLUP, 2) /* (B19) MCASP0_AXR3.UART1_CTSn */ /* SODIMM 135 */
698                         AM62X_IOPAD(0x0198, PIN_OUTPUT,       2) /* (A19) MCASP0_AXR2.UART1_RTSn */ /* SODIMM 133 */
699                         AM62X_IOPAD(0x01ac, PIN_INPUT_PULLUP, 2) /* (E19) MCASP0_AFSR.UART1_RXD  */ /* SODIMM 129 */
700                         AM62X_IOPAD(0x01b0, PIN_OUTPUT,       2) /* (A20) MCASP0_ACLKR.UART1_TXD */ /* SODIMM 131 */
701                 >;
702         };
703 
704         /* Bluetooth on WB SKUs, module-specific UART otherwise */
705         pinctrl_uart5: main-uart5-default-pins {
706                 pinctrl-single,pins = <
707                         AM62X_IOPAD(0x0008, PIN_INPUT_PULLUP, 5) /* (J24) OSPI0_DQS.UART5_CTSn    */ /* WiFi_UART_CTS */
708                         AM62X_IOPAD(0x0004, PIN_OUTPUT,       5) /* (G25) OSPI0_LBCLKO.UART5_RTSn */ /* WiFi_UART_RTS */
709                         AM62X_IOPAD(0x0034, PIN_INPUT_PULLUP, 5) /* (H21) OSPI0_CSn2.UART5_RXD    */ /* WiFi_UART_RXD */
710                         AM62X_IOPAD(0x0038, PIN_OUTPUT,       5) /* (E24) OSPI0_CSn3.UART5_TXD    */ /* WiFi_UART_TXD */
711                 >;
712         };
713 
714         /* Verdin USB_2 */
715         pinctrl_usb1: main-usb1-default-pins {
716                 pinctrl-single,pins = <
717                         AM62X_IOPAD(0x0258, PIN_OUTPUT, 0) /* (F18) USB1_DRVVBUS */ /* SODIMM 185 */
718                 >;
719         };
720 
721         /* DSS VOUT0 RGB */
722         pinctrl_parallel_rgb: main-vout-default-pins {
723                 pinctrl-single,pins = <
724                         AM62X_IOPAD(0x0100, PIN_OUTPUT, 0) /* (AC25) VOUT0_VSYNC            */
725                         AM62X_IOPAD(0x00f8, PIN_OUTPUT, 0) /* (AB24) VOUT0_HSYNC            */
726                         AM62X_IOPAD(0x0104, PIN_OUTPUT, 0) /* (AC24) VOUT0_PCLK             */
727                         AM62X_IOPAD(0x00fc, PIN_OUTPUT, 0) /*  (Y20) VOUT0_DE               */
728                         AM62X_IOPAD(0x00b8, PIN_OUTPUT, 0) /*  (U22) VOUT0_DATA0            */
729                         AM62X_IOPAD(0x00bc, PIN_OUTPUT, 0) /*  (V24) VOUT0_DATA1            */
730                         AM62X_IOPAD(0x00c0, PIN_OUTPUT, 0) /*  (W25) VOUT0_DATA2            */
731                         AM62X_IOPAD(0x00c4, PIN_OUTPUT, 0) /*  (W24) VOUT0_DATA3            */
732                         AM62X_IOPAD(0x00c8, PIN_OUTPUT, 0) /*  (Y25) VOUT0_DATA4            */
733                         AM62X_IOPAD(0x00cc, PIN_OUTPUT, 0) /*  (Y24) VOUT0_DATA5            */
734                         AM62X_IOPAD(0x00d0, PIN_OUTPUT, 0) /*  (Y23) VOUT0_DATA6            */
735                         AM62X_IOPAD(0x00d4, PIN_OUTPUT, 0) /* (AA25) VOUT0_DATA7            */
736                         AM62X_IOPAD(0x00d8, PIN_OUTPUT, 0) /*  (V21) VOUT0_DATA8            */
737                         AM62X_IOPAD(0x00dc, PIN_OUTPUT, 0) /*  (W21) VOUT0_DATA9            */
738                         AM62X_IOPAD(0x00e0, PIN_OUTPUT, 0) /*  (V20) VOUT0_DATA10           */
739                         AM62X_IOPAD(0x00e4, PIN_OUTPUT, 0) /* (AA23) VOUT0_DATA11           */
740                         AM62X_IOPAD(0x00e8, PIN_OUTPUT, 0) /* (AB25) VOUT0_DATA12           */
741                         AM62X_IOPAD(0x00ec, PIN_OUTPUT, 0) /* (AA24) VOUT0_DATA13           */
742                         AM62X_IOPAD(0x00f0, PIN_OUTPUT, 0) /*  (Y22) VOUT0_DATA14           */
743                         AM62X_IOPAD(0x00f4, PIN_OUTPUT, 0) /* (AA21) VOUT0_DATA15           */
744                         AM62X_IOPAD(0x005c, PIN_OUTPUT, 1) /*  (R24) GPMC0_AD8.VOUT0_DATA16 */
745                         AM62X_IOPAD(0x0060, PIN_OUTPUT, 1) /*  (R25) GPMC0_AD9.VOUT0_DATA17 */
746                 >;
747         };
748 };
749 
750 &mcu_pmx0 {
751         /* Verdin PCIE_1_RESET# */
752         pinctrl_pcie_1_reset: mcu-gpio0-0-default-pins {
753                 pinctrl-single,pins = <
754                         AM62X_MCU_IOPAD(0x0000, PIN_INPUT, 7) /* (E8) MCU_SPI0_CS0.MCU_GPIO0_0 */ /* SODIMM 244 */
755                 >;
756         };
757 
758         /* Verdin GPIO_1 */
759         pinctrl_gpio_1: mcu-gpio0-1-default-pins {
760                 pinctrl-single,pins = <
761                         AM62X_MCU_IOPAD(0x0004, PIN_INPUT, 7) /* (B8) MCU_SPI0_CS1.MCU_GPIO0_1 */ /* SODIMM 206 */
762                 >;
763         };
764 
765         /* Verdin GPIO_2 */
766         pinctrl_gpio_2: mcu-gpio0-2-default-pins {
767                 pinctrl-single,pins = <
768                         AM62X_MCU_IOPAD(0x0008, PIN_INPUT, 7) /* (A7) MCU_SPI0_CLK.MCU_GPIO0_2 */ /* SODIMM 208 */
769                 >;
770         };
771 
772         /* Verdin GPIO_3 */
773         pinctrl_gpio_3: mcu-gpio0-3-default-pins {
774                 pinctrl-single,pins = <
775                         AM62X_MCU_IOPAD(0x000c, PIN_INPUT, 7) /* (D9) MCU_SPI0_D0.MCU_GPIO0_3 */ /* SODIMM 210 */
776                 >;
777         };
778 
779         /* Verdin GPIO_4 */
780         pinctrl_gpio_4: mcu-gpio0-4-default-pins {
781                 pinctrl-single,pins = <
782                         AM62X_MCU_IOPAD(0x0010, PIN_INPUT, 7) /* (C9) MCU_SPI0_D1.MCU_GPIO0_4 */ /* SODIMM 212 */
783                 >;
784         };
785 
786         /* Verdin I2C_3_HDMI */
787         pinctrl_mcu_i2c0: mcu-i2c0-default-pins {
788                 pinctrl-single,pins = <
789                         AM62X_MCU_IOPAD(0x0044, PIN_INPUT, 0) /*  (A8) MCU_I2C0_SCL */ /* SODIMM 59 */
790                         AM62X_MCU_IOPAD(0x0048, PIN_INPUT, 0) /* (D10) MCU_I2C0_SDA */ /* SODIMM 57 */
791                 >;
792         };
793 
794         /* Verdin CAN_2 */
795         pinctrl_mcu_mcan0: mcu-mcan0-default-pins {
796                 pinctrl-single,pins = <
797                         AM62X_MCU_IOPAD(0x0038, PIN_INPUT,  0) /* (B3) MCU_MCAN0_RX */ /* SODIMM 26 */
798                         AM62X_MCU_IOPAD(0x0034, PIN_OUTPUT, 0) /* (D6) MCU_MCAN0_TX */ /* SODIMM 24 */
799                 >;
800         };
801 
802         /* Verdin UART_4 - Reserved to Cortex-M4 */
803         pinctrl_mcu_uart0: mcu-uart0-default-pins {
804                 pinctrl-single,pins = <
805                         AM62X_MCU_IOPAD(0x0014, PIN_INPUT_PULLUP, 0) /* (B5) MCU_UART0_RXD */ /* SODIMM 151 */
806                         AM62X_MCU_IOPAD(0x0018, PIN_OUTPUT,       0) /* (A5) MCU_UART0_TXD */ /* SODIMM 153 */
807                 >;
808         };
809 
810         /* Verdin CSI_1_MCLK */
811         pinctrl_csi1_mclk: wkup-clkout0-default-pins {
812                 pinctrl-single,pins = <
813                         AM62X_MCU_IOPAD(0x0084, PIN_OUTPUT, 0) /* (A12) WKUP_CLKOUT0 */ /* SODIMM 91 */
814                 >;
815         };
816 
817         /* Verdin UART_2 */
818         pinctrl_wkup_uart0: wkup-uart0-default-pins {
819                 pinctrl-single,pins = <
820                         AM62X_MCU_IOPAD(0x002c, PIN_INPUT_PULLUP, 0) /* (C6) WKUP_UART0_CTSn */ /* SODIMM 143 */
821                         AM62X_MCU_IOPAD(0x0030, PIN_OUTPUT,       0) /* (A4) WKUP_UART0_RTSn */ /* SODIMM 141 */
822                         AM62X_MCU_IOPAD(0x0024, PIN_INPUT_PULLUP, 0) /* (B4) WKUP_UART0_RXD  */ /* SODIMM 137 */
823                         AM62X_MCU_IOPAD(0x0028, PIN_OUTPUT,       0) /* (C5) WKUP_UART0_TXD  */ /* SODIMM 139 */
824                 >;
825         };
826 };
827 
828 /* VERDIN I2S_1_MCLK */
829 &audio_refclk1 {
830         assigned-clock-rates = <25000000>;
831 };
832 
833 &cpsw3g {
834         pinctrl-names = "default";
835         pinctrl-0 = <&pinctrl_rgmii1>;
836         status = "disabled";
837 };
838 
839 /* Verdin ETH_1 (On-module PHY) */
840 &cpsw_port1 {
841         phy-handle = <&cpsw3g_phy0>;
842         phy-mode = "rgmii-rxid";
843         status = "disabled";
844 };
845 
846 /* Verdin ETH_2_RGMII */
847 &cpsw_port2 {
848         status = "disabled";
849 };
850 
851 /* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */
852 &cpsw3g_mdio {
853         assigned-clocks = <&k3_clks 157 20>;
854         assigned-clock-parents = <&k3_clks 157 22>;
855         assigned-clock-rates = <25000000>;
856         pinctrl-names = "default";
857         pinctrl-0 = <&pinctrl_eth_clock>, <&pinctrl_mdio>;
858         status = "disabled";
859 
860         cpsw3g_phy0: ethernet-phy@0 {
861                 compatible = "ethernet-phy-id2000.a231";
862                 reg = <0>;
863                 interrupt-parent = <&main_gpio0>;
864                 interrupts = <25 IRQ_TYPE_EDGE_FALLING>;
865                 pinctrl-names = "default";
866                 pinctrl-0 = <&pinctrl_eth_int>, <&pinctrl_eth_reset>;
867                 reset-gpios = <&main_gpio0 17 GPIO_ACTIVE_LOW>;
868                 reset-assert-us = <10>;
869                 reset-deassert-us = <1000>;
870                 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
871                 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
872         };
873 };
874 
875 &dss {
876         pinctrl-names = "default";
877         pinctrl-0 = <&pinctrl_parallel_rgb>;
878         status = "disabled";
879 };
880 
881 &dss_ports {
882         #address-cells = <1>;
883         #size-cells = <0>;
884 
885         /* VP2: DPI Output */
886         port@1 {
887                 reg = <1>;
888 
889                 dpi_out: endpoint {
890                         remote-endpoint = <&rgb_in>;
891                 };
892         };
893 };
894 
895 /* Verdin PWM_1, PWM_2 */
896 &epwm0 {
897         pinctrl-names = "default";
898         pinctrl-0 = <&pinctrl_epwm0_a>, <&pinctrl_epwm0_b>;
899         status = "disabled";
900 };
901 
902 /* Verdin PWM_3_DSI */
903 &epwm1 {
904         pinctrl-names = "default";
905         pinctrl-0 = <&pinctrl_epwm1_a>;
906         status = "disabled";
907 };
908 
909 &main_gpio0 {
910         gpio-line-names =
911                 "SODIMM_52", /* 0 */
912                 "",
913                 "",
914                 "SODIMM_56",
915                 "SODIMM_58",
916                 "SODIMM_60",
917                 "SODIMM_62",
918                 "",
919                 "",
920                 "",
921                 "", /* 10 */
922                 "SODIMM_54",
923                 "SODIMM_64",
924                 "",
925                 "",
926                 "SODIMM_174",
927                 "SODIMM_172",
928                 "",
929                 "",
930                 "",
931                 "", /* 20 */
932                 "",
933                 "",
934                 "",
935                 "",
936                 "",
937                 "",
938                 "",
939                 "",
940                 "SODIMM_76",
941                 "SODIMM_21", /* 30 */
942                 "SODIMM_256",
943                 "SODIMM_252",
944                 "",
945                 "SODIMM_46",
946                 "SODIMM_42",
947                 "SODIMM_218",
948                 "",
949                 "SODIMM_189",
950                 "",
951                 "SODIMM_216", /* 40 */
952                 "SODIMM_220",
953                 "SODIMM_222",
954                 "",
955                 "",
956                 "",
957                 "",
958                 "",
959                 "",
960                 "",
961                 "", /* 50 */
962                 "",
963                 "",
964                 "",
965                 "",
966                 "",
967                 "",
968                 "",
969                 "",
970                 "",
971                 "", /* 60 */
972                 "",
973                 "",
974                 "",
975                 "",
976                 "",
977                 "",
978                 "",
979                 "",
980                 "",
981                 "", /* 70 */
982                 "SODIMM_157",
983                 "SODIMM_187",
984                 "",
985                 "",
986                 "",
987                 "",
988                 "",
989                 "",
990                 "",
991                 "", /* 80 */
992                 "",
993                 "",
994                 "",
995                 "",
996                 "",
997                 "";
998 };
999 
1000 &main_gpio1 {
1001         gpio-line-names =
1002                 "", /* 0 */
1003                 "",
1004                 "",
1005                 "",
1006                 "",
1007                 "",
1008                 "",
1009                 "",
1010                 "",
1011                 "",
1012                 "", /* 10 */
1013                 "",
1014                 "",
1015                 "",
1016                 "",
1017                 "SODIMM_15",
1018                 "SODIMM_16",
1019                 "SODIMM_19",
1020                 "SODIMM_66",
1021                 "SODIMM_161",
1022                 "", /* 20 */
1023                 "",
1024                 "",
1025                 "",
1026                 "",
1027                 "",
1028                 "",
1029                 "",
1030                 "",
1031                 "",
1032                 "", /* 30 */
1033                 "",
1034                 "",
1035                 "",
1036                 "",
1037                 "",
1038                 "",
1039                 "",
1040                 "",
1041                 "",
1042                 "", /* 40 */
1043                 "",
1044                 "",
1045                 "",
1046                 "",
1047                 "",
1048                 "",
1049                 "",
1050                 "",
1051                 "SODIMM_17",
1052                 "SODIMM_155", /* 50 */
1053                 "",
1054                 "",
1055                 "",
1056                 "",
1057                 "",
1058                 "",
1059                 "",
1060                 "",
1061                 "",
1062                 "", /* 60 */
1063                 "",
1064                 "",
1065                 "",
1066                 "",
1067                 "",
1068                 "",
1069                 "",
1070                 "",
1071                 "",
1072                 "", /* 70 */
1073                 "",
1074                 "",
1075                 "",
1076                 "",
1077                 "",
1078                 "",
1079                 "",
1080                 "",
1081                 "",
1082                 "", /* 80 */
1083                 "",
1084                 "",
1085                 "",
1086                 "",
1087                 "",
1088                 "",
1089                 "";
1090 };
1091 
1092 /* On-module I2C - PMIC_I2C */
1093 &main_i2c0 {
1094         pinctrl-names = "default";
1095         pinctrl-0 = <&pinctrl_i2c0>;
1096         clock-frequency = <400000>;
1097         status = "okay";
1098 
1099         dsi_bridge: dsi@e {
1100                 compatible = "toshiba,tc358778";
1101                 reg = <0xe>;
1102                 assigned-clocks = <&k3_clks 157 20>;
1103                 assigned-clock-parents = <&k3_clks 157 22>;
1104                 assigned-clock-rates = <25000000>;
1105                 pinctrl-names = "default";
1106                 pinctrl-0 = <&pinctrl_bridge_reset>;
1107                 clocks = <&k3_clks 157 20>;
1108                 clock-names = "refclk";
1109                 reset-gpios = <&main_gpio0 20 GPIO_ACTIVE_LOW>;
1110                 vddc-supply = <&reg_1v2_dsi>;
1111                 vddmipi-supply = <&reg_1v2_dsi>;
1112                 vddio-supply = <&reg_1v8_dsi>;
1113                 status = "disabled";
1114 
1115                 dsi_bridge_ports: ports {
1116                         #address-cells = <1>;
1117                         #size-cells = <0>;
1118 
1119                         port@0 {
1120                                 reg = <0>;
1121 
1122                                 rgb_in: endpoint {
1123                                         data-lines = <18>;
1124                                         remote-endpoint = <&dpi_out>;
1125                                 };
1126                         };
1127 
1128                         port@1 {
1129                                 reg = <1>;
1130                         };
1131                 };
1132         };
1133 
1134         pmic@30 {
1135                 compatible = "ti,tps65219";
1136                 reg = <0x30>;
1137                 pinctrl-names = "default";
1138                 pinctrl-0 = <&pinctrl_pmic_extint>;
1139                 interrupt-parent = <&gic500>;
1140                 interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>;
1141 
1142                 buck1-supply = <&reg_vsodimm>;
1143                 buck2-supply = <&reg_vsodimm>;
1144                 buck3-supply = <&reg_vsodimm>;
1145                 ldo1-supply = <&reg_3v3>;
1146                 ldo2-supply = <&reg_1v8>;
1147                 ldo3-supply = <&reg_3v3>;
1148                 ldo4-supply = <&reg_3v3>;
1149                 system-power-controller;
1150                 ti,power-button;
1151 
1152                 regulators {
1153                         reg_vdd_core: buck1 {
1154                                 regulator-always-on;
1155                                 regulator-boot-on;
1156                                 regulator-max-microvolt = <850000>;
1157                                 regulator-min-microvolt = <750000>;
1158                                 regulator-name = "+VDD_CORE (PMIC BUCK1)";
1159                         };
1160 
1161                         reg_1v8: buck2 {
1162                                 regulator-always-on;
1163                                 regulator-boot-on;
1164                                 regulator-max-microvolt = <1800000>;
1165                                 regulator-min-microvolt = <1800000>;
1166                                 regulator-name = "+V1.8 (PMIC BUCK2)"; /* On-module and SODIMM 214 */
1167                         };
1168 
1169                         reg_vdd_ddr: buck3 {
1170                                 regulator-always-on;
1171                                 regulator-boot-on;
1172                                 regulator-max-microvolt = <1100000>;
1173                                 regulator-min-microvolt = <1100000>;
1174                                 regulator-name = "+VDD_DDR (PMIC BUCK3)";
1175                         };
1176 
1177                         reg_sd_3v3_1v8: ldo1 {
1178                                 regulator-allow-bypass;
1179                                 regulator-always-on;
1180                                 regulator-boot-on;
1181                                 regulator-max-microvolt = <3300000>;
1182                                 regulator-min-microvolt = <3300000>;
1183                                 regulator-name = "+V3.3_1.8_SD (PMIC LDO1)";
1184                         };
1185 
1186                         reg_vddr_core: ldo2 {
1187                                 regulator-always-on;
1188                                 regulator-boot-on;
1189                                 regulator-max-microvolt = <850000>;
1190                                 regulator-min-microvolt = <850000>;
1191                                 regulator-name = "+VDDR_CORE (PMIC LDO2)";
1192                         };
1193 
1194                         reg_1v8a: ldo3 {
1195                                 regulator-always-on;
1196                                 regulator-boot-on;
1197                                 regulator-max-microvolt = <1800000>;
1198                                 regulator-min-microvolt = <1800000>;
1199                                 regulator-name = "+V1.8A (PMIC LDO3)";
1200                         };
1201 
1202                         reg_eth_2v5: ldo4 {
1203                                 regulator-always-on;
1204                                 regulator-boot-on;
1205                                 regulator-max-microvolt = <2500000>;
1206                                 regulator-min-microvolt = <2500000>;
1207                                 regulator-name = "+V2.5_ETH (PMIC LDO4)";
1208                         };
1209                 };
1210         };
1211 
1212         rtc_i2c: rtc@32 {
1213                 compatible = "epson,rx8130";
1214                 reg = <0x32>;
1215         };
1216 
1217         sensor@48 {
1218                 compatible = "ti,tmp1075";
1219                 reg = <0x48>;
1220         };
1221 
1222         adc@49 {
1223                 compatible = "ti,ads1015";
1224                 reg = <0x49>;
1225                 #address-cells = <1>;
1226                 #size-cells = <0>;
1227 
1228                 /* Verdin PMIC_I2C (ADC_4 - ADC_3) */
1229                 channel@0 {
1230                         reg = <0>;
1231                         ti,datarate = <4>;
1232                         ti,gain = <2>;
1233                 };
1234 
1235                 /* Verdin PMIC_I2C (ADC_4 - ADC_1) */
1236                 channel@1 {
1237                         reg = <1>;
1238                         ti,datarate = <4>;
1239                         ti,gain = <2>;
1240                 };
1241 
1242                 /* Verdin PMIC_I2C (ADC_3 - ADC_1) */
1243                 channel@2 {
1244                         reg = <2>;
1245                         ti,datarate = <4>;
1246                         ti,gain = <2>;
1247                 };
1248 
1249                 /* Verdin PMIC_I2C (ADC_2 - ADC_1) */
1250                 channel@3 {
1251                         reg = <3>;
1252                         ti,datarate = <4>;
1253                         ti,gain = <2>;
1254                 };
1255 
1256                 /* Verdin PMIC_I2C ADC_4 */
1257                 channel@4 {
1258                         reg = <4>;
1259                         ti,datarate = <4>;
1260                         ti,gain = <2>;
1261                 };
1262 
1263                 /* Verdin PMIC_I2C ADC_3 */
1264                 channel@5 {
1265                         reg = <5>;
1266                         ti,datarate = <4>;
1267                         ti,gain = <2>;
1268                 };
1269 
1270                 /* Verdin PMIC_I2C ADC_2 */
1271                 channel@6 {
1272                         reg = <6>;
1273                         ti,datarate = <4>;
1274                         ti,gain = <2>;
1275                 };
1276 
1277                 /* Verdin PMIC_I2C ADC_1 */
1278                 channel@7 {
1279                         reg = <7>;
1280                         ti,datarate = <4>;
1281                         ti,gain = <2>;
1282                 };
1283         };
1284 
1285         eeprom@50 {
1286                 compatible = "st,24c02", "atmel,24c02";
1287                 pagesize = <16>;
1288                 reg = <0x50>;
1289         };
1290 };
1291 
1292 /* Verdin I2C_1 */
1293 &main_i2c1 {
1294         pinctrl-names = "default";
1295         pinctrl-0 = <&pinctrl_i2c1>;
1296         status = "disabled";
1297 };
1298 
1299 /* Verdin I2C_2_DSI */
1300 &main_i2c2 {
1301         pinctrl-names = "default";
1302         pinctrl-0 = <&pinctrl_i2c2>;
1303         status = "disabled";
1304 };
1305 
1306 /* Verdin I2C_4_CSI */
1307 &main_i2c3 {
1308         pinctrl-names = "default";
1309         pinctrl-0 = <&pinctrl_i2c3>;
1310         status = "disabled";
1311 };
1312 
1313 &mailbox0_cluster0 {
1314         mbox_m4_0: mbox-m4-0 {
1315                 ti,mbox-rx = <0 0 0>;
1316                 ti,mbox-tx = <1 0 0>;
1317         };
1318 };
1319 
1320 /* Verdin CAN_1 */
1321 &main_mcan0 {
1322         pinctrl-names = "default";
1323         pinctrl-0 = <&pinctrl_mcan0>;
1324         status = "disabled";
1325 };
1326 
1327 /* Verdin SPI_1 */
1328 &main_spi1 {
1329         pinctrl-names = "default";
1330         pinctrl-0 = <&pinctrl_spi1>, <&pinctrl_spi1_cs0>;
1331         ti,pindir-d0-out-d1-in;
1332         status = "disabled";
1333 };
1334 
1335 /* Verdin UART_3, used as the Linux console */
1336 &main_uart0 {
1337         pinctrl-names = "default";
1338         pinctrl-0 = <&pinctrl_uart0>;
1339         status = "disabled";
1340 };
1341 
1342 /* Verdin UART_1 */
1343 &main_uart1 {
1344         pinctrl-names = "default";
1345         pinctrl-0 = <&pinctrl_uart1>;
1346         status = "disabled";
1347 };
1348 
1349 /* Verdin I2S_1 */
1350 &mcasp0 {
1351         pinctrl-names = "default";
1352         pinctrl-0 = <&pinctrl_mcasp0>;
1353         op-mode = <0>; /* I2S mode */
1354         serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
1355                1 2 0 0
1356                0 0 0 0
1357                0 0 0 0
1358                0 0 0 0
1359         >;
1360         tdm-slots = <2>;
1361         #sound-dai-cells = <0>;
1362         status = "disabled";
1363 };
1364 
1365 /* Verdin I2S_2 */
1366 &mcasp1 {
1367         pinctrl-names = "default";
1368         pinctrl-0 = <&pinctrl_mcasp1>;
1369         op-mode = <0>; /* I2S mode */
1370         serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
1371                1 2 0 0
1372                0 0 0 0
1373                0 0 0 0
1374                0 0 0 0
1375         >;
1376         tdm-slots = <2>;
1377         #sound-dai-cells = <0>;
1378         status = "disabled";
1379 };
1380 
1381 /* Verdin I2C_3_HDMI */
1382 &mcu_i2c0 {
1383         pinctrl-names = "default";
1384         pinctrl-0 = <&pinctrl_mcu_i2c0>;
1385         status = "disabled";
1386 };
1387 
1388 &mcu_gpio0 {
1389         gpio-line-names =
1390                 "SODIMM_244",
1391                 "SODIMM_206",
1392                 "SODIMM_208",
1393                 "SODIMM_210",
1394                 "SODIMM_212",
1395                 "",
1396                 "",
1397                 "",
1398                 "",
1399                 "",
1400                 "",
1401                 "",
1402                 "",
1403                 "",
1404                 "",
1405                 "",
1406                 "",
1407                 "",
1408                 "",
1409                 "",
1410                 "",
1411                 "",
1412                 "",
1413                 "";
1414 
1415         verdin_pcie_1_reset_hog: pcie-1-reset-hog {
1416                 gpio-hog;
1417                 /* Verdin PCIE_1_RESET# (SODIMM 244) */
1418                 gpios = <0 GPIO_ACTIVE_LOW>;
1419                 line-name = "PCIE_1_RESET#";
1420                 output-low;
1421                 status = "disabled";
1422         };
1423 };
1424 
1425 /* Verdin CAN_2 */
1426 &mcu_mcan0 {
1427         pinctrl-names = "default";
1428         pinctrl-0 = <&pinctrl_mcu_mcan0>;
1429         status = "disabled";
1430 };
1431 
1432 /* Verdin UART_4 - Cortex-M4 UART */
1433 &mcu_uart0 {
1434         pinctrl-names = "default";
1435         pinctrl-0 = <&pinctrl_mcu_uart0>;
1436         status = "disabled";
1437 };
1438 
1439 /* Verdin QSPI_1 */
1440 &ospi0 {
1441         pinctrl-names = "default";
1442         pinctrl-0 = <&pinctrl_ospi0>;
1443         status = "disabled";
1444 };
1445 
1446 /* On-module eMMC */
1447 &sdhci0 {
1448         pinctrl-names = "default";
1449         pinctrl-0 = <&pinctrl_sdhci0>;
1450         non-removable;
1451         status = "okay";
1452 };
1453 
1454 /* Verdin SD_1 */
1455 &sdhci1 {
1456         pinctrl-names = "default";
1457         pinctrl-0 = <&pinctrl_sdhci1>, <&pinctrl_sd1_cd_gpio>;
1458         cd-gpios = <&main_gpio1 48 GPIO_ACTIVE_LOW>;
1459         disable-wp;
1460         vmmc-supply = <&reg_sdhc1_vmmc>;
1461         vqmmc-supply = <&reg_sdhc1_vqmmc>;
1462         ti,fails-without-test-cd;
1463         status = "disabled";
1464 };
1465 
1466 /* Verdin USB_1 */
1467 &usbss0 {
1468         ti,vbus-divider;
1469         status = "disabled";
1470 };
1471 
1472 &usb0 {
1473         adp-disable;
1474         usb-role-switch;
1475         status = "disabled";
1476 
1477         port {
1478                 usb0_ep: endpoint {
1479                         remote-endpoint = <&usb_dr_connector>;
1480                 };
1481         };
1482 };
1483 
1484 /* Verdin USB_2 */
1485 &usbss1 {
1486         ti,vbus-divider;
1487         status = "disabled";
1488 };
1489 
1490 &usb1 {
1491         pinctrl-names = "default";
1492         pinctrl-0 = <&pinctrl_usb1>;
1493         dr_mode = "host";
1494         status = "disabled";
1495 };
1496 
1497 /* Verdin UART_2 */
1498 &wkup_uart0 {
1499         pinctrl-names = "default";
1500         pinctrl-0 = <&pinctrl_wkup_uart0>;
1501         status = "disabled";
1502 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php