boards: renesas: Add minimal support for board RSK+ for RZ/N2L

Add minimal support for board RSK+ for RZ/N2L

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
This commit is contained in:
Nhut Nguyen 2025-02-11 23:13:30 +07:00 committed by Benjamin Cabé
commit 954e80a832
9 changed files with 264 additions and 0 deletions

View file

@ -0,0 +1,5 @@
# Copyright (c) 2025 Renesas Electronics Corporation
# SPDX-License-Identifier: Apache-2.0
config BOARD_RZN2L_RSK
select SOC_R9A07G084M04GBG

View file

@ -0,0 +1,5 @@
# Copyright (c) 2025 Renesas Electronics Corporation
# SPDX-License-Identifier: Apache-2.0
board_runner_args(jlink "--device=R9A07G084M04GBG")
include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)

View file

@ -0,0 +1,6 @@
board:
name: rzn2l_rsk
full_name: Renesas Starter Kit+ for RZ/N2L
vendor: renesas
socs:
- name: r9a07g084m04gbg

View file

@ -0,0 +1,115 @@
.. zephyr:board:: rzn2l_rsk
Overview
********
Renesas Starter Kit+ for RZ/N2L is for evaluation or development using the RZ/N2L MPU.
With the on-board emulator, you can start evaluation by simply connecting the bundled cable with
your PC. This product has rich functional ICs such as Gigabit Ethernet PHY and Octal Flash,
you can fully evaluate functions without an extension board.
* On-board RZ/N2L MPU 225-pin (R9A07G084M04GBG)
* Rich functional ICs such as Gigabit Ethernet PHY and Octal Flash are mounted,
so functions of target MPU can be fully evaluated
* Generic interfaces such as Pmod/Grove/Qwiic/mikroBUS
* Pin headers for external extension enable you to evaluate many use cases
* Emulator circuit is mounted, and program debugging can be started by simply connecting USB cable
to PC (two USB cables are included, one for emulator and the other for power supply)
* On-board memory components:
* SDRAM (256MBit)
* NOR Flash (256MBit)
* Octa Flash (512MBit)
* HyperRAM (64Mbit)
* QSPI Serial Flash (512Mbit)
* I2C EEPROM (32Kbit)
* Communication interfaces include:
* Debug interfaces (J-Link OB, MIPI-10, MIPI-20)
* Ethernet
* CAN
* USB
* RS485
* UART
* I2C
* SPI
Hardware
********
The Renesas RZ/N2L MPU documentation can be found at `RZ/N2L Group Website`_
.. figure:: rzn2l_block_diagram.webp
:width: 500px
:align: center
:alt: RZ/N2L group feature
RZ/N2L block diagram (Credit: Renesas Electronics Corporation)
Detailed hardware features for the board can be found at `RZ/N2L-RSK Website`_
Supported Features
==================
.. zephyr: board-supported-hw::
Connections and IOs
===================
By default, the board is configured for use with:
* UART0 connected to the USB serial port (pins H15, G11),
* UART3 connected to the PMOD Header (J25, pins E14, E15),
* LEDs defined as ``led0``, ``led1``, ``led2`` and ``led3``,
The Zephyr console uses UART0.
Programming and Debugging
*************************
Applications for the ``rzn2l_rsk`` board 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.
To use J-Link OB on RSK+RZN2L,
1. Open the jumper pin (J9) for switching the debug connection.
2. Connect the micro-USB type-B to J-Link OB USB connector (J10), and then the LED4 is lighted.
Console
=======
The UART port is accessed by USB-Serial port (CN16).
Debugging
=========
Here is an example for building and debugging with the :zephyr:code-sample:`hello_world` application.
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: rzn2l_rsk
:goals: build debug
Flashing
=========
Before using ``flash`` command, the board must be set to xSPI boot mode.
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: rzn2l_rsk
:goals: build flash
References
**********
.. target-notes::
.. _RZ/N2L Group Website:
https://www.renesas.com/en/products/microcontrollers-microprocessors/rz-mpus/rzn2l-integrated-tsn-compliant-3-port-gigabit-ethernet-switch-enables-various-industrial-applications
.. _RZ/N2L-RSK Website:
https://www.renesas.com/en/products/microcontrollers-microprocessors/rz-mpus/rzn2l-rsk-renesas-starter-kit-rzn2l

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

View file

@ -0,0 +1,111 @@
/*
* Copyright (c) 2025 Renesas Electronics Corporation
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include <arm/renesas/rz/rzn/r9a07g084.dtsi>
#include "rzn2l_rsk-pinctrl.dtsi"
#include <zephyr/dt-bindings/input/input-event-codes.h>
/ {
model = "Renesas Starter Kit+ for RZ/N2L";
compatible = "renesas,rzn2l-rsk";
chosen {
zephyr,sram = &atcm;
zephyr,flash = &xspi0_cs0;
zephyr,code-partition = &slot0_partition;
zephyr,console = &uart0;
zephyr,shell-uart = &uart0;
};
aliases {
led0 = &led0;
led1 = &led1;
sw0 = &sw1;
};
leds {
compatible = "gpio-leds";
led0: led0 {
gpios = <&gpio18 2 0>;
label = "led0";
};
led1: led1 {
gpios = <&gpio22 3 0>;
label = "led1";
};
led2: led2 {
gpios = <&gpio4 1 0>;
label = "led2";
};
led3: led3 {
gpios = <&gpio17 3 0>;
label = "led3";
};
};
gpio_keys {
compatible = "gpio-keys";
sw1: sw1 {
label = "sw1";
gpios = <&gpio16 3 0>;
zephyr,code = <INPUT_KEY_0>;
};
sw2: sw2 {
label = "sw2";
gpios = <&gpio5 4 0>;
zephyr,code = <INPUT_KEY_1>;
};
};
};
&sci0 {
pinctrl-0 = <&sci0_default>;
pinctrl-names = "default";
status = "okay";
uart0: uart {
current-speed = <115200>;
status = "okay";
};
};
&gpio18 {
status = "okay";
};
&gpio22 {
status = "okay";
};
&gpio4 {
status = "okay";
};
&gpio17 {
status = "okay";
};
&irq7 {
trigger-type = "falling";
pinctrl-0 = <&irq7_default>;
pinctrl-names = "default";
status = "okay";
};
&gpio16 {
irqs = <3 7>;
status = "okay";
};
&gpio5 {
status = "okay";
};

View file

@ -0,0 +1,10 @@
identifier: rzn2l_rsk
name: Renesas Starter Kit+ for RZ/N2L
type: mcu
arch: arm
toolchain:
- zephyr
supported:
- uart
- gpio
vendor: renesas

View file

@ -0,0 +1,12 @@
# Copyright (c) 2025 Renesas Electronics Corporation
# SPDX-License-Identifier: Apache-2.0
CONFIG_XIP=n
# Enable UART driver
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_UART_INTERRUPT_DRIVEN=y
# Enable console
CONFIG_CONSOLE=y