Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
45a5f80
drivers: pinctrl: Update pinctrl driver name for Renesas RA series
duynguyenxa Jul 18, 2024
c1d94d6
drivers: gpio: Update gpio driver for Renesas RA series
duynguyenxa Jul 18, 2024
917abe0
drivers: serial: Initial support for SCI UART
duynguyenxa Jul 18, 2024
4633b2f
soc: renesas: Add initial support for RA6M5 SoC
duynguyenxa Jul 18, 2024
beb4191
boards: renesas: Add initial support for EK-RA6M5 board
duynguyenxa Jul 18, 2024
5d22d03
soc: renesas: Add initial support for RA6M3 SoC
duynguyenxa Jul 18, 2024
2dfb265
boards: renesas: Add initial support Renesas EK-RA6M3 board
duynguyenxa Jul 18, 2024
bc29fb4
soc: renesas: Add initial support for RA6E1 SoC
duynguyenxa Jul 18, 2024
d64d5b5
board: renesas: Add initial support for RA6E1 SoC
duynguyenxa Jul 18, 2024
ab9d137
soc: renesas: Add initial support for RA6E2 SOC
duynguyenxa Jul 18, 2024
08170d3
boards: renesas: Add initial support for EK-RA6E2 board
duynguyenxa Jul 18, 2024
1426019
soc: renesas: Add initial support for RA6M1 SOC
duynguyenxa Jul 18, 2024
4a91cc6
boards: renesas: Initial support Renesas EK-RA6M1 board
duynguyenxa Jul 18, 2024
47737c2
soc: renesas: Add initial support for RA6M2 SoC
duynguyenxa Jul 18, 2024
62ff908
boards: renesas: Initial support Renesas EK-RA6M2 board
duynguyenxa Jul 18, 2024
62ab2c1
soc: renesas: Add initial support for RA6M4 SoC
duynguyenxa Jul 18, 2024
240209c
boards: renesas: Initial support Renesas EK-RA6M4 board
duynguyenxa Jul 18, 2024
d62124b
boards: renesas: Add initial support for FPB-RA6E2 board
quytranpzz Jun 10, 2024
3765f7e
dts: bindings: clock: Change clock control binding for Renesas RA
quytranpzz Jun 20, 2024
4682a8e
MAINTAINERS: Update Renesas RA platform files for RA6 boards
quytranpzz Aug 7, 2024
50146d2
soc: renesas: ra: Sort MCU in soc.yml
thaoluonguw Aug 14, 2024
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
2 changes: 1 addition & 1 deletion MAINTAINERS.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3766,7 +3766,7 @@ Renesas RA Platforms:
- thaoluonguw
files:
- boards/arduino/uno_r4/
- boards/renesas/*ra8*/
- boards/renesas/*ra*/
- drivers/*/*renesas_ra*
- drivers/pinctrl/renesas/ra/
- dts/arm/renesas/ra/
Expand Down
5 changes: 5 additions & 0 deletions boards/renesas/ek_ra6e2/Kconfig.ek_ra6e2
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_RA6E2
select SOC_R7FA6E2BB3CFM
6 changes: 6 additions & 0 deletions boards/renesas/ek_ra6e2/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=R7FA6E2BB")

include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)
5 changes: 5 additions & 0 deletions boards/renesas/ek_ra6e2/board.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
board:
name: ek_ra6e2
vendor: renesas
socs:
- name: r7fa6e2bb3cfm
Binary file added boards/renesas/ek_ra6e2/doc/ek-ra6e2-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_ra6e2/doc/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
.. _ek_ra6e2:

RA6E2 Evaluation Kit
####################

Overview
********

The EK-RA6E2, an Evaluation Kit for RA6E2 MCU Group, enables users to
seamlessly evaluate the features of the RA6E2 MCU group and develop
embedded systems applications using Flexible Software Package (FSP)
and e2 studio IDE. The users can use rich on-board features along with
their choice of popular ecosystems add-ons to bring their big ideas to life

The key features of the EK-RA6E2 board are categorized in three groups as follow:

**MCU Native Pin Access**

- 200MHz Arm Cortex-M33 based RA6E2 MCU in 64 pins, LQFP package
- 256 kB Code Flash, 40 kB SRAM
- 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 - RA6E2 MCU oscillator and sub-clock oscillator crystals,
providing precision 20.000 MHz and 32,768 Hz reference clock.
Additional low precision clocks are avaialbe internal to the RA6E2 MCU

**System Control and Ecosystem Access**

- USB Full Speed Host and Device (micro-AB connector)
- Three 5V 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

- Two Seeed Grove system (I3C/Analog) connectors
- One SparkFun Qwiic connector
- Two Digilent Pmod (SPI and UART) connectors
- Arduino (Uno R3) connector
- MikroElektronika mikroBUS connector

- MCU boot configuration jumper

**Special Feature Access**

- 16 Mb (128 Mb) External Quad-SPI Flash
- CAN (3-pin header)

.. figure:: ek-ra6e2-board.webp
:align: center
:alt: RA6E2 Evaluation Kit

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

Hardware
********
Detailed hardware feature for the RA6E2 MCU group can be found at `RA6E2 Group User's Manual Hardware`_

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

RA6E2 Block diagram (Credit: Renesas Electronics Corporation)

Detailed hardware feature for the EK-RA6E2 MCU can be found at `EK-RA6E2 - User's Manual`_

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

The below features are currently supported on Zephyr OS for EK-RA6E2 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_ra6e2`` 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-RA6E2 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-RA6E2 - 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: R7FA6E2BB
* 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-RA6E2 Website`_
- `RA6E2 MCU group Website`_

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

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

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

.. _RA6E2 Group User's Manual Hardware:
https://www.renesas.com/us/en/document/mah/ra6e2-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_ra6e2/ek_ra6e2-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)>;
};
};
};
101 changes: 101 additions & 0 deletions boards/renesas/ek_ra6e2/ek_ra6e2.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
/*
* Copyright (c) 2024 Renesas Electronics Corporation
* SPDX-License-Identifier: Apache-2.0
*/

