Skip to content

Commit bdcd70b

Browse files
thenguyenyfcfriedt
authored andcommitted
boards: renesas: add support for rssk_ra2l1 boards
First commit to initial support for RSSK-RA2L1 Signed-off-by: The Nguyen <[email protected]>
1 parent 4664f60 commit bdcd70b

File tree

10 files changed

+303
-0
lines changed

10 files changed

+303
-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 Renesas Electronics Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config BOARD_RSSK_RA2L1
5+
select SOC_R7FA2L1ABXXFP

boards/renesas/rssk_ra2l1/board.cmake

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Copyright (c) 2025 Renesas Electronics Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
board_runner_args(jlink "--device=r7fa2l1ab")
5+
board_runner_args(pyocd "--target=r7fa2l1ab")
6+
7+
include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)
8+
include(${ZEPHYR_BASE}/boards/common/pyocd.board.cmake)

boards/renesas/rssk_ra2l1/board.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
board:
2+
name: rssk_ra2l1
3+
full_name: Capacitive Touch Evaluation System for RA2L1
4+
vendor: renesas
5+
socs:
6+
- name: r7fa2l1abxxfp
Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
.. zephyr:board:: rssk_ra2l1
2+
3+
Overview
4+
********
5+
6+
The RA2L1 MCU Group Capacitive Touch Evaluation System (RTK0EG0022S01001BJ) is a
7+
kit created for evaluating the RA2L1 MCU Group Capacitive Touch Sensing Unit (CTSU).
8+
9+
RTK0EG0022S01001BJ is composed of two boards: The RA2L1 Cap Touch CPU Board is mounted with an
10+
RA2L1 MCU which includes an on-chip CTSU. The Capacitive Touch Application Board Capacitive Touch
11+
Application Board is equipped with self-capacitance touch buttons, wheel and slider electrodes, and LEDs
12+
touch electrodes.
13+
14+
Renesas RA2L1 Microcontroller Group has following features
15+
16+
- 48MHz, Arm Cortex-M23 core
17+
- 256kB or 128kB Code Flash, 8kB Data Flash, 32kB SRAM (divided on 2 equal areas
18+
with- and without- ECC support)
19+
- SCI x 5
20+
- SPI x 2
21+
- I2C x 2
22+
- CAN x 1
23+
- 12-bit A/D Converter
24+
- 12-bit D/A Converter
25+
- Low-Power Analog Comparator x 2
26+
- Temperature Sensor
27+
- General PWM Timer 32-bit x 4
28+
- General PWM Timer 16-bit x 6
29+
- Low Power Asynchronous General-Purpose Timer x 2
30+
- Watchdog Timer (WDT)
31+
- Independent Watchdog Timer (IWDT)
32+
- Up to 85 Input/Output pins (depends on the package type)
33+
34+
Hardware
35+
********
36+
37+
The main functions of the RA2L1 Cap Touch CPU board are as follows:
38+
39+
- Renesas RA2L1 MCU Group
40+
41+
- R7FA2L1AB2DFP
42+
- 100-pin LFQFP package
43+
- 48MHz Arm Cortex®-M23 Core with built-in Arm® MPU (Armv8-M architecture)
44+
- 32KB SRAM
45+
- 256KB code flash memory
46+
- 8KB data flash memory
47+
- 32-channel capacitive touch sensing unit (CTSU) pins
48+
49+
- Connectivity
50+
51+
- USB serial conversion interface (FT234XD manufactured by FTDI)
52+
- 10-pin JTAG/SWD interface for connecting external debugger or programmer (option)
53+
- Application board GPIO interface: 2.54mm pitch, 16 pins (8 x 2 DIL)
54+
- Application board CTSU interface: 2.54mm pitch, 40 pins (20 x 2 DIL)
55+
56+
- Other functions
57+
58+
- MCU current measurement jumper
59+
- User push button switches: 2
60+
- User LEDs: 2
61+
62+
.. figure:: rtk0eg0018c01001bj.webp
63+
:width: 300
64+
:align: center
65+
66+
RA2L1 Cap Touch CPU Board (Credit: Renesas Electronics Corporation)
67+
68+
Key functions of the Capacitive Touch Application Board are as follows:
69+
70+
- Self-capacitance detection touch electrodes
71+
72+
- Buttons: 3
73+
- Wheel (4-electrode configuration): 1
74+
- Slider (5-electrode configuration): 1
75+
76+
- LEDs: 16
77+
78+
Supported Features
79+
==================
80+
81+
.. zephyr:board-supported-hw::
82+
83+
Programming and debugging
84+
*************************
85+
86+
Building & Flashing
87+
===================
88+
89+
You can build and flash an application with an external J-Link debug adapter connect to
90+
J1 connector.
91+
:ref:`build_an_application` and
92+
:ref:`application_run` for more details.
93+
94+
Here is an example for building and flashing the :zephyr:code-sample:`blinky` application.
95+
96+
.. zephyr-app-commands::
97+
:zephyr-app: samples/basic/blinky
98+
:board: rssk_ra2l1
99+
:goals: build flash
100+
101+
102+
Debugging
103+
=========
104+
105+
Debugging also can be done with an external J-Link debug adapter connected to
106+
J1 connector.
107+
For the debug log output through UART console, you need to connect a USB cable
108+
from the host PC to the USB Serial Conversion on CN5.
109+
The following command is debugging the :zephyr:code-sample:`blinky` application.
110+
Also, see the instructions specific to the debug server that you use.
111+
112+
.. zephyr-app-commands::
113+
:zephyr-app: samples/basic/blinky
114+
:board: rssk_ra2l1
115+
:maybe-skip-config:
116+
:goals: debug
117+
118+
Or you can use Segger Ozone (`Segger Ozone Download`_) for a visual debug interface
119+
120+
Once downloaded and installed, open Segger Ozone and configure the debug project
121+
like so:
122+
123+
* Target Device: R7FA2L1AB
124+
* Target Interface: SWD
125+
* Target Interface Speed: 4 MHz
126+
* Host Interface: USB
127+
* Program File: <path/to/your/build/zephyr.elf>
128+
129+
130+
References
131+
**********
132+
- `RSSK-RA2L1 Web site`_
133+
- `RA2L1 MCU Group Website`_
134+
135+
.. _RSSK-RA2L1 Web site:
136+
https://www.renesas.com/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/rtk0eg0022s01001bj-capacitive-touch-evaluation-system-ra2l1
137+
138+
.. _RA2L1 MCU Group Website:
139+
https://www.renesas.com/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ra2l1-48mhz-arm-cortex-m23-ultra-low-power-general-purpose-microcontroller
140+
141+
.. _Segger Ozone Download:
142+
https://www.segger.com/downloads/jlink#Ozone
30.5 KB
Binary file not shown.
Binary file not shown.
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
/*
2+
* Copyright (c) 2025 Renesas Electronics Corporation
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
&pinctrl {
8+
sci9_default: sci9_default {
9+
group1 {
10+
/* TXD RXD */
11+
psels = <RA_PSEL(RA_PSEL_SCI_9, 2, 3)>,
12+
<RA_PSEL(RA_PSEL_SCI_9, 2, 2)>;
13+
};
14+
};
15+
};
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
/*
2+
* Copyright (c) 2025 Renesas Electronics Corporation
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
/dts-v1/;
8+
9+
#include <renesas/ra/ra2/ra2l1.dtsi>
10+
#include <renesas/ra/ra2/r7fa2l1xb.dtsi>
11+
#include <renesas/ra/ra2/r7fa2l1xxxxfp.dtsi>
12+
13+
#include <zephyr/dt-bindings/gpio/gpio.h>
14+
#include <zephyr/dt-bindings/input/input-event-codes.h>
15+
#include "rssk_ra2l1-pinctrl.dtsi"
16+
17+
/ {
18+
model = "Renesas RSSK-RA2L1";
19+
compatible = "renesas,r7fa2l1abxxfp", "renesas,ra2l1";
20+
21+
chosen {
22+
zephyr,sram = &sram0;
23+
zephyr,flash = &flash0;
24+
zephyr,console = &uart9;
25+
zephyr,shell-uart = &uart9;
26+
};
27+
28+
leds {
29+
compatible = "gpio-leds";
30+
31+
led2: led2 {
32+
gpios = <&ioport3 5 GPIO_ACTIVE_HIGH>;
33+
label = "LED2";
34+
};
35+
36+
led3: led3 {
37+
gpios = <&ioport3 4 GPIO_ACTIVE_HIGH>;
38+
label = "LED3";
39+
};
40+
};
41+
42+
buttons {
43+
compatible = "gpio-keys";
44+
45+
button0: s2 {
46+
gpios = <&ioport2 6 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
47+
label = "Push button switch 2";
48+
zephyr,code = <INPUT_KEY_0>;
49+
};
50+
51+
button1: s3 {
52+
gpios = <&ioport2 5 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
53+
label = "Push button switch 3";
54+
zephyr,code = <INPUT_KEY_1>;
55+
};
56+
};
57+
58+
aliases {
59+
led0 = &led2;
60+
led1 = &led3;
61+
sw0 = &button0;
62+
sw1 = &button1;
63+
watchdog0 = &wdt;
64+
};
65+
};
66+
67+
&ioport2 {
68+
status = "okay";
69+
};
70+
71+
&ioport3 {
72+
status = "okay";
73+
};
74+
75+
&port_irq0 {
76+
interrupts = <8 3>;
77+
status = "okay";
78+
};
79+
80+
&port_irq1 {
81+
interrupts = <9 3>;
82+
status = "okay";
83+
};
84+
85+
&sci9 {
86+
pinctrl-0 = <&sci9_default>;
87+
pinctrl-names = "default";
88+
interrupts = <0 3>, <1 3>, <2 3>, <3 3>;
89+
interrupt-names = "rxi", "txi", "tei", "eri";
90+
status = "okay";
91+
92+
uart9: uart {
93+
current-speed = <115200>;
94+
status = "okay";
95+
};
96+
};
97+
98+
&wdt {
99+
status = "okay";
100+
};
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
identifier: rssk_ra2l1
2+
name: Renesas RSSK-RA2L1
3+
type: mcu
4+
arch: arm
5+
ram: 32
6+
flash: 256
7+
toolchain:
8+
- zephyr
9+
- gnuarmemb
10+
supported:
11+
- watchdog
12+
vendor: renesas
13+
testing:
14+
ignore_tags:
15+
- net
16+
- bluetooth
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Copyright (c) 2025 Renesas Electronics Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
# Enable GPIO
5+
CONFIG_GPIO=y
6+
7+
# Enable Console
8+
CONFIG_SERIAL=y
9+
CONFIG_UART_INTERRUPT_DRIVEN=y
10+
CONFIG_UART_CONSOLE=y
11+
CONFIG_CONSOLE=y

0 commit comments

Comments
 (0)