Skip to content

Commit f876d38

Browse files
committed
boards: arm: Add initial support for EKRA8M1
Add support for the EK RA8M1 board This board is using Renesas RA8M1 MCU. Signed-off-by: Duy Nguyen <[email protected]> Signed-off-by: The Nguyen <[email protected]>
1 parent 53ec07e commit f876d38

File tree

13 files changed

+318
-0
lines changed

13 files changed

+318
-0
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Copyright (c) 2024 Renesas Electronics Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config BOARD_EK_RA8M1
5+
select SOC_R7FA8M1AHECBD
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Copyright (c) 2024 Renesas Electronics Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
board_runner_args(jlink "--device=R7FA8M1AH")
5+
6+
include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)

boards/renesas/ek_ra8m1/board.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
board:
2+
name: ek_ra8m1
3+
vendor: renesas
4+
socs:
5+
- name: r7fa8m1ahecbd
75 KB
Loading
Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
.. _ek_ra8m1:
2+
3+
RA8M1 Evaluation Kit
4+
####################
5+
6+
Overview
7+
********
8+
9+
The EK-RA8M1 is an Evaluation Kit for Renesas RA8M1 MCU Group which is the first
10+
32-bits MCUs based on new Arm Cortex-M85. The kit offer multiple external interface
11+
and peripherals set optimized on board allows user to seamlessly evaluate the features
12+
of the RA8M1 MCU and develop embedded system application in various field.
13+
14+
The key features of the EK-RA8M1 board are categorized in three groups as follow:
15+
16+
**MCU Native Pin Access**
17+
18+
- 480MHz Arm Cortex-M85 based RA8M1 MCU in 224 pins, BGA package
19+
- Native pin acces througgh 2 x 50-pin, and 2 x 40-pin male headers
20+
- MCU current measurement points for precision current consumption measurement
21+
- Multiple clock sources - RA8M1 MCU oscillator and sub-clock oscillator crystals,
22+
providing precision 20.000MHz and 32,768 Hz refeence clocks.
23+
Additional low precision clocks are avaialbe internal to the RA8M1 MCU
24+
25+
**System Control and Ecosystem Access**
26+
27+
- USB Full Speed Host and Device (micro-AB connector)
28+
- Four 5V input sources
29+
30+
- USB (Debug, Full Speed, High Speed)
31+
- External power supply (using surface mount clamp test points and power input vias)
32+
33+
- Three Debug modes
34+
35+
- Debug on-board (SWD)
36+
- Debug in (ETM, SWD and JTAG)
37+
- Debug out (SWD)
38+
39+
- User LEDs and buttons
40+
41+
- Three User LEDs (red, blue, green)
42+
- Power LED (white) indicating availability of regulated power
43+
- Debug LED (yellow) indicating the debug connection
44+
- Two User buttons
45+
- One Reset button
46+
47+
- Five most popular ecosystems expansions
48+
49+
- Two Seeed Grove system (I2C/I3C) connectors
50+
- One SparkFun Qwiic connector
51+
- Two Digilent Pmod (SPI, UART and I2C/I3C) connectors
52+
- Arduino (Uno R3) connector
53+
- MikroElektronika mikroBUS connector
54+
55+
- MCU boot configuration jumper
56+
57+
**Special Feature Access**
58+
59+
- Ethernet (RJ45 RMII interface)
60+
- USB High Speed Host and Device (micro-AB connector)
61+
- 512 Mb (64 MB) External Octo-SPI Flash (present in the MCU Native Pin Access area of the EK-RA8M1 board)
62+
- CAN FD (3-pin header)
63+
64+
.. figure:: ek-ra8m1-board.jpg
65+
:align: center
66+
:alt: RA8M1 Evaluation Kit
67+
68+
EK-RA8M1 Board Functional Area Definitions (Credit: Renesas Electronics Corporation)
69+
70+
Hardware
71+
********
72+
Detail Hardware feature for the RA8M1 MCU group can be found at `RA8M1 Group User's Manual Hardware`_
73+
74+
.. figure:: ra8m1-block-diagram.jpg
75+
:width: 442px
76+
:align: center
77+
:alt: RA8M1 MCU group feature
78+
79+
RA8M1 Block diagram (Credit: Renesas Electronics Corporation)
80+
81+
Detail Hardware feature for the EK-RA8M1 MCU can be found at `EK-RA8M1 - User's Manual`_
82+
83+
Supported Features
84+
==================
85+
86+
The below features are currently supported on Zephyr OS for EK-RA8M1 board:
87+
88+
+-----------+------------+----------------------+
89+
| Interface | Controller | Driver/Component |
90+
+===========+============+======================+
91+
| GPIO | on-chip | gpio |
92+
+-----------+------------+----------------------+
93+
| MPU | on-chip | arch/arm |
94+
+-----------+------------+----------------------+
95+
| NVIC | on-chip | arch/arm |
96+
+-----------+------------+----------------------+
97+
| UART | on-chip | serial |
98+
+-----------+------------+----------------------+
99+
100+
Other hardware features are currently not supported by the port.
101+
102+
Programming and Debugging
103+
*************************
104+
105+
Applications for the ``ek_ra8m1`` board configuration can be
106+
built, flashed, and debugged in the usual way. See
107+
:ref:`build_an_application` and :ref:`application_run` for more details on
108+
building and running.
109+
110+
**Note:** Currently Zephyr SDK v0.16.5 hasn't supported for Cortex Arm-M85 build. To build for EK-RA8M1
111+
user need to get and install GNU Arm Embedded toolchain from https://github.com/zephyrproject-rtos/sdk-ng/pull/742
112+
(File: `zephyr-sdk-0.16.5-6-ge895c4e_linux-x86_64`_)
113+
114+
Flashing
115+
========
116+
117+
Program can be flashed to EK-RA8M1 via the on-board SEGGER J-Link debugger.
118+
SEGGER J-link's drivers are avaialbe at https://www.segger.com/downloads/jlink/
119+
120+
To flash the program to board
121+
122+
1. Connect to J-Link OB via USB port to host PC
123+
124+
2. Make sure J-Link OB jumper is in default configuration as describe in `EK-RA8M1 - User's Manual`_
125+
126+
3. Execute west command
127+
128+
.. code-block:: console
129+
130+
west flash -r jlink
131+
132+
Debugging
133+
=========
134+
135+
You can use Segger Ozone (`Segger Ozone Download`_) for a visual debug interface
136+
137+
Once downloaded and installed, open Segger Ozone and configure the debug project
138+
like so:
139+
140+
* Target Device: R7FA8M1AH
141+
* Target Interface: SWD
142+
* Target Interface Speed: 4 MHz
143+
* Host Interface: USB
144+
* Program File: <path/to/your/build/zephyr.elf>
145+
146+
**Note:** It's verified that we can debug OK on Segger Ozone v3.30d so please use this or later
147+
version of Segger Ozone
148+
149+
References
150+
**********
151+
- `EK-RA8M1 Website`_
152+
- `RA8M1 MCU group Website`_
153+
154+
.. _EK-RA8M1 Website:
155+
https://www.renesas.com/us/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ek-ra8m1-evaluation-kit-ra8m1-mcu-group
156+
157+
.. _RA8M1 MCU group Website:
158+
https://www.renesas.com/us/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ra8m1-480-mhz-arm-cortex-m85-based-microcontroller-helium-and-trustzone
159+
160+
.. _EK-RA8M1 - User's Manual:
161+
https://www.renesas.com/us/en/document/mat/ek-ra8m1-users-manual
162+
163+
.. _RA8M1 Group User's Manual Hardware:
164+
https://www.renesas.com/us/en/document/mah/ra8m1-group-users-manual-hardware
165+
166+
.. _Segger Ozone Download:
167+
https://www.segger.com/downloads/jlink#Ozone
168+
169+
.. _zephyr-sdk-0.16.5-6-ge895c4e_linux-x86_64:
170+
https://github.com/zephyrproject-rtos/sdk-ng/suites/22342313531/artifacts/1379111922
171+
49.9 KB
Loading
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
/*
2+
* Copyright (c) 2024 Renesas Electronics Corporation
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
&pinctrl {
7+
status = "okay";
8+
9+
sci0_default: sci0_default {
10+
group1 {
11+
/* tx */
12+
psels = <RA_PSEL(RA_PSEL_SCI_0, 6, 9)>;
13+
drive-strength = "medium";
14+
};
15+
group2 {
16+
/* rx */
17+
psels = <RA_PSEL(RA_PSEL_SCI_0, 6, 10)>;
18+
};
19+
};
20+
};
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
/*
2+
* Copyright (c) 2024 Renesas Electronics Corporation
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
/dts-v1/;
7+
8+
#include <renesas/ra/ra8/r7fa8m1ahecbd.dtsi>
9+
#include <dt-bindings/gpio/gpio.h>
10+
11+
#include "ek_ra8m1-pinctrl.dtsi"
12+
13+
/ {
14+
model = "Renesas EK-RA8M1";
15+
compatible = "renesas,ra8m1", "renesas,ra8";
16+
17+
chosen {
18+
zephyr,sram = &sram0;
19+
zephyr,flash = &flash0;
20+
};
21+
22+
leds {
23+
compatible = "gpio-leds";
24+
led0: led0 {
25+
gpios = <&gpio6 0 GPIO_ACTIVE_HIGH>;
26+
label = "LED1";
27+
};
28+
led1: led1 {
29+
gpios = <&gpio4 14 GPIO_ACTIVE_HIGH>;
30+
label = "LED2";
31+
};
32+
led2: led2 {
33+
gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
34+
label = "LED3";
35+
};
36+
};
37+
38+
aliases {
39+
led0 = &led0;
40+
};
41+
};
42+
43+
&clock {
44+
sciclk-source = <RA_CLOCK_SOURCE_PLL1P>;
45+
sciclk-div = <RA_SCI_CLOCK_DIV_4>;
46+
};
47+
48+
&gpio1 {
49+
status = "okay";
50+
};
51+
52+
&gpio4 {
53+
status = "okay";
54+
};
55+
56+
&gpio6 {
57+
status = "okay";
58+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
identifier: ek_ra8m1
2+
name: Renesas EK-RA8M1
3+
type: mcu
4+
arch: arm
5+
ram: 1024
6+
flash: 2048
7+
toolchain:
8+
- zephyr
9+
- gnuarmemb
10+
supported:
11+
- gpio
12+
- uart
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Copyright (c) 2024 Renesas Electronics Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=480000000
5+
6+
# Enable GPIO
7+
CONFIG_GPIO=y
8+
CONFIG_PINCTRL=y
9+
10+
# Enable Console
11+
CONFIG_SERIAL=y
12+
CONFIG_UART_CONSOLE=y
13+
CONFIG_UART_INTERRUPT_DRIVEN=y
14+
CONFIG_CONSOLE=y
15+
16+
CONFIG_BUILD_OUTPUT_HEX=y
17+
CONFIG_BUILD_NO_GAP_FILL=y

0 commit comments

Comments
 (0)