/dts-v1/;

#include <renesas/ra/ra6/r7fa6e2bb3cfm.dtsi>
#include <dt-bindings/gpio/gpio.h>

#include "ek_ra6e2-pinctrl.dtsi"

/ {
model = "Renesas EK-RA6E2";
compatible = "renesas,ra6e2", "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 = <&ioport4 0 GPIO_ACTIVE_HIGH>;
label = "LED2";
};
led3: led3 {
gpios = <&ioport1 13 GPIO_ACTIVE_HIGH>;
label = "LED3";
};
};

aliases {
led0 = &led1;
};
};

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

&ioport1 {
status = "okay";
};

&ioport2 {
status = "okay";
};

&ioport4 {
status = "okay";
};

&flash0 {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;

boot_partition: partition@0 {
label = "application";
reg = <0x00000000 DT_SIZE_K(128)>;
};

storage_partition: partition@20000 {
label = "storage";
reg = <0x20000 DT_SIZE_K(128)>;
};
};
};

&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";
};
11 changes: 11 additions & 0 deletions boards/renesas/ek_ra6e2/ek_ra6e2.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
identifier: ek_ra6e2
name: Renesas EK-RA6E2
type: mcu
arch: arm
ram: 40
flash: 256
toolchain:
- zephyr
- gnuarmemb
supported:
- gpio
18 changes: 18 additions & 0 deletions boards/renesas/ek_ra6e2/ek_ra6e2_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=200000000

# 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_ra6m1/Kconfig.ek_ra6m1
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_RA6M1
select SOC_R7FA6M1AD3CFP
6 changes: 6 additions & 0 deletions boards/renesas/ek_ra6m1/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=R7FA6M1AD")

include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)
5 changes: 5 additions & 0 deletions boards/renesas/ek_ra6m1/board.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
board:
name: ek_ra6m1
vendor: renesas
socs:
- name: r7fa6m1ad3cfp
Binary file added boards/renesas/ek_ra6m1/doc/ek-ra6m1-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