1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * at91-sama5d27_wlsom1_ek.dts - Device Tree file for SAMA5D27 WLSOM1 EK 4*f126890aSEmmanuel Vadot * 5*f126890aSEmmanuel Vadot * Copyright (C) 2019 Microchip Technology Inc. and its subsidiaries 6*f126890aSEmmanuel Vadot * 7*f126890aSEmmanuel Vadot * Author: Nicolas Ferre <nicolas.ferre@microcihp.com> 8*f126890aSEmmanuel Vadot */ 9*f126890aSEmmanuel Vadot/dts-v1/; 10*f126890aSEmmanuel Vadot#include "at91-sama5d27_wlsom1.dtsi" 11*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h> 12*f126890aSEmmanuel Vadot 13*f126890aSEmmanuel Vadot/ { 14*f126890aSEmmanuel Vadot model = "Microchip SAMA5D27 WLSOM1 EK"; 15*f126890aSEmmanuel Vadot compatible = "microchip,sama5d27-wlsom1-ek", "microchip,sama5d27-wlsom1", "atmel,sama5d27", "atmel,sama5d2", "atmel,sama5"; 16*f126890aSEmmanuel Vadot 17*f126890aSEmmanuel Vadot aliases { 18*f126890aSEmmanuel Vadot serial0 = &uart0; /* DBGU */ 19*f126890aSEmmanuel Vadot serial1 = &uart6; /* BT */ 20*f126890aSEmmanuel Vadot serial2 = &uart5; /* mikro BUS 2 */ 21*f126890aSEmmanuel Vadot serial3 = &uart3; /* mikro BUS 1 */ 22*f126890aSEmmanuel Vadot i2c1 = &i2c1; 23*f126890aSEmmanuel Vadot }; 24*f126890aSEmmanuel Vadot 25*f126890aSEmmanuel Vadot chosen { 26*f126890aSEmmanuel Vadot stdout-path = "serial0:115200n8"; 27*f126890aSEmmanuel Vadot }; 28*f126890aSEmmanuel Vadot 29*f126890aSEmmanuel Vadot gpio-keys { 30*f126890aSEmmanuel Vadot compatible = "gpio-keys"; 31*f126890aSEmmanuel Vadot 32*f126890aSEmmanuel Vadot pinctrl-names = "default"; 33*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_key_gpio_default>; 34*f126890aSEmmanuel Vadot 35*f126890aSEmmanuel Vadot button-1 { 36*f126890aSEmmanuel Vadot label = "USER BUTTON"; 37*f126890aSEmmanuel Vadot gpios = <&pioA PIN_PB2 GPIO_ACTIVE_LOW>; 38*f126890aSEmmanuel Vadot linux,code = <KEY_PROG1>; 39*f126890aSEmmanuel Vadot wakeup-source; 40*f126890aSEmmanuel Vadot }; 41*f126890aSEmmanuel Vadot }; 42*f126890aSEmmanuel Vadot 43*f126890aSEmmanuel Vadot leds { 44*f126890aSEmmanuel Vadot compatible = "gpio-leds"; 45*f126890aSEmmanuel Vadot pinctrl-names = "default"; 46*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_led_gpio_default>; 47*f126890aSEmmanuel Vadot status = "okay"; 48*f126890aSEmmanuel Vadot 49*f126890aSEmmanuel Vadot led-red { 50*f126890aSEmmanuel Vadot label = "red"; 51*f126890aSEmmanuel Vadot gpios = <&pioA PIN_PA6 GPIO_ACTIVE_HIGH>; 52*f126890aSEmmanuel Vadot }; 53*f126890aSEmmanuel Vadot 54*f126890aSEmmanuel Vadot led-green { 55*f126890aSEmmanuel Vadot label = "green"; 56*f126890aSEmmanuel Vadot gpios = <&pioA PIN_PA7 GPIO_ACTIVE_HIGH>; 57*f126890aSEmmanuel Vadot }; 58*f126890aSEmmanuel Vadot 59*f126890aSEmmanuel Vadot led-blue { 60*f126890aSEmmanuel Vadot label = "blue"; 61*f126890aSEmmanuel Vadot gpios = <&pioA PIN_PA8 GPIO_ACTIVE_HIGH>; 62*f126890aSEmmanuel Vadot linux,default-trigger = "heartbeat"; 63*f126890aSEmmanuel Vadot }; 64*f126890aSEmmanuel Vadot }; 65*f126890aSEmmanuel Vadot}; 66*f126890aSEmmanuel Vadot 67*f126890aSEmmanuel Vadot&adc { 68*f126890aSEmmanuel Vadot vddana-supply = <&vdd_3v3>; 69*f126890aSEmmanuel Vadot vref-supply = <&vdd_3v3>; 70*f126890aSEmmanuel Vadot pinctrl-names = "default"; 71*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_adc_default>; 72*f126890aSEmmanuel Vadot status = "okay"; 73*f126890aSEmmanuel Vadot}; 74*f126890aSEmmanuel Vadot 75*f126890aSEmmanuel Vadot&flx0 { 76*f126890aSEmmanuel Vadot atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>; 77*f126890aSEmmanuel Vadot status = "okay"; 78*f126890aSEmmanuel Vadot 79*f126890aSEmmanuel Vadot uart5: serial@200 { 80*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_flx0_default>; 81*f126890aSEmmanuel Vadot pinctrl-names = "default"; 82*f126890aSEmmanuel Vadot atmel,use-dma-rx; 83*f126890aSEmmanuel Vadot atmel,use-dma-tx; 84*f126890aSEmmanuel Vadot status = "okay"; 85*f126890aSEmmanuel Vadot }; 86*f126890aSEmmanuel Vadot}; 87*f126890aSEmmanuel Vadot 88*f126890aSEmmanuel Vadot&flx1 { 89*f126890aSEmmanuel Vadot status = "okay"; 90*f126890aSEmmanuel Vadot 91*f126890aSEmmanuel Vadot uart6: serial@200 { 92*f126890aSEmmanuel Vadot atmel,use-dma-rx; 93*f126890aSEmmanuel Vadot atmel,use-dma-tx; 94*f126890aSEmmanuel Vadot status = "okay"; 95*f126890aSEmmanuel Vadot }; 96*f126890aSEmmanuel Vadot}; 97*f126890aSEmmanuel Vadot 98*f126890aSEmmanuel Vadot&macb0 { 99*f126890aSEmmanuel Vadot status = "okay"; 100*f126890aSEmmanuel Vadot}; 101*f126890aSEmmanuel Vadot 102*f126890aSEmmanuel Vadot&pioA { 103*f126890aSEmmanuel Vadot /* 104*f126890aSEmmanuel Vadot * There is no real pinmux for ADC, if the pin 105*f126890aSEmmanuel Vadot * is not requested by another peripheral then 106*f126890aSEmmanuel Vadot * the muxing is done when channel is enabled. 107*f126890aSEmmanuel Vadot * Requesting pins for ADC is GPIO is 108*f126890aSEmmanuel Vadot * encouraged to prevent conflicts and to 109*f126890aSEmmanuel Vadot * disable bias in order to be in the same 110*f126890aSEmmanuel Vadot * state when the pin is not muxed to the adc. 111*f126890aSEmmanuel Vadot */ 112*f126890aSEmmanuel Vadot pinctrl_adc_default: adc_default { 113*f126890aSEmmanuel Vadot pinmux = <PIN_PD25__GPIO>, 114*f126890aSEmmanuel Vadot <PIN_PD26__GPIO>; 115*f126890aSEmmanuel Vadot bias-disable; 116*f126890aSEmmanuel Vadot }; 117*f126890aSEmmanuel Vadot 118*f126890aSEmmanuel Vadot pinctrl_flx0_default: flx0_usart_default { 119*f126890aSEmmanuel Vadot pinmux = <PIN_PB28__FLEXCOM0_IO0>, 120*f126890aSEmmanuel Vadot <PIN_PB29__FLEXCOM0_IO1>; 121*f126890aSEmmanuel Vadot bias-disable; 122*f126890aSEmmanuel Vadot }; 123*f126890aSEmmanuel Vadot 124*f126890aSEmmanuel Vadot pinctrl_key_gpio_default: key_gpio_default { 125*f126890aSEmmanuel Vadot pinmux = <PIN_PB2__GPIO>; 126*f126890aSEmmanuel Vadot bias-pull-up; 127*f126890aSEmmanuel Vadot }; 128*f126890aSEmmanuel Vadot 129*f126890aSEmmanuel Vadot pinctrl_led_gpio_default: led_gpio_default { 130*f126890aSEmmanuel Vadot pinmux = <PIN_PA6__GPIO>, 131*f126890aSEmmanuel Vadot <PIN_PA7__GPIO>, 132*f126890aSEmmanuel Vadot <PIN_PA8__GPIO>; 133*f126890aSEmmanuel Vadot bias-pull-down; 134*f126890aSEmmanuel Vadot }; 135*f126890aSEmmanuel Vadot 136*f126890aSEmmanuel Vadot pinctrl_sdmmc0_default: sdmmc0_default { 137*f126890aSEmmanuel Vadot cmd_data { 138*f126890aSEmmanuel Vadot pinmux = <PIN_PA1__SDMMC0_CMD>, 139*f126890aSEmmanuel Vadot <PIN_PA2__SDMMC0_DAT0>, 140*f126890aSEmmanuel Vadot <PIN_PA3__SDMMC0_DAT1>, 141*f126890aSEmmanuel Vadot <PIN_PA4__SDMMC0_DAT2>, 142*f126890aSEmmanuel Vadot <PIN_PA5__SDMMC0_DAT3>; 143*f126890aSEmmanuel Vadot bias-disable; 144*f126890aSEmmanuel Vadot }; 145*f126890aSEmmanuel Vadot 146*f126890aSEmmanuel Vadot ck_cd_vddsel { 147*f126890aSEmmanuel Vadot pinmux = <PIN_PA0__SDMMC0_CK>, 148*f126890aSEmmanuel Vadot <PIN_PA11__SDMMC0_VDDSEL>, 149*f126890aSEmmanuel Vadot <PIN_PA12__SDMMC0_WP>, 150*f126890aSEmmanuel Vadot <PIN_PA13__SDMMC0_CD>; 151*f126890aSEmmanuel Vadot bias-disable; 152*f126890aSEmmanuel Vadot }; 153*f126890aSEmmanuel Vadot }; 154*f126890aSEmmanuel Vadot 155*f126890aSEmmanuel Vadot pinctrl_uart0_default: uart0_default { 156*f126890aSEmmanuel Vadot pinmux = <PIN_PB26__URXD0>, 157*f126890aSEmmanuel Vadot <PIN_PB27__UTXD0>; 158*f126890aSEmmanuel Vadot bias-disable; 159*f126890aSEmmanuel Vadot }; 160*f126890aSEmmanuel Vadot 161*f126890aSEmmanuel Vadot pinctrl_uart3_default: uart3_default { 162*f126890aSEmmanuel Vadot pinmux = <PIN_PB11__URXD3>, 163*f126890aSEmmanuel Vadot <PIN_PB12__UTXD3>; 164*f126890aSEmmanuel Vadot bias-disable; 165*f126890aSEmmanuel Vadot }; 166*f126890aSEmmanuel Vadot 167*f126890aSEmmanuel Vadot pinctrl_pwm0_default: pwm0_default { 168*f126890aSEmmanuel Vadot pinmux = <PIN_PA31__PWML0>, 169*f126890aSEmmanuel Vadot <PIN_PA30__PWMH0>; 170*f126890aSEmmanuel Vadot bias-disable; 171*f126890aSEmmanuel Vadot }; 172*f126890aSEmmanuel Vadot 173*f126890aSEmmanuel Vadot pinctrl_usb_default: usb_default { 174*f126890aSEmmanuel Vadot pinmux = <PIN_PA10__GPIO>; 175*f126890aSEmmanuel Vadot bias-disable; 176*f126890aSEmmanuel Vadot }; 177*f126890aSEmmanuel Vadot 178*f126890aSEmmanuel Vadot pinctrl_usba_vbus: usba_vbus { 179*f126890aSEmmanuel Vadot pinmux = <PIN_PA16__GPIO>; 180*f126890aSEmmanuel Vadot bias-disable; 181*f126890aSEmmanuel Vadot }; 182*f126890aSEmmanuel Vadot}; 183*f126890aSEmmanuel Vadot 184*f126890aSEmmanuel Vadot&pwm0 { 185*f126890aSEmmanuel Vadot pinctrl-names = "default"; 186*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_pwm0_default>; 187*f126890aSEmmanuel Vadot status = "okay"; 188*f126890aSEmmanuel Vadot}; 189*f126890aSEmmanuel Vadot 190*f126890aSEmmanuel Vadot&qspi1 { 191*f126890aSEmmanuel Vadot status = "okay"; 192*f126890aSEmmanuel Vadot 193*f126890aSEmmanuel Vadot qspi1_flash: flash@0 { 194*f126890aSEmmanuel Vadot status = "okay"; 195*f126890aSEmmanuel Vadot }; 196*f126890aSEmmanuel Vadot}; 197*f126890aSEmmanuel Vadot 198*f126890aSEmmanuel Vadot&sdmmc0 { 199*f126890aSEmmanuel Vadot bus-width = <4>; 200*f126890aSEmmanuel Vadot pinctrl-names = "default"; 201*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_sdmmc0_default>; 202*f126890aSEmmanuel Vadot status = "okay"; 203*f126890aSEmmanuel Vadot}; 204*f126890aSEmmanuel Vadot 205*f126890aSEmmanuel Vadot&shutdown_controller { 206*f126890aSEmmanuel Vadot debounce-delay-us = <976>; 207*f126890aSEmmanuel Vadot atmel,wakeup-rtc-timer; 208*f126890aSEmmanuel Vadot 209*f126890aSEmmanuel Vadot input@0 { 210*f126890aSEmmanuel Vadot reg = <0>; 211*f126890aSEmmanuel Vadot }; 212*f126890aSEmmanuel Vadot}; 213*f126890aSEmmanuel Vadot 214*f126890aSEmmanuel Vadot&tcb0 { 215*f126890aSEmmanuel Vadot timer0: timer@0 { 216*f126890aSEmmanuel Vadot compatible = "atmel,tcb-timer"; 217*f126890aSEmmanuel Vadot reg = <0>; 218*f126890aSEmmanuel Vadot }; 219*f126890aSEmmanuel Vadot 220*f126890aSEmmanuel Vadot timer1: timer@1 { 221*f126890aSEmmanuel Vadot compatible = "atmel,tcb-timer"; 222*f126890aSEmmanuel Vadot reg = <1>; 223*f126890aSEmmanuel Vadot }; 224*f126890aSEmmanuel Vadot}; 225*f126890aSEmmanuel Vadot 226*f126890aSEmmanuel Vadot&uart0 { 227*f126890aSEmmanuel Vadot pinctrl-names = "default"; 228*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_uart0_default>; 229*f126890aSEmmanuel Vadot atmel,use-dma-rx; 230*f126890aSEmmanuel Vadot atmel,use-dma-tx; 231*f126890aSEmmanuel Vadot status = "okay"; 232*f126890aSEmmanuel Vadot}; 233*f126890aSEmmanuel Vadot 234*f126890aSEmmanuel Vadot&uart3 { 235*f126890aSEmmanuel Vadot pinctrl-names = "default"; 236*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_uart3_default>; 237*f126890aSEmmanuel Vadot atmel,use-dma-rx; 238*f126890aSEmmanuel Vadot atmel,use-dma-tx; 239*f126890aSEmmanuel Vadot status = "okay"; 240*f126890aSEmmanuel Vadot}; 241*f126890aSEmmanuel Vadot 242*f126890aSEmmanuel Vadot&usb0 { 243*f126890aSEmmanuel Vadot atmel,vbus-gpio = <&pioA PIN_PA16 GPIO_ACTIVE_HIGH>; 244*f126890aSEmmanuel Vadot pinctrl-names = "default"; 245*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_usba_vbus>; 246*f126890aSEmmanuel Vadot status = "okay"; 247*f126890aSEmmanuel Vadot}; 248*f126890aSEmmanuel Vadot 249*f126890aSEmmanuel Vadot&usb1 { 250*f126890aSEmmanuel Vadot num-ports = <3>; 251*f126890aSEmmanuel Vadot atmel,vbus-gpio = <0 252*f126890aSEmmanuel Vadot &pioA PIN_PA10 GPIO_ACTIVE_HIGH 253*f126890aSEmmanuel Vadot 0 254*f126890aSEmmanuel Vadot >; 255*f126890aSEmmanuel Vadot pinctrl-names = "default"; 256*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_usb_default>; 257*f126890aSEmmanuel Vadot status = "okay"; 258*f126890aSEmmanuel Vadot}; 259*f126890aSEmmanuel Vadot 260*f126890aSEmmanuel Vadot&usb2 { 261*f126890aSEmmanuel Vadot phy_type = "hsic"; 262*f126890aSEmmanuel Vadot status = "okay"; 263*f126890aSEmmanuel Vadot}; 264*f126890aSEmmanuel Vadot 265*f126890aSEmmanuel Vadot&watchdog { 266*f126890aSEmmanuel Vadot status = "okay"; 267*f126890aSEmmanuel Vadot}; 268*f126890aSEmmanuel Vadot 269