1*724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*724ba675SRob Herring/* 3*724ba675SRob Herring * at91-sama5d2_icp.dts - Device Tree file for SAMA5D2-ICP board 4*724ba675SRob Herring * 5*724ba675SRob Herring * Copyright (C) 2019 Microchip Technology Inc. and its subsidiaries 6*724ba675SRob Herring * 7*724ba675SRob Herring * Author: Radu Pirea & Razvan Stefanescu, 8*724ba675SRob Herring * Codrin Ciubotariu <codrin.ciubotariu@microchip.com>, 9*724ba675SRob Herring * Cristian Birsan <cristian.birsan@microchip.com> 10*724ba675SRob Herring */ 11*724ba675SRob Herring/dts-v1/; 12*724ba675SRob Herring#include "sama5d2.dtsi" 13*724ba675SRob Herring#include "sama5d2-pinfunc.h" 14*724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 15*724ba675SRob Herring#include <dt-bindings/input/input.h> 16*724ba675SRob Herring#include <dt-bindings/mfd/atmel-flexcom.h> 17*724ba675SRob Herring 18*724ba675SRob Herring/ { 19*724ba675SRob Herring model = "Microchip SAMA5D2-ICP"; 20*724ba675SRob Herring compatible = "microchip,sama5d2-icp", "atmel,sama5d27", "atmel,sama5d2", "atmel,sama5"; 21*724ba675SRob Herring 22*724ba675SRob Herring aliases { 23*724ba675SRob Herring serial0 = &uart0; /* debug uart0 + mikro BUS 1 */ 24*724ba675SRob Herring serial1 = &uart1; /* mikro BUS 3 */ 25*724ba675SRob Herring serial3 = &uart3; /* mikro BUS 2 */ 26*724ba675SRob Herring serial5 = &uart7; /* flx2 */ 27*724ba675SRob Herring i2c0 = &i2c0; 28*724ba675SRob Herring i2c1 = &i2c1; 29*724ba675SRob Herring }; 30*724ba675SRob Herring 31*724ba675SRob Herring chosen { 32*724ba675SRob Herring stdout-path = "serial0:115200n8"; 33*724ba675SRob Herring }; 34*724ba675SRob Herring 35*724ba675SRob Herring clocks { 36*724ba675SRob Herring slow_xtal { 37*724ba675SRob Herring clock-frequency = <32768>; 38*724ba675SRob Herring }; 39*724ba675SRob Herring 40*724ba675SRob Herring main_xtal { 41*724ba675SRob Herring clock-frequency = <12000000>; 42*724ba675SRob Herring }; 43*724ba675SRob Herring }; 44*724ba675SRob Herring 45*724ba675SRob Herring gpio-keys { 46*724ba675SRob Herring compatible = "gpio-keys"; 47*724ba675SRob Herring 48*724ba675SRob Herring pinctrl-names = "default"; 49*724ba675SRob Herring pinctrl-0 = <&pinctrl_key_gpio_default>; 50*724ba675SRob Herring 51*724ba675SRob Herring button-1 { 52*724ba675SRob Herring label = "USER_PB1"; 53*724ba675SRob Herring gpios = <&pioA PIN_PD0 GPIO_ACTIVE_LOW>; 54*724ba675SRob Herring linux,code = <KEY_PROG1>; 55*724ba675SRob Herring wakeup-source; 56*724ba675SRob Herring }; 57*724ba675SRob Herring }; 58*724ba675SRob Herring 59*724ba675SRob Herring leds { 60*724ba675SRob Herring compatible = "gpio-leds"; 61*724ba675SRob Herring pinctrl-names = "default"; 62*724ba675SRob Herring pinctrl-0 = <&pinctrl_led_gpio_default>; 63*724ba675SRob Herring status = "okay"; /* conflict with pwm0 */ 64*724ba675SRob Herring 65*724ba675SRob Herring led-red { 66*724ba675SRob Herring label = "red"; 67*724ba675SRob Herring gpios = <&pioA PIN_PB0 GPIO_ACTIVE_HIGH>; 68*724ba675SRob Herring }; 69*724ba675SRob Herring 70*724ba675SRob Herring led-green { 71*724ba675SRob Herring label = "green"; 72*724ba675SRob Herring gpios = <&pioA PIN_PB1 GPIO_ACTIVE_HIGH>; 73*724ba675SRob Herring }; 74*724ba675SRob Herring 75*724ba675SRob Herring led-blue { 76*724ba675SRob Herring label = "blue"; 77*724ba675SRob Herring gpios = <&pioA PIN_PA31 GPIO_ACTIVE_HIGH>; 78*724ba675SRob Herring linux,default-trigger = "heartbeat"; 79*724ba675SRob Herring }; 80*724ba675SRob Herring }; 81*724ba675SRob Herring}; 82*724ba675SRob Herring 83*724ba675SRob Herring&adc { 84*724ba675SRob Herring vddana-supply = <&vdd_io_reg>; 85*724ba675SRob Herring vref-supply = <&vdd_io_reg>; 86*724ba675SRob Herring pinctrl-names = "default"; 87*724ba675SRob Herring pinctrl-0 = <&pinctrl_adc_default &pinctrl_adtrg_default>; 88*724ba675SRob Herring status = "okay"; 89*724ba675SRob Herring}; 90*724ba675SRob Herring 91*724ba675SRob Herring&can0 { 92*724ba675SRob Herring pinctrl-names = "default"; 93*724ba675SRob Herring pinctrl-0 = <&pinctrl_can0_default>; 94*724ba675SRob Herring status = "okay"; 95*724ba675SRob Herring}; 96*724ba675SRob Herring 97*724ba675SRob Herring&can1 { 98*724ba675SRob Herring pinctrl-names = "default"; 99*724ba675SRob Herring pinctrl-0 = <&pinctrl_can1_default>; 100*724ba675SRob Herring status = "okay"; 101*724ba675SRob Herring}; 102*724ba675SRob Herring 103*724ba675SRob Herring&flx0 { /* mikrobus2 spi */ 104*724ba675SRob Herring atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>; 105*724ba675SRob Herring status = "okay"; 106*724ba675SRob Herring 107*724ba675SRob Herring spi2: spi@400 { 108*724ba675SRob Herring dmas = <0>, <0>; 109*724ba675SRob Herring cs-gpios = <&pioA PIN_PC0 GPIO_ACTIVE_LOW>; 110*724ba675SRob Herring pinctrl-names = "default"; 111*724ba675SRob Herring pinctrl-0 = <&pinctrl_mikrobus2_spi &pinctrl_ksz_spi_cs>; 112*724ba675SRob Herring status = "okay"; 113*724ba675SRob Herring #address-cells = <1>; 114*724ba675SRob Herring #size-cells = <0>; 115*724ba675SRob Herring 116*724ba675SRob Herring switch0: ksz8563@0 { 117*724ba675SRob Herring compatible = "microchip,ksz8563"; 118*724ba675SRob Herring reg = <0>; 119*724ba675SRob Herring reset-gpios = <&pioA PIN_PD4 GPIO_ACTIVE_LOW>; 120*724ba675SRob Herring 121*724ba675SRob Herring spi-max-frequency = <500000>; 122*724ba675SRob Herring spi-cpha; 123*724ba675SRob Herring spi-cpol; 124*724ba675SRob Herring 125*724ba675SRob Herring ports { 126*724ba675SRob Herring #address-cells = <1>; 127*724ba675SRob Herring #size-cells = <0>; 128*724ba675SRob Herring port@0 { 129*724ba675SRob Herring reg = <0>; 130*724ba675SRob Herring label = "lan1"; 131*724ba675SRob Herring }; 132*724ba675SRob Herring 133*724ba675SRob Herring port@1 { 134*724ba675SRob Herring reg = <1>; 135*724ba675SRob Herring label = "lan2"; 136*724ba675SRob Herring }; 137*724ba675SRob Herring 138*724ba675SRob Herring port@2 { 139*724ba675SRob Herring reg = <2>; 140*724ba675SRob Herring label = "cpu"; 141*724ba675SRob Herring ethernet = <&macb0>; 142*724ba675SRob Herring phy-mode = "mii"; 143*724ba675SRob Herring fixed-link { 144*724ba675SRob Herring speed = <100>; 145*724ba675SRob Herring full-duplex; 146*724ba675SRob Herring }; 147*724ba675SRob Herring }; 148*724ba675SRob Herring }; 149*724ba675SRob Herring }; 150*724ba675SRob Herring }; 151*724ba675SRob Herring}; 152*724ba675SRob Herring 153*724ba675SRob Herring&flx2 { 154*724ba675SRob Herring atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>; 155*724ba675SRob Herring status = "okay"; 156*724ba675SRob Herring 157*724ba675SRob Herring uart7: serial@200 { 158*724ba675SRob Herring pinctrl-0 = <&pinctrl_flx2_default>; 159*724ba675SRob Herring pinctrl-names = "default"; 160*724ba675SRob Herring atmel,use-dma-rx; 161*724ba675SRob Herring atmel,use-dma-tx; 162*724ba675SRob Herring status = "okay"; /* Conflict w/ qspi1. */ 163*724ba675SRob Herring }; 164*724ba675SRob Herring}; 165*724ba675SRob Herring 166*724ba675SRob Herring&flx3 { /* mikrobus1 spi */ 167*724ba675SRob Herring atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>; 168*724ba675SRob Herring status = "okay"; 169*724ba675SRob Herring 170*724ba675SRob Herring spi5: spi@400 { 171*724ba675SRob Herring dmas = <0>, <0>; 172*724ba675SRob Herring pinctrl-names = "default"; 173*724ba675SRob Herring pinctrl-0 = <&pinctrl_mikrobus1_spi &pinctrl_mikrobus1_spi_cs>; 174*724ba675SRob Herring status = "okay"; 175*724ba675SRob Herring }; 176*724ba675SRob Herring}; 177*724ba675SRob Herring 178*724ba675SRob Herring&flx4 { 179*724ba675SRob Herring atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>; 180*724ba675SRob Herring status = "okay"; 181*724ba675SRob Herring 182*724ba675SRob Herring i2c6: i2c@600 { 183*724ba675SRob Herring dmas = <0>, <0>; 184*724ba675SRob Herring pinctrl-names = "default"; 185*724ba675SRob Herring pinctrl-0 = <&pinctrl_flx4_default>; 186*724ba675SRob Herring i2c-digital-filter; 187*724ba675SRob Herring i2c-digital-filter-width-ns = <35>; 188*724ba675SRob Herring status = "okay"; 189*724ba675SRob Herring 190*724ba675SRob Herring mcp16502@5b { 191*724ba675SRob Herring compatible = "microchip,mcp16502"; 192*724ba675SRob Herring reg = <0x5b>; 193*724ba675SRob Herring status = "okay"; 194*724ba675SRob Herring lpm-gpios = <&pioBU 7 GPIO_ACTIVE_LOW>; 195*724ba675SRob Herring 196*724ba675SRob Herring regulators { 197*724ba675SRob Herring vdd_io_reg: VDD_IO { 198*724ba675SRob Herring regulator-name = "VDD_IO"; 199*724ba675SRob Herring regulator-min-microvolt = <3300000>; 200*724ba675SRob Herring regulator-max-microvolt = <3300000>; 201*724ba675SRob Herring regulator-initial-mode = <2>; 202*724ba675SRob Herring regulator-allowed-modes = <2>, <4>; 203*724ba675SRob Herring regulator-always-on; 204*724ba675SRob Herring 205*724ba675SRob Herring regulator-state-standby { 206*724ba675SRob Herring regulator-on-in-suspend; 207*724ba675SRob Herring regulator-mode = <4>; 208*724ba675SRob Herring }; 209*724ba675SRob Herring 210*724ba675SRob Herring regulator-state-mem { 211*724ba675SRob Herring regulator-off-in-suspend; 212*724ba675SRob Herring regulator-mode = <4>; 213*724ba675SRob Herring }; 214*724ba675SRob Herring }; 215*724ba675SRob Herring 216*724ba675SRob Herring VDD_DDR { 217*724ba675SRob Herring regulator-name = "VDD_DDR"; 218*724ba675SRob Herring regulator-min-microvolt = <1350000>; 219*724ba675SRob Herring regulator-max-microvolt = <1350000>; 220*724ba675SRob Herring regulator-initial-mode = <2>; 221*724ba675SRob Herring regulator-allowed-modes = <2>, <4>; 222*724ba675SRob Herring regulator-always-on; 223*724ba675SRob Herring 224*724ba675SRob Herring regulator-state-standby { 225*724ba675SRob Herring regulator-on-in-suspend; 226*724ba675SRob Herring regulator-mode = <4>; 227*724ba675SRob Herring }; 228*724ba675SRob Herring 229*724ba675SRob Herring regulator-state-mem { 230*724ba675SRob Herring regulator-on-in-suspend; 231*724ba675SRob Herring regulator-mode = <4>; 232*724ba675SRob Herring }; 233*724ba675SRob Herring }; 234*724ba675SRob Herring 235*724ba675SRob Herring VDD_CORE { 236*724ba675SRob Herring regulator-name = "VDD_CORE"; 237*724ba675SRob Herring regulator-min-microvolt = <1250000>; 238*724ba675SRob Herring regulator-max-microvolt = <1250000>; 239*724ba675SRob Herring regulator-initial-mode = <2>; 240*724ba675SRob Herring regulator-allowed-modes = <2>, <4>; 241*724ba675SRob Herring regulator-always-on; 242*724ba675SRob Herring 243*724ba675SRob Herring regulator-state-standby { 244*724ba675SRob Herring regulator-on-in-suspend; 245*724ba675SRob Herring regulator-mode = <4>; 246*724ba675SRob Herring }; 247*724ba675SRob Herring 248*724ba675SRob Herring regulator-state-mem { 249*724ba675SRob Herring regulator-off-in-suspend; 250*724ba675SRob Herring regulator-mode = <4>; 251*724ba675SRob Herring }; 252*724ba675SRob Herring }; 253*724ba675SRob Herring 254*724ba675SRob Herring VDD_OTHER { 255*724ba675SRob Herring regulator-name = "VDD_OTHER"; 256*724ba675SRob Herring regulator-min-microvolt = <600000>; 257*724ba675SRob Herring regulator-max-microvolt = <1850000>; 258*724ba675SRob Herring regulator-initial-mode = <2>; 259*724ba675SRob Herring regulator-allowed-modes = <2>, <4>; 260*724ba675SRob Herring 261*724ba675SRob Herring regulator-state-standby { 262*724ba675SRob Herring regulator-on-in-suspend; 263*724ba675SRob Herring regulator-mode = <4>; 264*724ba675SRob Herring }; 265*724ba675SRob Herring 266*724ba675SRob Herring regulator-state-mem { 267*724ba675SRob Herring regulator-off-in-suspend; 268*724ba675SRob Herring regulator-mode = <4>; 269*724ba675SRob Herring }; 270*724ba675SRob Herring }; 271*724ba675SRob Herring 272*724ba675SRob Herring LDO1 { 273*724ba675SRob Herring regulator-name = "LDO1"; 274*724ba675SRob Herring regulator-min-microvolt = <2500000>; 275*724ba675SRob Herring regulator-max-microvolt = <2500000>; 276*724ba675SRob Herring regulator-always-on; 277*724ba675SRob Herring 278*724ba675SRob Herring regulator-state-standby { 279*724ba675SRob Herring regulator-on-in-suspend; 280*724ba675SRob Herring }; 281*724ba675SRob Herring 282*724ba675SRob Herring regulator-state-mem { 283*724ba675SRob Herring regulator-off-in-suspend; 284*724ba675SRob Herring }; 285*724ba675SRob Herring }; 286*724ba675SRob Herring 287*724ba675SRob Herring LDO2 { 288*724ba675SRob Herring regulator-name = "LDO2"; 289*724ba675SRob Herring regulator-min-microvolt = <3300000>; 290*724ba675SRob Herring regulator-max-microvolt = <3300000>; 291*724ba675SRob Herring regulator-always-on; 292*724ba675SRob Herring 293*724ba675SRob Herring regulator-state-standby { 294*724ba675SRob Herring regulator-on-in-suspend; 295*724ba675SRob Herring }; 296*724ba675SRob Herring 297*724ba675SRob Herring regulator-state-mem { 298*724ba675SRob Herring regulator-off-in-suspend; 299*724ba675SRob Herring }; 300*724ba675SRob Herring }; 301*724ba675SRob Herring 302*724ba675SRob Herring }; 303*724ba675SRob Herring }; 304*724ba675SRob Herring }; 305*724ba675SRob Herring}; 306*724ba675SRob Herring 307*724ba675SRob Herring&i2c0 { /* mikrobus i2c */ 308*724ba675SRob Herring pinctrl-names = "default", "gpio"; 309*724ba675SRob Herring pinctrl-0 = <&pinctrl_mikrobus_i2c>; 310*724ba675SRob Herring pinctrl-1 = <&pinctrl_i2c0_gpio>; 311*724ba675SRob Herring sda-gpios = <&pioA PIN_PD21 GPIO_ACTIVE_HIGH>; 312*724ba675SRob Herring scl-gpios = <&pioA PIN_PD22 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 313*724ba675SRob Herring i2c-digital-filter; 314*724ba675SRob Herring i2c-digital-filter-width-ns = <35>; 315*724ba675SRob Herring status = "okay"; 316*724ba675SRob Herring}; 317*724ba675SRob Herring 318*724ba675SRob Herring&i2c1 { 319*724ba675SRob Herring dmas = <0>, <0>; 320*724ba675SRob Herring pinctrl-names = "default", "gpio"; 321*724ba675SRob Herring pinctrl-0 = <&pinctrl_i2c1_default>; 322*724ba675SRob Herring pinctrl-1 = <&pinctrl_i2c1_gpio>; 323*724ba675SRob Herring sda-gpios = <&pioA PIN_PD19 GPIO_ACTIVE_HIGH>; 324*724ba675SRob Herring scl-gpios = <&pioA PIN_PD20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 325*724ba675SRob Herring i2c-digital-filter; 326*724ba675SRob Herring i2c-digital-filter-width-ns = <35>; 327*724ba675SRob Herring status = "okay"; 328*724ba675SRob Herring 329*724ba675SRob Herring eeprom@50 { 330*724ba675SRob Herring compatible = "atmel,24c02"; 331*724ba675SRob Herring reg = <0x50>; 332*724ba675SRob Herring pagesize = <16>; 333*724ba675SRob Herring status = "okay"; 334*724ba675SRob Herring }; 335*724ba675SRob Herring 336*724ba675SRob Herring eeprom@52 { 337*724ba675SRob Herring compatible = "atmel,24c02"; 338*724ba675SRob Herring reg = <0x52>; 339*724ba675SRob Herring pagesize = <16>; 340*724ba675SRob Herring status = "disabled"; 341*724ba675SRob Herring }; 342*724ba675SRob Herring 343*724ba675SRob Herring eeprom@53 { 344*724ba675SRob Herring compatible = "atmel,24c02"; 345*724ba675SRob Herring reg = <0x53>; 346*724ba675SRob Herring pagesize = <16>; 347*724ba675SRob Herring status = "disabled"; 348*724ba675SRob Herring }; 349*724ba675SRob Herring}; 350*724ba675SRob Herring 351*724ba675SRob Herring&macb0 { 352*724ba675SRob Herring pinctrl-names = "default"; 353*724ba675SRob Herring pinctrl-0 = <&pinctrl_macb0_default &pinctrl_macb0_phy_irq &pinctrl_macb0_rst>; 354*724ba675SRob Herring phy-mode = "mii"; 355*724ba675SRob Herring status = "okay"; 356*724ba675SRob Herring 357*724ba675SRob Herring fixed-link { 358*724ba675SRob Herring speed = <100>; 359*724ba675SRob Herring full-duplex; 360*724ba675SRob Herring }; 361*724ba675SRob Herring}; 362*724ba675SRob Herring 363*724ba675SRob Herring&pioA { 364*724ba675SRob Herring pinctrl_adc_default: adc_default { 365*724ba675SRob Herring pinmux = <PIN_PD24__GPIO>, 366*724ba675SRob Herring <PIN_PD25__GPIO>, 367*724ba675SRob Herring <PIN_PD26__GPIO>; 368*724ba675SRob Herring bias-disable; 369*724ba675SRob Herring }; 370*724ba675SRob Herring 371*724ba675SRob Herring /* 372*724ba675SRob Herring * The ADTRG pin can work on any edge type. 373*724ba675SRob Herring * In here it's being pulled up, so need to 374*724ba675SRob Herring * connect it to ground to get an edge e.g. 375*724ba675SRob Herring * Trigger can be configured on falling, rise 376*724ba675SRob Herring * or any edge, and the pull-up can be changed 377*724ba675SRob Herring * to pull-down or left floating according to 378*724ba675SRob Herring * needs. 379*724ba675SRob Herring */ 380*724ba675SRob Herring pinctrl_adtrg_default: adtrg_default { 381*724ba675SRob Herring pinmux = <PIN_PD31__ADTRG>; 382*724ba675SRob Herring bias-pull-up; 383*724ba675SRob Herring }; 384*724ba675SRob Herring 385*724ba675SRob Herring pinctrl_flx4_default: flx4_default { 386*724ba675SRob Herring pinmux = <PIN_PC28__FLEXCOM4_IO0>, 387*724ba675SRob Herring <PIN_PC29__FLEXCOM4_IO1>; 388*724ba675SRob Herring bias-disable; 389*724ba675SRob Herring }; 390*724ba675SRob Herring 391*724ba675SRob Herring pinctrl_can0_default: can0_default { 392*724ba675SRob Herring pinmux = <PIN_PC10__CANTX0>, 393*724ba675SRob Herring <PIN_PC11__CANRX0>; 394*724ba675SRob Herring bias-disable; 395*724ba675SRob Herring }; 396*724ba675SRob Herring 397*724ba675SRob Herring pinctrl_can1_default: can1_default { 398*724ba675SRob Herring pinmux = <PIN_PC26__CANTX1>, 399*724ba675SRob Herring <PIN_PC27__CANRX1>; 400*724ba675SRob Herring bias-disable; 401*724ba675SRob Herring }; 402*724ba675SRob Herring 403*724ba675SRob Herring pinctrl_i2c1_default: i2c1_default { 404*724ba675SRob Herring pinmux = <PIN_PD19__TWD1>, 405*724ba675SRob Herring <PIN_PD20__TWCK1>; 406*724ba675SRob Herring bias-disable; 407*724ba675SRob Herring }; 408*724ba675SRob Herring 409*724ba675SRob Herring pinctrl_i2c1_gpio: i2c1_gpio { 410*724ba675SRob Herring pinmux = <PIN_PD19__GPIO>, 411*724ba675SRob Herring <PIN_PD20__GPIO>; 412*724ba675SRob Herring bias-disable; 413*724ba675SRob Herring }; 414*724ba675SRob Herring 415*724ba675SRob Herring pinctrl_key_gpio_default: key_gpio_default { 416*724ba675SRob Herring pinmux = <PIN_PD0__GPIO>; 417*724ba675SRob Herring bias-pull-up; 418*724ba675SRob Herring }; 419*724ba675SRob Herring 420*724ba675SRob Herring pinctrl_led_gpio_default: led_gpio_default { 421*724ba675SRob Herring pinmux = <PIN_PB0__GPIO>, 422*724ba675SRob Herring <PIN_PB1__GPIO>, 423*724ba675SRob Herring <PIN_PA31__GPIO>; 424*724ba675SRob Herring bias-pull-up; 425*724ba675SRob Herring }; 426*724ba675SRob Herring 427*724ba675SRob Herring pinctrl_qspi1_default: qspi1_default { 428*724ba675SRob Herring pinmux = <PIN_PA6__QSPI1_SCK>, 429*724ba675SRob Herring <PIN_PA7__QSPI1_IO0>, 430*724ba675SRob Herring <PIN_PA8__QSPI1_IO1>, 431*724ba675SRob Herring <PIN_PA9__QSPI1_IO2>, 432*724ba675SRob Herring <PIN_PA10__QSPI1_IO3>, 433*724ba675SRob Herring <PIN_PA11__QSPI1_CS>; 434*724ba675SRob Herring bias-disable; 435*724ba675SRob Herring }; 436*724ba675SRob Herring 437*724ba675SRob Herring pinctrl_sdmmc0_default: sdmmc0_default { 438*724ba675SRob Herring cmd_data { 439*724ba675SRob Herring pinmux = <PIN_PA1__SDMMC0_CMD>, 440*724ba675SRob Herring <PIN_PA2__SDMMC0_DAT0>, 441*724ba675SRob Herring <PIN_PA3__SDMMC0_DAT1>, 442*724ba675SRob Herring <PIN_PA4__SDMMC0_DAT2>, 443*724ba675SRob Herring <PIN_PA5__SDMMC0_DAT3>; 444*724ba675SRob Herring bias-disable; 445*724ba675SRob Herring }; 446*724ba675SRob Herring 447*724ba675SRob Herring ck_cd { 448*724ba675SRob Herring pinmux = <PIN_PA0__SDMMC0_CK>, 449*724ba675SRob Herring <PIN_PA13__SDMMC0_CD>; 450*724ba675SRob Herring bias-disable; 451*724ba675SRob Herring }; 452*724ba675SRob Herring }; 453*724ba675SRob Herring 454*724ba675SRob Herring pinctrl_sdmmc1_default: sdmmc1_default { 455*724ba675SRob Herring cmd_data { 456*724ba675SRob Herring pinmux = <PIN_PA18__SDMMC1_DAT0>, 457*724ba675SRob Herring <PIN_PA19__SDMMC1_DAT1>, 458*724ba675SRob Herring <PIN_PA20__SDMMC1_DAT2>, 459*724ba675SRob Herring <PIN_PA21__SDMMC1_DAT3>; 460*724ba675SRob Herring bias-disable; 461*724ba675SRob Herring }; 462*724ba675SRob Herring 463*724ba675SRob Herring ck_cd { 464*724ba675SRob Herring pinmux = <PIN_PA22__SDMMC1_CK>, 465*724ba675SRob Herring <PIN_PA28__SDMMC1_CMD>; 466*724ba675SRob Herring bias-disable; 467*724ba675SRob Herring }; 468*724ba675SRob Herring }; 469*724ba675SRob Herring 470*724ba675SRob Herring pinctrl_mikrobus_i2c: mikrobus_i2c { 471*724ba675SRob Herring pinmux = <PIN_PD22__TWCK0>, 472*724ba675SRob Herring <PIN_PD21__TWD0>; 473*724ba675SRob Herring bias-disable; 474*724ba675SRob Herring }; 475*724ba675SRob Herring 476*724ba675SRob Herring pinctrl_i2c0_gpio: i2c0_gpio { 477*724ba675SRob Herring pinmux = <PIN_PD21__GPIO>, 478*724ba675SRob Herring <PIN_PD22__GPIO>; 479*724ba675SRob Herring bias-disable; 480*724ba675SRob Herring }; 481*724ba675SRob Herring 482*724ba675SRob Herring pinctrl_mikrobus1_an: mikrobus1_an { 483*724ba675SRob Herring pinmux = <PIN_PD26__GPIO>; 484*724ba675SRob Herring bias-disable; 485*724ba675SRob Herring }; 486*724ba675SRob Herring 487*724ba675SRob Herring pinctrl_mikrobus1_rst: mikrobus1_rst { 488*724ba675SRob Herring pinmux = <PIN_PC5__GPIO>; 489*724ba675SRob Herring bias-disable; 490*724ba675SRob Herring }; 491*724ba675SRob Herring 492*724ba675SRob Herring pinctrl_mikrobus1_spi_cs: mikrobus1_spi_cs { 493*724ba675SRob Herring pinmux = <PIN_PC21__FLEXCOM3_IO3>; 494*724ba675SRob Herring bias-disable; 495*724ba675SRob Herring }; 496*724ba675SRob Herring 497*724ba675SRob Herring pinctrl_mikrobus1_spi: mikrobus1_spi { 498*724ba675SRob Herring pinmux = <PIN_PC20__FLEXCOM3_IO0>, 499*724ba675SRob Herring <PIN_PC19__FLEXCOM3_IO1>, 500*724ba675SRob Herring <PIN_PC18__FLEXCOM3_IO2>; 501*724ba675SRob Herring bias-disable; 502*724ba675SRob Herring }; 503*724ba675SRob Herring 504*724ba675SRob Herring pinctrl_mikrobus1_pwm: mikrobus1_pwm { 505*724ba675SRob Herring pinmux = <PIN_PC4__TIOB1>; 506*724ba675SRob Herring bias-disable; 507*724ba675SRob Herring }; 508*724ba675SRob Herring 509*724ba675SRob Herring pinctrl_mikrobus1_int: mikrobus1_int { 510*724ba675SRob Herring pinmux = <PIN_PC3__GPIO>; 511*724ba675SRob Herring bias-disable; 512*724ba675SRob Herring }; 513*724ba675SRob Herring 514*724ba675SRob Herring pinctrl_mikrobus1_uart: mikrobus1_uart { 515*724ba675SRob Herring pinmux = <PIN_PB26__URXD0>, 516*724ba675SRob Herring <PIN_PB27__UTXD0>; 517*724ba675SRob Herring bias-disable; 518*724ba675SRob Herring }; 519*724ba675SRob Herring 520*724ba675SRob Herring pinctrl_mikrobus2_an: mikrobus2_an { 521*724ba675SRob Herring pinmux = <PIN_PD25__GPIO>; 522*724ba675SRob Herring bias-disable; 523*724ba675SRob Herring }; 524*724ba675SRob Herring 525*724ba675SRob Herring pinctrl_mikrobus2_rst: mikrobus2_rst { 526*724ba675SRob Herring pinmux = <PIN_PB24__GPIO>; 527*724ba675SRob Herring bias-disable; 528*724ba675SRob Herring }; 529*724ba675SRob Herring 530*724ba675SRob Herring pinctrl_mikrobus2_spi_cs: mikrobus2_spi_cs { 531*724ba675SRob Herring pinmux = <PIN_PB31__FLEXCOM0_IO3>; 532*724ba675SRob Herring bias-disable; 533*724ba675SRob Herring }; 534*724ba675SRob Herring 535*724ba675SRob Herring pinctrl_mikrobus2_spi: mikrobus2_spi { 536*724ba675SRob Herring pinmux = <PIN_PB28__FLEXCOM0_IO0>, 537*724ba675SRob Herring <PIN_PB29__FLEXCOM0_IO1>, 538*724ba675SRob Herring <PIN_PB30__FLEXCOM0_IO2>; 539*724ba675SRob Herring bias-disable; 540*724ba675SRob Herring }; 541*724ba675SRob Herring 542*724ba675SRob Herring pinctrl_ksz_spi_cs: ksz_spi_cs { 543*724ba675SRob Herring pinmux = <PIN_PC0__GPIO>; 544*724ba675SRob Herring bias-disable; 545*724ba675SRob Herring }; 546*724ba675SRob Herring 547*724ba675SRob Herring pinctrl_mikrobus2_pwm: mikrobus2_pwm { 548*724ba675SRob Herring pinmux = <PIN_PB23__TIOB2>; 549*724ba675SRob Herring bias-disable; 550*724ba675SRob Herring }; 551*724ba675SRob Herring 552*724ba675SRob Herring pinctrl_mikrobus2_int: mikrobus2_int { 553*724ba675SRob Herring pinmux = <PIN_PB22__GPIO>; 554*724ba675SRob Herring bias-disable; 555*724ba675SRob Herring }; 556*724ba675SRob Herring 557*724ba675SRob Herring pinctrl_mikrobus2_uart: mikrobus2_uart { 558*724ba675SRob Herring pinmux = <PIN_PC12__URXD3>, 559*724ba675SRob Herring <PIN_PC13__UTXD3>; 560*724ba675SRob Herring bias-disable; 561*724ba675SRob Herring }; 562*724ba675SRob Herring 563*724ba675SRob Herring pinctrl_mikrobus3_an: mikrobus3_an { 564*724ba675SRob Herring pinmux = <PIN_PD24__GPIO>; 565*724ba675SRob Herring bias-disable; 566*724ba675SRob Herring }; 567*724ba675SRob Herring 568*724ba675SRob Herring pinctrl_mikrobus3_rst: mikrobus3_rst { 569*724ba675SRob Herring pinmux = <PIN_PB21__GPIO>; 570*724ba675SRob Herring bias-disable; 571*724ba675SRob Herring }; 572*724ba675SRob Herring 573*724ba675SRob Herring pinctrl_mikrobus3_spi_cs: mikrobus3_spi_cs { 574*724ba675SRob Herring pinmux = <PIN_PA17__SPI0_NPCS0>; 575*724ba675SRob Herring bias-disable; 576*724ba675SRob Herring }; 577*724ba675SRob Herring 578*724ba675SRob Herring pinctrl_mikrobus3_spi: mikrobus3_spi { 579*724ba675SRob Herring pinmux = <PIN_PA14__SPI0_SPCK>, 580*724ba675SRob Herring <PIN_PA16__SPI0_MISO>, 581*724ba675SRob Herring <PIN_PA15__SPI0_MOSI>; 582*724ba675SRob Herring bias-disable; 583*724ba675SRob Herring }; 584*724ba675SRob Herring 585*724ba675SRob Herring pinctrl_mikrobus3_pwm: mikrobus3_pwm { 586*724ba675SRob Herring pinmux = <PIN_PB20__TIOB3>; 587*724ba675SRob Herring bias-disable; 588*724ba675SRob Herring }; 589*724ba675SRob Herring 590*724ba675SRob Herring pinctrl_mikrobus3_int: mikrobus3_int { 591*724ba675SRob Herring pinmux = <PIN_PB18__GPIO>; 592*724ba675SRob Herring bias-disable; 593*724ba675SRob Herring }; 594*724ba675SRob Herring 595*724ba675SRob Herring pinctrl_mikrobus3_uart: mikrobus3_uart { 596*724ba675SRob Herring pinmux = <PIN_PC7__URXD1>, 597*724ba675SRob Herring <PIN_PC8__UTXD1>; 598*724ba675SRob Herring bias-disable; 599*724ba675SRob Herring }; 600*724ba675SRob Herring 601*724ba675SRob Herring pinctrl_usb_default: usb_default { 602*724ba675SRob Herring pinmux = <PIN_PC17__GPIO>; 603*724ba675SRob Herring bias-disable; 604*724ba675SRob Herring }; 605*724ba675SRob Herring 606*724ba675SRob Herring pinctrl_usba_vbus: usba_vbus { 607*724ba675SRob Herring pinmux = <PIN_PD23__GPIO>; 608*724ba675SRob Herring bias-disable; 609*724ba675SRob Herring }; 610*724ba675SRob Herring 611*724ba675SRob Herring pinctrl_pwm0_pwm2_default: pwm0_pwm2_default { 612*724ba675SRob Herring pinmux = <PIN_PB5__PWMH2>, 613*724ba675SRob Herring <PIN_PB6__PWML2>; 614*724ba675SRob Herring bias-pull-up; 615*724ba675SRob Herring }; 616*724ba675SRob Herring 617*724ba675SRob Herring pinctrl_macb0_default: macb0_default { 618*724ba675SRob Herring pinmux = <PIN_PD1__GRXCK>, 619*724ba675SRob Herring <PIN_PD2__GTXER>, 620*724ba675SRob Herring <PIN_PD5__GRX2>, 621*724ba675SRob Herring <PIN_PD6__GRX3>, 622*724ba675SRob Herring <PIN_PD7__GTX2>, 623*724ba675SRob Herring <PIN_PD8__GTX3>, 624*724ba675SRob Herring <PIN_PD9__GTXCK>, 625*724ba675SRob Herring <PIN_PD10__GTXEN>, 626*724ba675SRob Herring <PIN_PD11__GRXDV>, 627*724ba675SRob Herring <PIN_PD12__GRXER>, 628*724ba675SRob Herring <PIN_PD13__GRX0>, 629*724ba675SRob Herring <PIN_PD14__GRX1>, 630*724ba675SRob Herring <PIN_PD15__GTX0>, 631*724ba675SRob Herring <PIN_PD16__GTX1>, 632*724ba675SRob Herring <PIN_PD17__GMDC>, 633*724ba675SRob Herring <PIN_PD18__GMDIO>; 634*724ba675SRob Herring bias-disable; 635*724ba675SRob Herring }; 636*724ba675SRob Herring 637*724ba675SRob Herring pinctrl_macb0_phy_irq: macb0_phy_irq { 638*724ba675SRob Herring pinmux = <PIN_PD3__GPIO>; 639*724ba675SRob Herring bias-disable; 640*724ba675SRob Herring }; 641*724ba675SRob Herring 642*724ba675SRob Herring pinctrl_macb0_rst: macb0_sw_rst { 643*724ba675SRob Herring pinmux = <PIN_PD4__GPIO>; 644*724ba675SRob Herring bias-disable; 645*724ba675SRob Herring }; 646*724ba675SRob Herring 647*724ba675SRob Herring pinctrl_flx2_default: flx2_default { 648*724ba675SRob Herring pinmux = <PIN_PA6__FLEXCOM2_IO0>, 649*724ba675SRob Herring <PIN_PA7__FLEXCOM2_IO1>, 650*724ba675SRob Herring <PIN_PA9__FLEXCOM2_IO3>, 651*724ba675SRob Herring <PIN_PA10__FLEXCOM2_IO4>; 652*724ba675SRob Herring bias-disable; 653*724ba675SRob Herring }; 654*724ba675SRob Herring}; 655*724ba675SRob Herring 656*724ba675SRob Herring&pwm0 { 657*724ba675SRob Herring pinctrl-names = "default"; 658*724ba675SRob Herring pinctrl-0 = <&pinctrl_pwm0_pwm2_default>; 659*724ba675SRob Herring status = "disabled"; /* conflict with leds, HSIC */ 660*724ba675SRob Herring}; 661*724ba675SRob Herring 662*724ba675SRob Herring&qspi1 { 663*724ba675SRob Herring pinctrl-names = "default"; 664*724ba675SRob Herring pinctrl-0 = <&pinctrl_qspi1_default>; 665*724ba675SRob Herring status = "disabled"; /* Conflict with wilc_pwrseq, flx2 */ 666*724ba675SRob Herring 667*724ba675SRob Herring flash@0 { 668*724ba675SRob Herring #address-cells = <1>; 669*724ba675SRob Herring #size-cells = <1>; 670*724ba675SRob Herring compatible = "jedec,spi-nor"; 671*724ba675SRob Herring reg = <0>; 672*724ba675SRob Herring spi-max-frequency = <104000000>; 673*724ba675SRob Herring spi-cs-setup-ns = <7>; 674*724ba675SRob Herring spi-tx-bus-width = <4>; 675*724ba675SRob Herring spi-rx-bus-width = <4>; 676*724ba675SRob Herring m25p,fast-read; 677*724ba675SRob Herring 678*724ba675SRob Herring at91bootstrap@0 { 679*724ba675SRob Herring label = "qspi: at91bootstrap"; 680*724ba675SRob Herring reg = <0x00000000 0x00040000>; 681*724ba675SRob Herring }; 682*724ba675SRob Herring 683*724ba675SRob Herring bootloader@40000 { 684*724ba675SRob Herring label = "qspi: bootloader"; 685*724ba675SRob Herring reg = <0x00040000 0x000c0000>; 686*724ba675SRob Herring }; 687*724ba675SRob Herring 688*724ba675SRob Herring bootloaderenvred@100000 { 689*724ba675SRob Herring label = "qspi: bootloader env redundant"; 690*724ba675SRob Herring reg = <0x00100000 0x00040000>; 691*724ba675SRob Herring }; 692*724ba675SRob Herring 693*724ba675SRob Herring bootloaderenv@140000 { 694*724ba675SRob Herring label = "qspi: bootloader env"; 695*724ba675SRob Herring reg = <0x00140000 0x00040000>; 696*724ba675SRob Herring }; 697*724ba675SRob Herring 698*724ba675SRob Herring dtb@180000 { 699*724ba675SRob Herring label = "qspi: device tree"; 700*724ba675SRob Herring reg = <0x00180000 0x00080000>; 701*724ba675SRob Herring }; 702*724ba675SRob Herring 703*724ba675SRob Herring kernel@200000 { 704*724ba675SRob Herring label = "qspi: kernel"; 705*724ba675SRob Herring reg = <0x00200000 0x00600000>; 706*724ba675SRob Herring }; 707*724ba675SRob Herring }; 708*724ba675SRob Herring}; 709*724ba675SRob Herring 710*724ba675SRob Herring&sdmmc0 { 711*724ba675SRob Herring no-1-8-v; 712*724ba675SRob Herring bus-width = <4>; 713*724ba675SRob Herring pinctrl-names = "default"; 714*724ba675SRob Herring pinctrl-0 = <&pinctrl_sdmmc0_default>; 715*724ba675SRob Herring status = "okay"; 716*724ba675SRob Herring}; 717*724ba675SRob Herring 718*724ba675SRob Herring&shutdown_controller { 719*724ba675SRob Herring debounce-delay-us = <976>; 720*724ba675SRob Herring atmel,wakeup-rtc-timer; 721*724ba675SRob Herring 722*724ba675SRob Herring input@0 { 723*724ba675SRob Herring reg = <0>; 724*724ba675SRob Herring }; 725*724ba675SRob Herring}; 726*724ba675SRob Herring 727*724ba675SRob Herring&spi0 { /* mikrobus3 spi */ 728*724ba675SRob Herring pinctrl-names = "default"; 729*724ba675SRob Herring pinctrl-0 = <&pinctrl_mikrobus3_spi &pinctrl_mikrobus3_spi_cs>; 730*724ba675SRob Herring status = "okay"; 731*724ba675SRob Herring}; 732*724ba675SRob Herring 733*724ba675SRob Herring&tcb0 { 734*724ba675SRob Herring timer0: timer@0 { 735*724ba675SRob Herring compatible = "atmel,tcb-timer"; 736*724ba675SRob Herring reg = <0>; 737*724ba675SRob Herring }; 738*724ba675SRob Herring 739*724ba675SRob Herring timer1: timer@1 { 740*724ba675SRob Herring compatible = "atmel,tcb-timer"; 741*724ba675SRob Herring reg = <1>; 742*724ba675SRob Herring }; 743*724ba675SRob Herring}; 744*724ba675SRob Herring 745*724ba675SRob Herring&uart0 { 746*724ba675SRob Herring pinctrl-names = "default"; 747*724ba675SRob Herring pinctrl-0 = <&pinctrl_mikrobus1_uart>; 748*724ba675SRob Herring atmel,use-dma-rx; 749*724ba675SRob Herring atmel,use-dma-tx; 750*724ba675SRob Herring status = "okay"; 751*724ba675SRob Herring}; 752*724ba675SRob Herring 753*724ba675SRob Herring&uart1 { 754*724ba675SRob Herring pinctrl-names = "default"; 755*724ba675SRob Herring pinctrl-0 = <&pinctrl_mikrobus3_uart>; 756*724ba675SRob Herring atmel,use-dma-rx; 757*724ba675SRob Herring atmel,use-dma-tx; 758*724ba675SRob Herring status = "okay"; 759*724ba675SRob Herring}; 760*724ba675SRob Herring 761*724ba675SRob Herring&uart3 { 762*724ba675SRob Herring pinctrl-names = "default"; 763*724ba675SRob Herring pinctrl-0 = <&pinctrl_mikrobus2_uart>; 764*724ba675SRob Herring atmel,use-dma-rx; 765*724ba675SRob Herring atmel,use-dma-tx; 766*724ba675SRob Herring status = "okay"; 767*724ba675SRob Herring}; 768*724ba675SRob Herring 769*724ba675SRob Herring&usb0 { 770*724ba675SRob Herring atmel,vbus-gpio = <&pioA PIN_PD23 GPIO_ACTIVE_HIGH>; 771*724ba675SRob Herring pinctrl-names = "default"; 772*724ba675SRob Herring pinctrl-0 = <&pinctrl_usba_vbus>; 773*724ba675SRob Herring status = "okay"; 774*724ba675SRob Herring}; 775*724ba675SRob Herring 776*724ba675SRob Herring&usb1 { 777*724ba675SRob Herring num-ports = <3>; 778*724ba675SRob Herring pinctrl-names = "default"; 779*724ba675SRob Herring pinctrl-0 = <&pinctrl_usb_default>; 780*724ba675SRob Herring status = "okay"; 781*724ba675SRob Herring}; 782*724ba675SRob Herring 783*724ba675SRob Herring&usb2 { 784*724ba675SRob Herring phy_type = "hsic"; 785*724ba675SRob Herring status = "okay"; 786*724ba675SRob Herring}; 787*724ba675SRob Herring 788*724ba675SRob Herring&watchdog { 789*724ba675SRob Herring status = "okay"; 790*724ba675SRob Herring}; 791