Skip to content
Open
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
2 changes: 2 additions & 0 deletions bsp/renesas/.clang-format-ignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
/**/ra/
/**/ra_cfg/
/**/ra_gen/
/**/rafw_cfg/
/**/rafw_gen/
/libraries/bsp-template/
/**/RTE/

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,12 @@ extern "C"
#endif
#endif /* SOC_SERIES_R7FA2A1 */

#if defined(SOC_FAMILY_RENESAS_RA_WIRELESS)
#if defined(SOC_SERIES_R7SA6W1)
#include "raw/ra6w1/uart_config.h"
#endif /* SOC_SERIES_R7SA6W1 */
#endif /* SOC_FAMILY_RENESAS_RA_WIRELESS */

#ifdef __cplusplus
}
#endif
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
/*
* Copyright (c) 2006-2025, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2026-07-29 rcitach first version
*/

#ifndef __RAW61_UART_CONFIG_H__
#define __RAW61_UART_CONFIG_H__

#include <rtthread.h>
#include "hal_data.h"

#ifdef __cplusplus
extern "C" {
#endif

#if defined(BSP_USING_UART0)
#ifndef UART0_CONFIG
#define UART0_CONFIG \
{ \
.name = "uart0", \
.p_api_ctrl = &g_uart1_ctrl, \
.p_cfg = &g_uart1_cfg, \
}
#endif /* UART0_CONFIG */
#endif /* BSP_USING_UART0 */

#if defined(BSP_USING_UART1)
#ifndef UART1_CONFIG
#define UART1_CONFIG \
{ \
.name = "uart1", \
.p_api_ctrl = &g_uart2_ctrl, \
.p_cfg = &g_uart2_cfg, \
}
#endif /* UART1_CONFIG */
#endif /* BSP_USING_UART1 */

#ifdef BSP_USING_UART2
#ifndef UART2_CONFIG
#define UART2_CONFIG \
{ \
.name = "uart2", \
.p_api_ctrl = &g_uart3_ctrl, \
.p_cfg = &g_uart3_cfg, \
}
#endif /* UART2_CONFIG */
#endif /* BSP_USING_UART2 */

#ifdef __cplusplus
}
#endif

#endif /* __RAW61_UART_CONFIG_H__ */
28 changes: 24 additions & 4 deletions bsp/renesas/libraries/HAL_Drivers/drivers/drv_usart_v2.c
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,16 @@ static rt_err_t ra_uart_configure(struct rt_serial_device *serial, struct serial

#if defined(SOC_SERIES_R7FA8M85) || defined(SOC_SERIES_R7KA8P1)
err = R_SCI_B_UART_Open(uart->config->p_api_ctrl, uart->config->p_cfg);
#elif defined(SOC_SERIES_R7SA6W1)
uart_w_extended_cfg_t *p_extend = (uart_w_extended_cfg_t *)uart->config->p_cfg->p_extend;
RT_ASSERT(p_extend != RT_NULL);
RT_ASSERT(p_extend->p_baud_setting != RT_NULL);

err = R_UART_W_BaudCalculate(cfg->baud_rate, p_extend->p_baud_setting);
if (FSP_SUCCESS == err)
{
err = R_UART_W_Open(uart->config->p_api_ctrl, uart->config->p_cfg);
}
#else
err = R_SCI_UART_Open(uart->config->p_api_ctrl, uart->config->p_cfg);
#endif
Expand All @@ -237,18 +247,28 @@ static int ra_uart_putc(struct rt_serial_device *serial, char c)
uart = rt_container_of(serial, struct ra_uart, serial);
RT_ASSERT(uart != RT_NULL);

#if defined(SOC_SERIES_R7FA8M85) || defined(SOC_SERIES_R7KA8P1)
#if defined(SOC_SERIES_R7SA6W1)
uart_w_instance_ctrl_t *p_ctrl = (uart_w_instance_ctrl_t *)uart->config->p_api_ctrl;

p_ctrl->p_reg->UART_DR_REG = c;

while (p_ctrl->p_reg->UART_FR_REG_b.BUSY);
#elif defined(SOC_SERIES_R7FA8M85) || defined(SOC_SERIES_R7KA8P1)
sci_b_uart_instance_ctrl_t *p_ctrl = (sci_b_uart_instance_ctrl_t *)uart->config->p_api_ctrl;

p_ctrl->p_reg->TDR = c;

while ((p_ctrl->p_reg->CSR_b.TEND) == 0);
#else
sci_uart_instance_ctrl_t *p_ctrl = (sci_uart_instance_ctrl_t *)uart->config->p_api_ctrl;
#endif

p_ctrl->p_reg->TDR = c;

#if defined(SOC_SERIES_R7FA8M85) || defined(SOC_SERIES_R9A07G0) || defined(SOC_SERIES_R7KA8P1)
#if defined(SOC_SERIES_R9A07G0)
while ((p_ctrl->p_reg->CSR_b.TEND) == 0);
#else
#else
while ((p_ctrl->p_reg->SSR_b.TEND) == 0);
#endif
#endif

return RT_EOK;
Expand Down
10 changes: 10 additions & 0 deletions bsp/renesas/libraries/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@ config SOC_FAMILY_RENESAS_RA
bool
default n

config SOC_FAMILY_RENESAS_RA_WIRELESS
bool
default n

config SOC_FAMILY_RENESAS_RZ
bool
default n
Expand Down Expand Up @@ -91,6 +95,12 @@ config SOC_SERIES_R7FA6E2
select SOC_FAMILY_RENESAS_RA
default n

config SOC_SERIES_R7SA6W1
bool
select ARCH_ARM_CORTEX_M33
select SOC_FAMILY_RENESAS_RA_WIRELESS
default n

config SOC_SERIES_R7FA2A1
bool
select ARCH_ARM_CORTEX_M23
Expand Down
Loading
Loading