Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions boards/renesas/ek_ra4e2/Kconfig.ek_ra4e2
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Copyright (c) 2024 Renesas Electronics Corporation
# SPDX-License-Identifier: Apache-2.0

config BOARD_EK_RA4E2
select SOC_R7FA4E2B93CFM
6 changes: 6 additions & 0 deletions boards/renesas/ek_ra4e2/board.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Copyright (c) 2024 Renesas Electronics Corporation
# SPDX-License-Identifier: Apache-2.0

board_runner_args(jlink "--device=R7FA4E2B9")

include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)
5 changes: 5 additions & 0 deletions boards/renesas/ek_ra4e2/board.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
board:
name: ek_ra4e2
vendor: renesas
socs:
- name: r7fa4e2b93cfm
Binary file added boards/renesas/ek_ra4e2/doc/ek-ra4e2-board.webp
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
165 changes: 165 additions & 0 deletions boards/renesas/ek_ra4e2/doc/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
.. _ek_ra4e2:

RA4E2 Evaluation Kit
####################

Overview
********

The RA4E2 Group delivers up to 100 MHz of CPU performance using an Arm® Cortex®-M33 core
with 128 KB of code flash memory, 4 KB of data flash memory, and 40 KB of SRAM. RA4E2 MCUs
offer high-performance and optimized peripheral functions along with the smallest package
options, including space-saving 36-pin BGA and 32-pin QFN packages. The RA4E2
Group offers a wide set of peripherals, including USB Full Speed, CANFD, I3C, and ADC.

The MCU in this series incorporates a high-performance Arm Cortex®-M33 core running up to
100 MHz with the following features:

**MCU Native Pin Access**
- R7FA4E2B93CFM MCU (referred to as RA MCU)
- 100 MHz, Arm® Cortex®-M33 core
- 128 kB Code Flash, 40 kB SRAM
- 64 pins, LQFP package
- Native pin access through 2 x 14-pin and 1 x 40-pin male headers
- MCU current measurement points for precision current consumption measurement
- Multiple clock sources - RA MCU oscillator and sub-clock oscillator crystals, providing precision
20.000 MHz and 32,768 Hz reference clock. Additional low-precision clocks are available internal to the
RA MCU

**System Control and Ecosystem Access**
- USB Full Speed Device (micro-AB connector)
- Three 5 V input sources

- USB (Debug, Full Speed)
- External power supply (using surface mount clamp test points and J31 through holes)

- Three Debug modes

- Debug on-board (SWD)
- Debug in (SWD)
- Debug out (JTAG, SWD)

- User LEDs and buttons

- Three User LEDs (red, blue, green)
- Power LED (white) indicating availability of regulated power
- Debug LED (yellow) indicating the debug connection
- Two User buttons
- One Reset button

- Five most popular ecosystems expansions

- 2 Seeed Grove® system (I3C/Analog) connectors
- SparkFun® Qwiic® connector
- 2 Digilent PmodTM (SPI and UART) connectors
- ArduinoTM (Uno R3) connector
- MikroElektronikaTM mikroBUS connector

- MCU boot configuration jumper

**Special Feature Access**

- CAN FD (3-pin header)

.. figure:: ek-ra4e2-board.webp
:align: center
:alt: RA4E2 Evaluation Kit

EK-RA4E2 Board Functional Area Definitions (Credit: Renesas Electronics Corporation)

Hardware
********
Detail Hardware feature for the RA4E2 MCU group can be found at `RA4E2 Group User's Manual Hardware`_

.. figure:: ra4e2-block-diagram.webp
:width: 442px
:align: center
:alt: RA4E2 MCU group feature

RA4E2 Block diagram (Credit: Renesas Electronics Corporation)

Detail Hardware feature for the EK-RA4E2 MCU can be found at `EK-RA4E2 - User's Manual`_

Supported Features
==================

The below features are currently supported on Zephyr OS for EK-RA4E2 board:

+-----------+------------+----------------------+
| Interface | Controller | Driver/Component |
+===========+============+======================+
| GPIO | on-chip | gpio |
+-----------+------------+----------------------+
| MPU | on-chip | arch/arm |
+-----------+------------+----------------------+
| NVIC | on-chip | arch/arm |
+-----------+------------+----------------------+
| UART | on-chip | serial |
+-----------+------------+----------------------+
| CLOCK | on-chip | clock control |
+-----------+------------+----------------------+

Other hardware features are currently not supported by the port.

Programming and Debugging
*************************

Applications for the ``ek_ra4e2`` board target configuration can be
built, flashed, and debugged in the usual way. See
:ref:`build_an_application` and :ref:`application_run` for more details on
building and running.

Flashing
========

Program can be flashed to EK-RA4E2 via the on-board SEGGER J-Link debugger.
SEGGER J-link's drivers are avaialbe at https://www.segger.com/downloads/jlink/

To flash the program to board

1. Connect to J-Link OB via USB port to host PC

2. Make sure J-Link OB jumper is in default configuration as describe in `EK-RA4E2 - User's Manual`_

3. Execute west command

.. code-block:: console

west flash -r jlink

Debugging
=========

You can use Segger Ozone (`Segger Ozone Download`_) for a visual debug interface

Once downloaded and installed, open Segger Ozone and configure the debug project
like so:

