diff --git a/drivers/i2s/i2s_renesas_ra_ssie.c b/drivers/i2s/i2s_renesas_ra_ssie.c index 47f6134f889c5..da815a30f0101 100644 --- a/drivers/i2s/i2s_renesas_ra_ssie.c +++ b/drivers/i2s/i2s_renesas_ra_ssie.c @@ -92,13 +92,12 @@ __maybe_unused static void ssi_rt_isr(void *p_args) { const struct device *dev = (struct device *)p_args; struct renesas_ra_ssie_data *dev_data = (struct renesas_ra_ssie_data *)dev->data; - R_SSI0_Type *p_ssi_reg = dev_data->fsp_ctrl.p_reg; - if (p_ssi_reg->SSIFSR_b.TDE && dev_data->active_dir == I2S_DIR_TX) { + if (dev_data->active_dir == I2S_DIR_TX) { ssi_txi_isr(); } - if (p_ssi_reg->SSIFSR_b.RDF && dev_data->active_dir == I2S_DIR_RX) { + if (dev_data->active_dir == I2S_DIR_RX) { ssi_rxi_isr(); } } diff --git a/drivers/spi/spi_b_renesas_ra8.c b/drivers/spi/spi_b_renesas_ra8.c index 38769e1b9def5..65b8d6d424b9e 100644 --- a/drivers/spi/spi_b_renesas_ra8.c +++ b/drivers/spi/spi_b_renesas_ra8.c @@ -161,15 +161,7 @@ static int ra_spi_b_configure(const struct device *dev, const struct spi_config static bool ra_spi_b_transfer_ongoing(struct ra_spi_data *data) { -#if defined(CONFIG_SPI_B_INTERRUPT) return (spi_context_tx_on(&data->ctx) || spi_context_rx_on(&data->ctx)); -#else - if (spi_context_total_tx_len(&data->ctx) < spi_context_total_rx_len(&data->ctx)) { - return (spi_context_tx_on(&data->ctx) || spi_context_rx_on(&data->ctx)); - } else { - return (spi_context_tx_on(&data->ctx) && spi_context_rx_on(&data->ctx)); - } -#endif } #ifndef CONFIG_SPI_B_INTERRUPT @@ -241,26 +233,28 @@ static int ra_spi_b_transceive_master(struct ra_spi_data *data) while (!p_spi_reg->SPSR_b.SPTEF) { } - p_spi_reg->SPDR = tx; /* Clear Transmit Empty flag */ p_spi_reg->SPSRC = R_SPI_B0_SPSRC_SPTEFC_Msk; spi_context_update_tx(&data->ctx, data->dfs, 1); - /* Rx receive */ - if (spi_context_rx_on(&data->ctx)) { + if (p_spi_reg->SPCR_b.TXMD == 0x0) { while (!p_spi_reg->SPSR_b.SPRF) { } rx = p_spi_reg->SPDR; /* Clear Receive Full flag */ p_spi_reg->SPSRC = R_SPI_B0_SPSRC_SPRFC_Msk; - if (data->dfs > 2) { - UNALIGNED_PUT(rx, (uint32_t *)data->ctx.rx_buf); - } else if (data->dfs > 1) { - UNALIGNED_PUT(rx, (uint16_t *)data->ctx.rx_buf); - } else { - UNALIGNED_PUT(rx, (uint8_t *)data->ctx.rx_buf); + + /* Rx receive */ + if (spi_context_rx_buf_on(&data->ctx)) { + if (data->dfs > 2) { + UNALIGNED_PUT(rx, (uint32_t *)data->ctx.rx_buf); + } else if (data->dfs > 1) { + UNALIGNED_PUT(rx, (uint16_t *)data->ctx.rx_buf); + } else { + UNALIGNED_PUT(rx, (uint8_t *)data->ctx.rx_buf); + } } spi_context_update_rx(&data->ctx, data->dfs, 1); } @@ -349,9 +343,6 @@ static int transceive(const struct device *dev, const struct spi_config *config, #else p_spi_reg->SPCR_b.TXMD = 0x0; /* tx - rx*/ - if (!spi_context_tx_on(&data->ctx)) { - p_spi_reg->SPCR_b.TXMD = 0x2; /* rx only */ - } if (!spi_context_rx_on(&data->ctx)) { p_spi_reg->SPCR_b.TXMD = 0x1; /* tx only */ } diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra2a1.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra2a1.overlay new file mode 100644 index 0000000000000..7f8e2af982c91 --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra2a1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm0; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra4c1.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra4c1.overlay new file mode 100644 index 0000000000000..7ee056c83530c --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra4c1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm4; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra4e2.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra4e2.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra4e2.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra4l1.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra4l1.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra4l1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra4m1.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra4m1.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra4m1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra4m2.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra4m2.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra4m2.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra4m3.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra4m3.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra4m3.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra4w1.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra4w1.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra4w1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra6e2.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra6e2.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra6e2.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra6m1.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra6m1.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra6m1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra6m2.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra6m2.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra6m2.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra6m3.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra6m3.overlay new file mode 100644 index 0000000000000..7f8e2af982c91 --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra6m3.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm0; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra6m4.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra6m4.overlay new file mode 100644 index 0000000000000..7f8e2af982c91 --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra6m4.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm0; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra6m5.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra6m5.overlay new file mode 100644 index 0000000000000..7f8e2af982c91 --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra6m5.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm0; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra8d1.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra8d1.overlay new file mode 100644 index 0000000000000..ee6ce43933d15 --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra8d1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm7; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra8m1.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra8m1.overlay new file mode 100644 index 0000000000000..ee6ce43933d15 --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra8m1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm7; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra8p1_r7ka8p1kflcac_cm33.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra8p1_r7ka8p1kflcac_cm33.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra8p1_r7ka8p1kflcac_cm33.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/ek_ra8p1_r7ka8p1kflcac_cm85.overlay b/tests/drivers/pwm/pwm_api/boards/ek_ra8p1_r7ka8p1kflcac_cm85.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/ek_ra8p1_r7ka8p1kflcac_cm85.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/fpb_ra4e1.overlay b/tests/drivers/pwm/pwm_api/boards/fpb_ra4e1.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/fpb_ra4e1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/fpb_ra6e1.overlay b/tests/drivers/pwm/pwm_api/boards/fpb_ra6e1.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/fpb_ra6e1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/fpb_ra6e2.overlay b/tests/drivers/pwm/pwm_api/boards/fpb_ra6e2.overlay new file mode 100644 index 0000000000000..b2ca630683afd --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/fpb_ra6e2.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm1; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/mck_ra8t1.overlay b/tests/drivers/pwm/pwm_api/boards/mck_ra8t1.overlay new file mode 100644 index 0000000000000..e3ea20b6d0cdf --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/mck_ra8t1.overlay @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + pwm-test = &pwm2; + }; +}; diff --git a/tests/drivers/pwm/pwm_api/boards/mck_ra8t2_r7ka8t2lfecac_cm85.overlay b/tests/drivers/pwm/pwm_api/boards/mck_ra8t2_r7ka8t2lfecac_cm85.overlay index c5f348c4e2e17..b20e14e34a0d0 100644 --- a/tests/drivers/pwm/pwm_api/boards/mck_ra8t2_r7ka8t2lfecac_cm85.overlay +++ b/tests/drivers/pwm/pwm_api/boards/mck_ra8t2_r7ka8t2lfecac_cm85.overlay @@ -7,6 +7,12 @@ #include #include +/ { + aliases { + pwm-test = &pwm8; + }; +}; + &pinctrl { pwm8_default: pwm8_default { group1 { diff --git a/west.yml b/west.yml index 01fd229604db5..08fabcd1bfa1c 100644 --- a/west.yml +++ b/west.yml @@ -226,7 +226,7 @@ manifest: - hal - name: hal_renesas path: modules/hal/renesas - revision: 5ab2c84af5cbdbc2b1f0a41e08b8f311bd4eafa8 + revision: f12f062b988915e8698c206ca26d7de459cf6b89 groups: - hal - name: hal_rpi_pico