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 "same54_xpro-pinctrl.dtsi" 10#include <zephyr/dt-bindings/input/input-event-codes.h> 11 12/ { 13 model = "SAM E54 Xplained Pro"; 14 compatible = "same54,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&cpu0 { 57 clock-frequency = <120000000>; 58}; 59 60&tcc0 { 61 status = "okay"; 62 compatible = "atmel,sam0-tcc-pwm"; 63 /* Gives a maximum period of 1.1s for 120MHz main clock */ 64 prescaler = <8>; 65 #pwm-cells = <2>; 66 67 pinctrl-0 = <&pwm_default>; 68 pinctrl-names = "default"; 69}; 70 71&sercom2 { 72 status = "okay"; 73 compatible = "atmel,sam0-uart"; 74 current-speed = <115200>; 75 rxpo = <1>; 76 txpo = <0>; 77 #address-cells = <1>; 78 #size-cells = <0>; 79 80 pinctrl-0 = <&sercom2_uart_default>; 81 pinctrl-names = "default"; 82}; 83 84&sercom4 { 85 status = "okay"; 86 compatible = "atmel,sam0-spi"; 87 dipo = <3>; 88 dopo = <0>; 89 #address-cells = <1>; 90 #size-cells = <0>; 91 92 pinctrl-0 = <&sercom4_spi_default>; 93 pinctrl-names = "default"; 94}; 95 96&sercom7 { 97 status = "okay"; 98 compatible = "atmel,sam0-i2c"; 99 clock-frequency = <I2C_BITRATE_FAST>; 100 #address-cells = <1>; 101 #size-cells = <0>; 102 103 pinctrl-0 = <&sercom7_i2c_default>; 104 pinctrl-names = "default"; 105 106 eeprom: eeprom@5e { 107 compatible = "atmel,24mac402"; 108 reg = <0x5e>; 109 }; 110}; 111 112&adc0 { 113 status = "okay"; 114}; 115 116zephyr_udc0: &usb0 { 117 status = "okay"; 118 119 pinctrl-0 = <&usb_dc_default>; 120 pinctrl-names = "default"; 121}; 122 123&gmac { 124 status = "okay"; 125 126 pinctrl-0 = <&gmac_rmii>; 127 pinctrl-names = "default"; 128 129 mac-eeprom = <&eeprom>; 130 phy-handle = <&phy>; 131}; 132 133&mdio { 134 status = "okay"; 135 136 pinctrl-0 = <&mdio_default>; 137 pinctrl-names = "default"; 138 139 phy: ethernet-phy@0 { 140 compatible = "ethernet-phy"; 141 status = "okay"; 142 reg = <0>; 143 }; 144}; 145 146&flash0 { 147 partitions { 148 compatible = "fixed-partitions"; 149 #address-cells = <1>; 150 #size-cells = <1>; 151 152 /* 153 * The final 16 KiB is reserved for the application. 154 * Storage partition will be used by FCB/LittleFS/NVS 155 * if enabled. 156 */ 157 storage_partition: partition@fc000 { 158 label = "storage"; 159 reg = <0x000fc000 0x00004000>; 160 }; 161 }; 162}; 163