* Target Device: R7FA4E2B9
* Target Interface: SWD
* Target Interface Speed: 4 MHz
* Host Interface: USB
* Program File: <path/to/your/build/zephyr.elf>

**Note:** It's verified that we can debug OK on Segger Ozone v3.30d so please use this or later
version of Segger Ozone

References
**********
- `EK-RA4E2 Website`_
- `RA4E2 MCU group Website`_

.. _EK-RA4E2 Website:
https://www.renesas.com/us/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ek-ra4e2-evaluation-kit-ra4e2-mcu-group

.. _RA4E2 MCU group Website:
https://www.renesas.com/us/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ra4e2-entry-line-100mhz-arm-cortex-m33-general-purpose-microcontroller

.. _EK-RA4E2 - User's Manual:
https://www.renesas.com/us/en/document/mat/ek-ra4e2-v1-users-manual

.. _RA4E2 Group User's Manual Hardware:
https://www.renesas.com/us/en/document/mah/ra4e2-group-users-manual-hardware

.. _Segger Ozone Download:
https://www.segger.com/downloads/jlink#Ozone
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 14 additions & 0 deletions boards/renesas/ek_ra4e2/ek_ra4e2-pinctrl.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/*
* Copyright (c) 2024 Renesas Electronics Corporation
* SPDX-License-Identifier: Apache-2.0
*/

&pinctrl {
sci0_default: sci0_default {
group1 {
/* tx rx */
psels = <RA_PSEL(RA_PSEL_SCI_0, 4, 11)>,
<RA_PSEL(RA_PSEL_SCI_0, 4, 10)>;
};
};
};
78 changes: 78 additions & 0 deletions boards/renesas/ek_ra4e2/ek_ra4e2.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
/*
* Copyright (c) 2024 Renesas Electronics Corporation
* SPDX-License-Identifier: Apache-2.0
*/

/dts-v1/;

#include <renesas/ra/ra4/r7fa4e2b93cfm.dtsi>
#include <dt-bindings/gpio/gpio.h>
#include "ek_ra4e2-pinctrl.dtsi"

/ {
model = "Renesas EK-RA4E2";
compatible = "renesas,ra4e2", "renesas,ra";

chosen {
zephyr,sram = &sram0;
zephyr,flash = &flash0;
zephyr,console = &uart0;
zephyr,shell-uart = &uart0;
};

leds {
compatible = "gpio-leds";
led1: led1 {
gpios = <&ioport2 7 GPIO_ACTIVE_HIGH>;
label = "LED1";
};
led2: led2 {
gpios = <&ioport1 4 GPIO_ACTIVE_HIGH>;
label = "LED2";
};
led3: led3 {
gpios = <&ioport1 12 GPIO_ACTIVE_HIGH>;
label = "LED3";
};
};

aliases {
led0 = &led1;
};
};

&xtal {
clock-frequency = <DT_FREQ_M(20)>;
mosel = <0>;
#clock-cells = <0>;
status = "okay";
};

&subclk {
status = "okay";
};

&pll {
source = <RA_PLL_SOURCE_MAIN_OSC>;
div = <RA_PLL_DIV_1>;
mul = <10 0>;
status = "okay";
};

&sci0 {
pinctrl-0 = <&sci0_default>;
pinctrl-names = "default";
status = "okay";
uart0: uart {
current-speed = <115200>;
status = "okay";
};
};

&ioport1 {
status = "okay";
};

&ioport2 {
status = "okay";
};
12 changes: 12 additions & 0 deletions boards/renesas/ek_ra4e2/ek_ra4e2.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
identifier: ek_ra4e2
name: Renesas EK-RA4E2
type: mcu
arch: arm
ram: 40
flash: 128
toolchain:
- zephyr
- gnuarmemb
supported:
- gpio
- uart
18 changes: 18 additions & 0 deletions boards/renesas/ek_ra4e2/ek_ra4e2_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Copyright (c) 2024 Renesas Electronics Corporation
# SPDX-License-Identifier: Apache-2.0

CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=100000000

# Enable GPIO
CONFIG_GPIO=y
CONFIG_PINCTRL=y

# Enable Console
CONFIG_SERIAL=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_UART_CONSOLE=y
CONFIG_CONSOLE=y

CONFIG_BUILD_OUTPUT_HEX=y
CONFIG_BUILD_NO_GAP_FILL=y
CONFIG_CLOCK_CONTROL=y
5 changes: 5 additions & 0 deletions boards/renesas/ek_ra4m2/Kconfig.ek_ra4m2
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Copyright (c) 2024 Renesas Electronics Corporation
# SPDX-License-Identifier: Apache-2.0

config BOARD_EK_RA4M2
select SOC_R7FA4M2AD3CFP
6 changes: 6 additions & 0 deletions boards/renesas/ek_ra4m2/board.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Copyright (c) 2024 Renesas Electronics Corporation
# SPDX-License-Identifier: Apache-2.0

board_runner_args(jlink "--device=R7FA4M2AD")

include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)
5 changes: 5 additions & 0 deletions boards/renesas/ek_ra4m2/board.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
board:
name: ek_ra4m2
vendor: renesas
socs:
- name: r7fa4m2ad3cfp
Binary file added boards/renesas/ek_ra4m2/doc/ek-ra4m2-board.webp
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading