1/* 2 * Copyright (c) 2019 Benjamin Valentin 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7/dts-v1/; 8#include <atmel/same5xx20.dtsi> 9#include "atsame54_xpro-pinctrl.dtsi" 10#include <zephyr/dt-bindings/input/input-event-codes.h> 11 12/ { 13 model = "SAM E54 Xplained Pro"; 14 compatible = "atsame54,xpro", "atmel,same54p20a", "atmel,same54"; 15 16 chosen { 17 zephyr,console = &sercom2; 18 zephyr,shell-uart = &sercom2; 19 zephyr,sram = &sram0; 20 zephyr,flash = &flash0; 21 }; 22 23 /* These aliases are provided for compatibility with samples */ 24 aliases { 25 led0 = &led0; 26 pwm-led0 = &pwm_led0; 27 sw0 = &button0; 28 i2c-0 = &sercom7; 29 }; 30 31 leds { 32 compatible = "gpio-leds"; 33 led0: led_0 { 34 gpios = <&portc 18 GPIO_ACTIVE_LOW>; 35 label = "Yellow LED"; 36 }; 37 }; 38 39 pwmleds { 40 compatible = "pwm-leds"; 41 pwm_led0: pwm_led_0 { 42 pwms = <&tcc0 2 PWM_MSEC(20)>; 43 }; 44 }; 45 46 buttons { 47 compatible = "gpio-keys"; 48 button0: button_0 { 49 gpios = <&portb 31 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; 50 label = "SW0"; 51 zephyr,code = <INPUT_KEY_0>; 52 }; 53 }; 54}; 55 56&tcc0 { 57 status = "okay"; 58 compatible = "atmel,sam0-tcc-pwm"; 59 /* Gives a maximum period of 1.1s for 120MHz main clock */ 60 prescaler = <8>; 61 #pwm-cells = <2>; 62 63 pinctrl-0 = <&pwm_default>; 64 pinctrl-names = "default"; 65}; 66 67&sercom2 { 68 status = "okay"; 69 compatible = "atmel,sam0-uart"; 70 current-speed = <115200>; 71 rxpo = <1>; 72 txpo = <0>; 73 #address-cells = <1>; 74 #size-cells = <0>; 75 76 pinctrl-0 = <&sercom2_uart_default>; 77 pinctrl-names = "default"; 78}; 79 80&sercom4 { 81 status = "okay"; 82 compatible = "atmel,sam0-spi"; 83 dipo = <3>; 84 dopo = <0>; 85 #address-cells = <1>; 86 #size-cells = <0>; 87 88 pinctrl-0 = <&sercom4_spi_default>; 89 pinctrl-names = "default"; 90}; 91 92&sercom7 { 93 status = "okay"; 94 compatible = "atmel,sam0-i2c"; 95 clock-frequency = <I2C_BITRATE_FAST>; 96 #address-cells = <1>; 97 #size-cells = <0>; 98 99 pinctrl-0 = <&sercom7_i2c_default>; 100 pinctrl-names = "default"; 101 102 eeprom: eeprom@5e { 103 compatible = "atmel,24mac402"; 104 reg = <0x5e>; 105 }; 106}; 107 108&adc0 { 109 status = "okay"; 110}; 111 112zephyr_udc0: &usb0 { 113 status = "okay"; 114 115 pinctrl-0 = <&usb_dc_default>; 116 pinctrl-names = "default"; 117}; 118 119&gmac { 120 status = "okay"; 121 122 pinctrl-0 = <&gmac_rmii>; 123 pinctrl-names = "default"; 124 125 mac-eeprom = <&eeprom>; 126 phy-handle = <&phy>; 127}; 128 129&mdio { 130 status = "okay"; 131 132 pinctrl-0 = <&mdio_default>; 133 pinctrl-names = "default"; 134 135 phy: ethernet-phy@0 { 136 compatible = "ethernet-phy"; 137 status = "okay"; 138 reg = <0>; 139 }; 140}; 141 142&flash0 { 143 partitions { 144 compatible = "fixed-partitions"; 145 #address-cells = <1>; 146 #size-cells = <1>; 147 148 /* 149 * The final 16 KiB is reserved for the application. 150 * Storage partition will be used by FCB/LittleFS/NVS 151 * if enabled. 152 */ 153 storage_partition: partition@fc000 { 154 label = "storage"; 155 reg = <0x000fc000 0x00004000>; 156 }; 157 }; 158}; 159