Skip to content

Commit 8d44550

Browse files
ArunMCHPjhedberg
authored andcommitted
boards: microchip: add SAM E54 Xplained Pro board support
Add initial support for the Microchip SAM E54 Xplained Pro board (ATSAME54-XPRO). Product page: https://www.microchip.com/en-us/development-tool/atsame54-xpro Signed-off-by: Arunprasath P <[email protected]>
1 parent fe830c5 commit 8d44550

File tree

10 files changed

+242
-0
lines changed

10 files changed

+242
-0
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Copyright (c) 2025 Microchip Technology Inc.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config BOARD_SAM_E54_XPRO
5+
select SOC_ATSAME54P20A
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Copyright (c) 2025 Microchip Technology Inc.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake)
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Copyright (c) 2025 Microchip Technology Inc.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
board:
5+
name: sam_e54_xpro
6+
full_name: SAM E54 Xplained Pro
7+
vendor: microchip
8+
socs:
9+
- name: atsame54p20a
Binary file not shown.
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
.. zephyr:board:: sam_e54_xpro
2+
3+
Overview
4+
********
5+
6+
The SAM E54 Xplained Pro evaluation kit is ideal for evaluation and
7+
prototyping with the SAM E54 Cortex®-M4F processor-based
8+
microcontrollers. The kit includes Microchip’s Embedded Debugger (EDBG),
9+
which provides a full debug interface without the need for additional
10+
hardware.
11+
12+
Hardware
13+
********
14+
15+
- ATSAME54P20A ARM Cortex-M4F processor at 120 MHz
16+
- 32.768 kHz crystal oscillator
17+
- 12 MHz crystal oscillator
18+
- 1024 KiB flash memory and 256 KiB of RAM
19+
- One yellow user LED
20+
- One mechanical user push button
21+
- One reset button
22+
- On-board USB based EDBG unit with serial console
23+
- One QTouch® PTC button
24+
- 32 MiB QSPI Flash
25+
- ATECC508 CryptoAuthentication™ device
26+
- AT24MAC402 serial EEPROM with EUI-48™ MAC address
27+
- Ethernet
28+
29+
- RJ45 connector with built-in magnetics
30+
- KSZ8091RNA PHY
31+
- 10Base-T/100Base-TX IEE 802.3 compliant Ethernet transceiver
32+
33+
- USB interface, host, and device
34+
- SD/SDIO card connector
35+
36+
Supported Features
37+
==================
38+
39+
.. zephyr:board-supported-hw::
40+
41+
Connections and IOs
42+
===================
43+
44+
The `SAM E54 Xplained Pro User Guide`_ has detailed information about board connections.
45+
46+
Programming and Debugging
47+
*************************
48+
49+
The SAM E54 Xplained Pro features an on-board Microchip Embedded Debugger (EDBG),
50+
which provides both a standard debug interface and a virtual serial port used as the Zephyr console.
51+
SERCOM2 of the ATSAME54P20A MCU is configured as a USART for console output.
52+
53+
#. Connect the board to your host machine using the debug USB port.
54+
55+
#. Open a terminal and start a serial console on the corresponding port.
56+
On Linux, this is typically ``/dev/ttyACM0``. For example:
57+
58+
.. code-block:: console
59+
60+
$ minicom -D /dev/ttyACM0 -o
61+
62+
The -o option tells minicom not to send the modem initialization
63+
string. Connection should be configured as follows:
64+
65+
- Speed: 115200
66+
- Data: 8 bits
67+
- Parity: None
68+
- Stop bits: 1
69+
70+
#. Build and flash the Zephyr ``hello_world`` sample application:
71+
72+
.. zephyr-app-commands::
73+
:zephyr-app: samples/hello_world
74+
:board: sam_e54_xpro
75+
:goals: flash
76+
:compact:
77+
78+
#. Observe output on the terminal. If everything is set up correctly, you should see:
79+
80+
.. code-block:: console
81+
82+
Hello World! same_54_xpro
83+
84+
References
85+
**********
86+
87+
SAM E54 Product Page:
88+
https://www.microchip.com/en-us/product/ATSAME54P20A
89+
90+
SAM E54 Xplained Pro evaluation kit Page:
91+
https://www.microchip.com/en-us/development-tool/ATSAME54-XPRO
92+
93+
.. _SAM E54 Xplained Pro User Guide:
94+
https://ww1.microchip.com/downloads/aemDocuments/documents/OTH/ProductDocuments/UserGuides/70005321A.pdf
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
/*
2+
* Copyright (c) 2025 Microchip Technology Inc.
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
#include <dt-bindings/sam/sam_d5x_e5x/atsame54/atsame54p20a-pinctrl.h>
8+
9+
&pinctrl {
10+
sercom2_uart_default: sercom2_uart_default {
11+
group1 {
12+
pinmux = <PB25D_SERCOM2_PAD0>,
13+
<PB24D_SERCOM2_PAD1>;
14+
};
15+
};
16+
};
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
/*
2+
* Copyright (c) 2025 Microchip Technology Inc.
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
/dts-v1/;
8+
#include <microchip/sam/sam_d5x_e5x/atsame54/atsame54p20a.dtsi>
9+
#include "sam_e54_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", "microchip,atsame54p20a", "microchip,same54";
15+
16+
chosen {
17+
zephyr,console = &sercom2;
18+
zephyr,shell-uart = &sercom2;
19+
zephyr,sram = &sram0;
20+
zephyr,flash = &flash0;
21+
};
22+
};
23+
24+
&flash0 {
25+
partitions {
26+
compatible = "fixed-partitions";
27+
#address-cells = <1>;
28+
#size-cells = <1>;
29+
30+
/*
31+
* The final 16 KiB is reserved for the application.
32+
* Storage partition will be used by FCB/LittleFS/NVS
33+
* if enabled.
34+
*/
35+
storage_partition: partition@fc000 {
36+
label = "storage";
37+
reg = <0x000fc000 0x00004000>;
38+
};
39+
};
40+
};
41+
42+
&cpu0 {
43+
clock-frequency = <48000000>;
44+
};
45+
46+
&sercom2 {
47+
status = "okay";
48+
compatible = "microchip,sercom-g1-uart";
49+
#address-cells = <1>;
50+
#size-cells = <0>;
51+
52+
current-speed = <115200>;
53+
data-bits = <8>;
54+
parity = "none";
55+
stop-bits = "1";
56+
57+
rxpo = <1>;
58+
txpo = <0>;
59+
60+
pinctrl-0 = <&sercom2_uart_default>;
61+
pinctrl-names = "default";
62+
};
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Copyright (c) 2025 Microchip Technology Inc.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
identifier: sam_e54_xpro
5+
name: SAM E54 Xplained Pro
6+
type: mcu
7+
arch: arm
8+
toolchain:
9+
- zephyr
10+
flash: 1024
11+
ram: 256
12+
supported:
13+
- pinctrl
14+
- shell
15+
- uart
16+
vendor: microchip
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Copyright (c) 2025 Microchip Technology Inc.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
CONFIG_BUILD_OUTPUT_HEX=y
5+
6+
CONFIG_ARM_MPU=y
7+
CONFIG_HW_STACK_PROTECTION=y
8+
9+
CONFIG_CONSOLE=y
10+
CONFIG_SERIAL=y
11+
CONFIG_UART_CONSOLE=y
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Copyright (c) 2025 Microchip Technology Inc.
2+
# SPDX-License-Identifier: Apache-2.0
3+
source [find interface/cmsis-dap.cfg]
4+
transport select swd
5+
6+
# chip name
7+
set CHIPNAME same54p20a
8+
set ENDIAN little
9+
set CPUTAPID 0x0bc11477
10+
11+
source [find target/atsame5x.cfg]
12+
13+
reset_config none
14+
cortex_m reset_config sysresetreq
15+
16+
$_TARGETNAME configure -event gdb-attach {
17+
echo "Debugger attaching: halting execution"
18+
reset halt
19+
gdb_breakpoint_override hard
20+
}
21+
22+
$_TARGETNAME configure -event gdb-detach {
23+
echo "Debugger detaching: resuming execution"
24+
resume
25+
}

0 commit comments

Comments
 (0)