1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0+ OR MIT 2*4882a593Smuzhiyun/* 3*4882a593Smuzhiyun * Copyright 2014-2020 Toradex 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun/ { 8*4882a593Smuzhiyun aliases { 9*4882a593Smuzhiyun ethernet0 = &fec1; 10*4882a593Smuzhiyun ethernet1 = &fec0; 11*4882a593Smuzhiyun }; 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun bl: backlight { 14*4882a593Smuzhiyun compatible = "pwm-backlight"; 15*4882a593Smuzhiyun pinctrl-names = "default"; 16*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_gpio_bl_on>; 17*4882a593Smuzhiyun pwms = <&pwm0 0 5000000 0>; 18*4882a593Smuzhiyun enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>; 19*4882a593Smuzhiyun status = "disabled"; 20*4882a593Smuzhiyun }; 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun reg_module_3v3: regulator-module-3v3 { 23*4882a593Smuzhiyun compatible = "regulator-fixed"; 24*4882a593Smuzhiyun regulator-name = "+V3.3"; 25*4882a593Smuzhiyun regulator-min-microvolt = <3300000>; 26*4882a593Smuzhiyun regulator-max-microvolt = <3300000>; 27*4882a593Smuzhiyun }; 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun reg_module_3v3_avdd: regulator-module-3v3-avdd { 30*4882a593Smuzhiyun compatible = "regulator-fixed"; 31*4882a593Smuzhiyun regulator-name = "+V3.3_AVDD_AUDIO"; 32*4882a593Smuzhiyun regulator-min-microvolt = <3300000>; 33*4882a593Smuzhiyun regulator-max-microvolt = <3300000>; 34*4882a593Smuzhiyun }; 35*4882a593Smuzhiyun}; 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun&adc0 { 38*4882a593Smuzhiyun status = "okay"; 39*4882a593Smuzhiyun vref-supply = <®_module_3v3_avdd>; 40*4882a593Smuzhiyun}; 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun&adc1 { 43*4882a593Smuzhiyun status = "okay"; 44*4882a593Smuzhiyun vref-supply = <®_module_3v3_avdd>; 45*4882a593Smuzhiyun}; 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun&can0 { 48*4882a593Smuzhiyun pinctrl-names = "default"; 49*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_flexcan0>; 50*4882a593Smuzhiyun status = "disabled"; 51*4882a593Smuzhiyun}; 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun&can1 { 54*4882a593Smuzhiyun pinctrl-names = "default"; 55*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_flexcan1>; 56*4882a593Smuzhiyun status = "disabled"; 57*4882a593Smuzhiyun}; 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun&clks { 60*4882a593Smuzhiyun assigned-clocks = <&clks VF610_CLK_ENET_SEL>, 61*4882a593Smuzhiyun <&clks VF610_CLK_ENET_TS_SEL>; 62*4882a593Smuzhiyun assigned-clock-parents = <&clks VF610_CLK_ENET_50M>, 63*4882a593Smuzhiyun <&clks VF610_CLK_ENET_50M>; 64*4882a593Smuzhiyun}; 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun&dspi1 { 67*4882a593Smuzhiyun bus-num = <1>; 68*4882a593Smuzhiyun pinctrl-names = "default"; 69*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_dspi1>; 70*4882a593Smuzhiyun}; 71*4882a593Smuzhiyun 72*4882a593Smuzhiyun&edma0 { 73*4882a593Smuzhiyun status = "okay"; 74*4882a593Smuzhiyun}; 75*4882a593Smuzhiyun 76*4882a593Smuzhiyun&edma1 { 77*4882a593Smuzhiyun status = "okay"; 78*4882a593Smuzhiyun}; 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun&esdhc1 { 81*4882a593Smuzhiyun pinctrl-names = "default"; 82*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_esdhc1>; 83*4882a593Smuzhiyun bus-width = <4>; 84*4882a593Smuzhiyun cd-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; 85*4882a593Smuzhiyun disable-wp; 86*4882a593Smuzhiyun}; 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun&fec1 { 89*4882a593Smuzhiyun phy-mode = "rmii"; 90*4882a593Smuzhiyun phy-supply = <®_module_3v3>; 91*4882a593Smuzhiyun pinctrl-names = "default"; 92*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_fec1>; 93*4882a593Smuzhiyun}; 94*4882a593Smuzhiyun 95*4882a593Smuzhiyun&i2c0 { 96*4882a593Smuzhiyun clock-frequency = <400000>; 97*4882a593Smuzhiyun pinctrl-names = "default", "gpio"; 98*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_i2c0>; 99*4882a593Smuzhiyun pinctrl-1 = <&pinctrl_i2c0_gpio>; 100*4882a593Smuzhiyun scl-gpios = <&gpio1 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 101*4882a593Smuzhiyun sda-gpios = <&gpio1 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 102*4882a593Smuzhiyun}; 103*4882a593Smuzhiyun 104*4882a593Smuzhiyun&nfc { 105*4882a593Smuzhiyun pinctrl-names = "default"; 106*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_nfc>; 107*4882a593Smuzhiyun status = "okay"; 108*4882a593Smuzhiyun 109*4882a593Smuzhiyun nand@0 { 110*4882a593Smuzhiyun compatible = "fsl,vf610-nfc-nandcs"; 111*4882a593Smuzhiyun reg = <0>; 112*4882a593Smuzhiyun #address-cells = <1>; 113*4882a593Smuzhiyun #size-cells = <1>; 114*4882a593Smuzhiyun nand-bus-width = <8>; 115*4882a593Smuzhiyun nand-ecc-mode = "hw"; 116*4882a593Smuzhiyun nand-ecc-strength = <32>; 117*4882a593Smuzhiyun nand-ecc-step-size = <2048>; 118*4882a593Smuzhiyun nand-on-flash-bbt; 119*4882a593Smuzhiyun }; 120*4882a593Smuzhiyun}; 121*4882a593Smuzhiyun 122*4882a593Smuzhiyun&pwm0 { 123*4882a593Smuzhiyun pinctrl-names = "default"; 124*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_pwm0>; 125*4882a593Smuzhiyun}; 126*4882a593Smuzhiyun 127*4882a593Smuzhiyun&pwm1 { 128*4882a593Smuzhiyun pinctrl-names = "default"; 129*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_pwm1>; 130*4882a593Smuzhiyun}; 131*4882a593Smuzhiyun 132*4882a593Smuzhiyun&uart0 { 133*4882a593Smuzhiyun pinctrl-names = "default"; 134*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_uart0>; 135*4882a593Smuzhiyun}; 136*4882a593Smuzhiyun 137*4882a593Smuzhiyun&uart1 { 138*4882a593Smuzhiyun pinctrl-names = "default"; 139*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_uart1>; 140*4882a593Smuzhiyun}; 141*4882a593Smuzhiyun 142*4882a593Smuzhiyun&uart2 { 143*4882a593Smuzhiyun pinctrl-names = "default"; 144*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_uart2>; 145*4882a593Smuzhiyun}; 146*4882a593Smuzhiyun 147*4882a593Smuzhiyun&usbdev0 { 148*4882a593Smuzhiyun disable-over-current; 149*4882a593Smuzhiyun status = "okay"; 150*4882a593Smuzhiyun}; 151*4882a593Smuzhiyun 152*4882a593Smuzhiyun&usbh1 { 153*4882a593Smuzhiyun disable-over-current; 154*4882a593Smuzhiyun status = "okay"; 155*4882a593Smuzhiyun}; 156*4882a593Smuzhiyun 157*4882a593Smuzhiyun&usbmisc0 { 158*4882a593Smuzhiyun status = "okay"; 159*4882a593Smuzhiyun}; 160*4882a593Smuzhiyun 161*4882a593Smuzhiyun&usbmisc1 { 162*4882a593Smuzhiyun status = "okay"; 163*4882a593Smuzhiyun}; 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun&usbphy0 { 166*4882a593Smuzhiyun status = "okay"; 167*4882a593Smuzhiyun}; 168*4882a593Smuzhiyun 169*4882a593Smuzhiyun&usbphy1 { 170*4882a593Smuzhiyun status = "okay"; 171*4882a593Smuzhiyun}; 172*4882a593Smuzhiyun 173*4882a593Smuzhiyun&iomuxc { 174*4882a593Smuzhiyun vf610-colibri { 175*4882a593Smuzhiyun pinctrl_flexcan0: can0grp { 176*4882a593Smuzhiyun fsl,pins = < 177*4882a593Smuzhiyun VF610_PAD_PTB14__CAN0_RX 0x31F1 178*4882a593Smuzhiyun VF610_PAD_PTB15__CAN0_TX 0x31F2 179*4882a593Smuzhiyun >; 180*4882a593Smuzhiyun }; 181*4882a593Smuzhiyun 182*4882a593Smuzhiyun pinctrl_flexcan1: can1grp { 183*4882a593Smuzhiyun fsl,pins = < 184*4882a593Smuzhiyun VF610_PAD_PTB16__CAN1_RX 0x31F1 185*4882a593Smuzhiyun VF610_PAD_PTB17__CAN1_TX 0x31F2 186*4882a593Smuzhiyun >; 187*4882a593Smuzhiyun }; 188*4882a593Smuzhiyun 189*4882a593Smuzhiyun pinctrl_gpio_ext: gpio_ext { 190*4882a593Smuzhiyun fsl,pins = < 191*4882a593Smuzhiyun VF610_PAD_PTD10__GPIO_89 0x22ed /* EXT_IO_0 */ 192*4882a593Smuzhiyun VF610_PAD_PTD9__GPIO_88 0x22ed /* EXT_IO_1 */ 193*4882a593Smuzhiyun VF610_PAD_PTD26__GPIO_68 0x22ed /* EXT_IO_2 */ 194*4882a593Smuzhiyun >; 195*4882a593Smuzhiyun }; 196*4882a593Smuzhiyun 197*4882a593Smuzhiyun pinctrl_dcu0_1: dcu0grp_1 { 198*4882a593Smuzhiyun fsl,pins = < 199*4882a593Smuzhiyun VF610_PAD_PTE0__DCU0_HSYNC 0x1902 200*4882a593Smuzhiyun VF610_PAD_PTE1__DCU0_VSYNC 0x1902 201*4882a593Smuzhiyun VF610_PAD_PTE2__DCU0_PCLK 0x1902 202*4882a593Smuzhiyun VF610_PAD_PTE4__DCU0_DE 0x1902 203*4882a593Smuzhiyun VF610_PAD_PTE5__DCU0_R0 0x1902 204*4882a593Smuzhiyun VF610_PAD_PTE6__DCU0_R1 0x1902 205*4882a593Smuzhiyun VF610_PAD_PTE7__DCU0_R2 0x1902 206*4882a593Smuzhiyun VF610_PAD_PTE8__DCU0_R3 0x1902 207*4882a593Smuzhiyun VF610_PAD_PTE9__DCU0_R4 0x1902 208*4882a593Smuzhiyun VF610_PAD_PTE10__DCU0_R5 0x1902 209*4882a593Smuzhiyun VF610_PAD_PTE11__DCU0_R6 0x1902 210*4882a593Smuzhiyun VF610_PAD_PTE12__DCU0_R7 0x1902 211*4882a593Smuzhiyun VF610_PAD_PTE13__DCU0_G0 0x1902 212*4882a593Smuzhiyun VF610_PAD_PTE14__DCU0_G1 0x1902 213*4882a593Smuzhiyun VF610_PAD_PTE15__DCU0_G2 0x1902 214*4882a593Smuzhiyun VF610_PAD_PTE16__DCU0_G3 0x1902 215*4882a593Smuzhiyun VF610_PAD_PTE17__DCU0_G4 0x1902 216*4882a593Smuzhiyun VF610_PAD_PTE18__DCU0_G5 0x1902 217*4882a593Smuzhiyun VF610_PAD_PTE19__DCU0_G6 0x1902 218*4882a593Smuzhiyun VF610_PAD_PTE20__DCU0_G7 0x1902 219*4882a593Smuzhiyun VF610_PAD_PTE21__DCU0_B0 0x1902 220*4882a593Smuzhiyun VF610_PAD_PTE22__DCU0_B1 0x1902 221*4882a593Smuzhiyun VF610_PAD_PTE23__DCU0_B2 0x1902 222*4882a593Smuzhiyun VF610_PAD_PTE24__DCU0_B3 0x1902 223*4882a593Smuzhiyun VF610_PAD_PTE25__DCU0_B4 0x1902 224*4882a593Smuzhiyun VF610_PAD_PTE26__DCU0_B5 0x1902 225*4882a593Smuzhiyun VF610_PAD_PTE27__DCU0_B6 0x1902 226*4882a593Smuzhiyun VF610_PAD_PTE28__DCU0_B7 0x1902 227*4882a593Smuzhiyun >; 228*4882a593Smuzhiyun }; 229*4882a593Smuzhiyun 230*4882a593Smuzhiyun pinctrl_dspi1: dspi1grp { 231*4882a593Smuzhiyun fsl,pins = < 232*4882a593Smuzhiyun VF610_PAD_PTD5__DSPI1_CS0 0x33e2 233*4882a593Smuzhiyun VF610_PAD_PTD6__DSPI1_SIN 0x33e1 234*4882a593Smuzhiyun VF610_PAD_PTD7__DSPI1_SOUT 0x33e2 235*4882a593Smuzhiyun VF610_PAD_PTD8__DSPI1_SCK 0x33e2 236*4882a593Smuzhiyun >; 237*4882a593Smuzhiyun }; 238*4882a593Smuzhiyun 239*4882a593Smuzhiyun pinctrl_esdhc1: esdhc1grp { 240*4882a593Smuzhiyun fsl,pins = < 241*4882a593Smuzhiyun VF610_PAD_PTA24__ESDHC1_CLK 0x31ef 242*4882a593Smuzhiyun VF610_PAD_PTA25__ESDHC1_CMD 0x31ef 243*4882a593Smuzhiyun VF610_PAD_PTA26__ESDHC1_DAT0 0x31ef 244*4882a593Smuzhiyun VF610_PAD_PTA27__ESDHC1_DAT1 0x31ef 245*4882a593Smuzhiyun VF610_PAD_PTA28__ESDHC1_DATA2 0x31ef 246*4882a593Smuzhiyun VF610_PAD_PTA29__ESDHC1_DAT3 0x31ef 247*4882a593Smuzhiyun VF610_PAD_PTB20__GPIO_42 0x219d 248*4882a593Smuzhiyun >; 249*4882a593Smuzhiyun }; 250*4882a593Smuzhiyun 251*4882a593Smuzhiyun pinctrl_fec1: fec1grp { 252*4882a593Smuzhiyun fsl,pins = < 253*4882a593Smuzhiyun VF610_PAD_PTA6__RMII_CLKOUT 0x30d2 254*4882a593Smuzhiyun VF610_PAD_PTC9__ENET_RMII1_MDC 0x30d2 255*4882a593Smuzhiyun VF610_PAD_PTC10__ENET_RMII1_MDIO 0x30d3 256*4882a593Smuzhiyun VF610_PAD_PTC11__ENET_RMII1_CRS 0x30d1 257*4882a593Smuzhiyun VF610_PAD_PTC12__ENET_RMII1_RXD1 0x30d1 258*4882a593Smuzhiyun VF610_PAD_PTC13__ENET_RMII1_RXD0 0x30d1 259*4882a593Smuzhiyun VF610_PAD_PTC14__ENET_RMII1_RXER 0x30d1 260*4882a593Smuzhiyun VF610_PAD_PTC15__ENET_RMII1_TXD1 0x30d2 261*4882a593Smuzhiyun VF610_PAD_PTC16__ENET_RMII1_TXD0 0x30d2 262*4882a593Smuzhiyun VF610_PAD_PTC17__ENET_RMII1_TXEN 0x30d2 263*4882a593Smuzhiyun >; 264*4882a593Smuzhiyun }; 265*4882a593Smuzhiyun 266*4882a593Smuzhiyun pinctrl_gpio_bl_on: gpio_bl_on { 267*4882a593Smuzhiyun fsl,pins = < 268*4882a593Smuzhiyun VF610_PAD_PTC0__GPIO_45 0x22ef 269*4882a593Smuzhiyun >; 270*4882a593Smuzhiyun }; 271*4882a593Smuzhiyun 272*4882a593Smuzhiyun pinctrl_i2c0: i2c0grp { 273*4882a593Smuzhiyun fsl,pins = < 274*4882a593Smuzhiyun VF610_PAD_PTB14__I2C0_SCL 0x37ff 275*4882a593Smuzhiyun VF610_PAD_PTB15__I2C0_SDA 0x37ff 276*4882a593Smuzhiyun >; 277*4882a593Smuzhiyun }; 278*4882a593Smuzhiyun 279*4882a593Smuzhiyun pinctrl_i2c0_gpio: i2c0gpiogrp { 280*4882a593Smuzhiyun fsl,pins = < 281*4882a593Smuzhiyun VF610_PAD_PTB14__GPIO_36 0x37ff 282*4882a593Smuzhiyun VF610_PAD_PTB15__GPIO_37 0x37ff 283*4882a593Smuzhiyun >; 284*4882a593Smuzhiyun }; 285*4882a593Smuzhiyun 286*4882a593Smuzhiyun pinctrl_nfc: nfcgrp { 287*4882a593Smuzhiyun fsl,pins = < 288*4882a593Smuzhiyun VF610_PAD_PTD23__NF_IO7 0x28df 289*4882a593Smuzhiyun VF610_PAD_PTD22__NF_IO6 0x28df 290*4882a593Smuzhiyun VF610_PAD_PTD21__NF_IO5 0x28df 291*4882a593Smuzhiyun VF610_PAD_PTD20__NF_IO4 0x28df 292*4882a593Smuzhiyun VF610_PAD_PTD19__NF_IO3 0x28df 293*4882a593Smuzhiyun VF610_PAD_PTD18__NF_IO2 0x28df 294*4882a593Smuzhiyun VF610_PAD_PTD17__NF_IO1 0x28df 295*4882a593Smuzhiyun VF610_PAD_PTD16__NF_IO0 0x28df 296*4882a593Smuzhiyun VF610_PAD_PTB24__NF_WE_B 0x28c2 297*4882a593Smuzhiyun VF610_PAD_PTB25__NF_CE0_B 0x28c2 298*4882a593Smuzhiyun VF610_PAD_PTB27__NF_RE_B 0x28c2 299*4882a593Smuzhiyun VF610_PAD_PTC26__NF_RB_B 0x283d 300*4882a593Smuzhiyun VF610_PAD_PTC27__NF_ALE 0x28c2 301*4882a593Smuzhiyun VF610_PAD_PTC28__NF_CLE 0x28c2 302*4882a593Smuzhiyun >; 303*4882a593Smuzhiyun }; 304*4882a593Smuzhiyun 305*4882a593Smuzhiyun pinctrl_pwm0: pwm0grp { 306*4882a593Smuzhiyun fsl,pins = < 307*4882a593Smuzhiyun VF610_PAD_PTB0__FTM0_CH0 0x1182 308*4882a593Smuzhiyun VF610_PAD_PTB1__FTM0_CH1 0x1182 309*4882a593Smuzhiyun >; 310*4882a593Smuzhiyun }; 311*4882a593Smuzhiyun 312*4882a593Smuzhiyun pinctrl_pwm1: pwm1grp { 313*4882a593Smuzhiyun fsl,pins = < 314*4882a593Smuzhiyun VF610_PAD_PTB8__FTM1_CH0 0x1182 315*4882a593Smuzhiyun VF610_PAD_PTB9__FTM1_CH1 0x1182 316*4882a593Smuzhiyun >; 317*4882a593Smuzhiyun }; 318*4882a593Smuzhiyun 319*4882a593Smuzhiyun pinctrl_uart0: uart0grp { 320*4882a593Smuzhiyun fsl,pins = < 321*4882a593Smuzhiyun VF610_PAD_PTB10__UART0_TX 0x21a2 322*4882a593Smuzhiyun VF610_PAD_PTB11__UART0_RX 0x21a1 323*4882a593Smuzhiyun VF610_PAD_PTB12__UART0_RTS 0x21a2 324*4882a593Smuzhiyun VF610_PAD_PTB13__UART0_CTS 0x21a1 325*4882a593Smuzhiyun >; 326*4882a593Smuzhiyun }; 327*4882a593Smuzhiyun 328*4882a593Smuzhiyun pinctrl_uart1: uart1grp { 329*4882a593Smuzhiyun fsl,pins = < 330*4882a593Smuzhiyun VF610_PAD_PTB4__UART1_TX 0x21a2 331*4882a593Smuzhiyun VF610_PAD_PTB5__UART1_RX 0x21a1 332*4882a593Smuzhiyun >; 333*4882a593Smuzhiyun }; 334*4882a593Smuzhiyun 335*4882a593Smuzhiyun pinctrl_uart2: uart2grp { 336*4882a593Smuzhiyun fsl,pins = < 337*4882a593Smuzhiyun VF610_PAD_PTD0__UART2_TX 0x21a2 338*4882a593Smuzhiyun VF610_PAD_PTD1__UART2_RX 0x21a1 339*4882a593Smuzhiyun VF610_PAD_PTD2__UART2_RTS 0x21a2 340*4882a593Smuzhiyun VF610_PAD_PTD3__UART2_CTS 0x21a1 341*4882a593Smuzhiyun >; 342*4882a593Smuzhiyun }; 343*4882a593Smuzhiyun 344*4882a593Smuzhiyun pinctrl_usbh1_reg: gpio_usb_vbus { 345*4882a593Smuzhiyun fsl,pins = < 346*4882a593Smuzhiyun VF610_PAD_PTD4__GPIO_83 0x22ed 347*4882a593Smuzhiyun >; 348*4882a593Smuzhiyun }; 349*4882a593Smuzhiyun }; 350*4882a593Smuzhiyun}; 351