From 30c2af07392ca06f7ae00793ffbb7d622845c5cd Mon Sep 17 00:00:00 2001 From: Quy Tran Date: Fri, 21 Nov 2025 09:12:05 +0000 Subject: [PATCH 1/6] manifest: hal_renesas: Update revision of hal_renesas Update revision of hal_renesas to add ADC support on RX261 Signed-off-by: Quy Tran --- west.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/west.yml b/west.yml index 523d28fc59aa4..d2bd69b0c139b 100644 --- a/west.yml +++ b/west.yml @@ -226,7 +226,7 @@ manifest: - hal - name: hal_renesas path: modules/hal/renesas - revision: a279c14e196cb0904593035888a334dcd2c720bd + revision: pull/172/head groups: - hal - name: hal_rpi_pico From f5cb5bb4e2017da01dc7fcaa311073a79d7ef329 Mon Sep 17 00:00:00 2001 From: Hau Ho Date: Wed, 28 May 2025 13:56:25 +0700 Subject: [PATCH 2/6] dts: renesas: rx: Add dts property node for ADC support on RX261 Add dts property node for ADC support on RX261 Signed-off-by: Hau Ho --- dts/rx/renesas/rx261-common.dtsi | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/dts/rx/renesas/rx261-common.dtsi b/dts/rx/renesas/rx261-common.dtsi index 50562213aec9a..f18e31a2fd3b6 100644 --- a/dts/rx/renesas/rx261-common.dtsi +++ b/dts/rx/renesas/rx261-common.dtsi @@ -511,6 +511,18 @@ }; }; + adc: adc@89000 { + compatible = "renesas,rx-adc"; + interrupts = <102 1>; + interrupt-names = "s12adi0"; + reg = <0x00089000 0x100>; + #io-channel-cells = <1>; + channel-available-mask = <0xffff01ff>; + vref-mv = <3300>; + channel-count = <25>; + status = "disabled"; + }; + ofsm: ofsm@ffffff80 { compatible = "zephyr,memory-region"; reg = <0xFFFFFF80 0x0F>; From 62fd4f4edffff4b2cf22773c9ec3dbbc4a15f9fa Mon Sep 17 00:00:00 2001 From: Hau Ho Date: Tue, 18 Nov 2025 15:01:54 +0700 Subject: [PATCH 3/6] boards: renesas: Add ADC support for EK-RX261 board Add ADC support for EK-RX261 board Signed-off-by: Hau Ho --- boards/renesas/ek_rx261/ek_rx261-pinctrl.dtsi | 8 ++++++++ boards/renesas/ek_rx261/ek_rx261.dts | 7 +++++++ 2 files changed, 15 insertions(+) diff --git a/boards/renesas/ek_rx261/ek_rx261-pinctrl.dtsi b/boards/renesas/ek_rx261/ek_rx261-pinctrl.dtsi index 4b893daead41f..fe4f429b440b6 100644 --- a/boards/renesas/ek_rx261/ek_rx261-pinctrl.dtsi +++ b/boards/renesas/ek_rx261/ek_rx261-pinctrl.dtsi @@ -11,4 +11,12 @@ ; /* RX */ }; }; + + adc_default: adc_default { + group1 { + /* input */ + psels = ; + renesas,analog-enable; + }; + }; }; diff --git a/boards/renesas/ek_rx261/ek_rx261.dts b/boards/renesas/ek_rx261/ek_rx261.dts index 06d7df0b998bd..47282883c8b18 100644 --- a/boards/renesas/ek_rx261/ek_rx261.dts +++ b/boards/renesas/ek_rx261/ek_rx261.dts @@ -9,6 +9,7 @@ #include #include #include "ek_rx261-pinctrl.dtsi" +#include / { model = "Renesas EK-RX261 KIT"; @@ -95,3 +96,9 @@ status = "okay"; }; }; + +&adc { + pinctrl-0 = <&adc_default>; + pinctrl-names = "default"; + status = "okay"; +}; From 146759eec0b25724bc0794b6a1799479c913bfde Mon Sep 17 00:00:00 2001 From: Hau Ho Date: Tue, 18 Nov 2025 15:02:31 +0700 Subject: [PATCH 4/6] boards: renesas: Add ADC support for FPB-RX261 board Add ADC support for FPB-RX261 board Signed-off-by: Hau Ho --- boards/renesas/fpb_rx261/fpb_rx261-pinctrl.dtsi | 8 ++++++++ boards/renesas/fpb_rx261/fpb_rx261.dts | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/boards/renesas/fpb_rx261/fpb_rx261-pinctrl.dtsi b/boards/renesas/fpb_rx261/fpb_rx261-pinctrl.dtsi index e00377a7d4b34..855ab05c35b30 100644 --- a/boards/renesas/fpb_rx261/fpb_rx261-pinctrl.dtsi +++ b/boards/renesas/fpb_rx261/fpb_rx261-pinctrl.dtsi @@ -11,4 +11,12 @@ ; /* RX */ }; }; + + adc_default: adc_default { + group1 { + /* input */ + psels = ; + renesas,analog-enable; + }; + }; }; diff --git a/boards/renesas/fpb_rx261/fpb_rx261.dts b/boards/renesas/fpb_rx261/fpb_rx261.dts index aa024097aa98d..47f3eed4a62d8 100644 --- a/boards/renesas/fpb_rx261/fpb_rx261.dts +++ b/boards/renesas/fpb_rx261/fpb_rx261.dts @@ -9,6 +9,8 @@ #include #include #include "fpb_rx261-pinctrl.dtsi" +#include +#include / { model = "Renesas FPB-RX261"; @@ -84,3 +86,9 @@ status = "okay"; }; }; + +&adc { + pinctrl-0 = <&adc_default>; + pinctrl-names = "default"; + status = "okay"; +}; From 538b5fc00b0119f193acdb19f9b53f8b4a99e830 Mon Sep 17 00:00:00 2001 From: Hau Ho Date: Tue, 18 Nov 2025 15:07:14 +0700 Subject: [PATCH 5/6] tests: drivers: adc: Add overlay file for EK-RX261 board Add overlay file for EK-RX261 board Signed-off-by: Hau Ho --- .../adc_accuracy_test/boards/ek_rx261.conf | 1 + .../adc_accuracy_test/boards/ek_rx261.overlay | 40 +++++++++++++++++++ .../adc/adc_api/boards/ek_rx261.overlay | 37 +++++++++++++++++ 3 files changed, 78 insertions(+) create mode 100644 tests/drivers/adc/adc_accuracy_test/boards/ek_rx261.conf create mode 100644 tests/drivers/adc/adc_accuracy_test/boards/ek_rx261.overlay create mode 100644 tests/drivers/adc/adc_api/boards/ek_rx261.overlay diff --git a/tests/drivers/adc/adc_accuracy_test/boards/ek_rx261.conf b/tests/drivers/adc/adc_accuracy_test/boards/ek_rx261.conf new file mode 100644 index 0000000000000..266fee9121d5b --- /dev/null +++ b/tests/drivers/adc/adc_accuracy_test/boards/ek_rx261.conf @@ -0,0 +1 @@ +CONFIG_REFERENCE_VOLTAGE_TEST=y diff --git a/tests/drivers/adc/adc_accuracy_test/boards/ek_rx261.overlay b/tests/drivers/adc/adc_accuracy_test/boards/ek_rx261.overlay new file mode 100644 index 0000000000000..9868021588bcb --- /dev/null +++ b/tests/drivers/adc/adc_accuracy_test/boards/ek_rx261.overlay @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + zephyr,user { + io-channels = <&adc 0>; + reference-mv = <3300>; + expected-accuracy = <32>; + }; +}; + +&adc { + pinctrl-0 = <&adc_default>; + pinctrl-names = "default"; + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + channel@0 { + reg = <0>; + zephyr,gain = "ADC_GAIN_1"; + zephyr,reference = "ADC_REF_INTERNAL"; + zephyr,acquisition-time = ; + zephyr,resolution = <12>; + zephyr,vref-mv = <3300>; + zephyr,oversampling = <1>; + }; + + channel@1 { + reg = <1>; + zephyr,gain = "ADC_GAIN_1"; + zephyr,reference = "ADC_REF_INTERNAL"; + zephyr,acquisition-time = ; + zephyr,resolution = <12>; + zephyr,vref-mv = <3300>; + }; +}; diff --git a/tests/drivers/adc/adc_api/boards/ek_rx261.overlay b/tests/drivers/adc/adc_api/boards/ek_rx261.overlay new file mode 100644 index 0000000000000..4621ebd68509f --- /dev/null +++ b/tests/drivers/adc/adc_api/boards/ek_rx261.overlay @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + zephyr,user { + io-channels = <&adc 0>, <&adc 2>; + }; +}; + +&adc { + pinctrl-0 = <&adc_default>; + pinctrl-names = "default"; + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + + channel@0 { + reg = <0>; + zephyr,gain = "ADC_GAIN_1"; + zephyr,reference = "ADC_REF_INTERNAL"; + zephyr,resolution = <12>; + zephyr,acquisition-time = ; + zephyr,vref-mv = <3300>; + }; + + channel@2 { + reg = <2>; + zephyr,gain = "ADC_GAIN_1"; + zephyr,reference = "ADC_REF_INTERNAL"; + zephyr,resolution = <12>; + zephyr,acquisition-time = ; + zephyr,vref-mv = <3300>; + }; +}; From 82462ae918629f4879f616599fcf101c3fc15500 Mon Sep 17 00:00:00 2001 From: Hau Ho Date: Tue, 18 Nov 2025 16:17:50 +0700 Subject: [PATCH 6/6] tests: drivers: adc: Add overlay file for FPB-RX261 board Add overlay file for FPB-RX261 board Signed-off-by: Hau Ho --- .../adc_accuracy_test/boards/fpb_rx261.conf | 1 + .../boards/fpb_rx261.overlay | 40 +++++++++++++++++++ .../adc/adc_api/boards/fpb_rx261.overlay | 37 +++++++++++++++++ 3 files changed, 78 insertions(+) create mode 100644 tests/drivers/adc/adc_accuracy_test/boards/fpb_rx261.conf create mode 100644 tests/drivers/adc/adc_accuracy_test/boards/fpb_rx261.overlay create mode 100644 tests/drivers/adc/adc_api/boards/fpb_rx261.overlay diff --git a/tests/drivers/adc/adc_accuracy_test/boards/fpb_rx261.conf b/tests/drivers/adc/adc_accuracy_test/boards/fpb_rx261.conf new file mode 100644 index 0000000000000..266fee9121d5b --- /dev/null +++ b/tests/drivers/adc/adc_accuracy_test/boards/fpb_rx261.conf @@ -0,0 +1 @@ +CONFIG_REFERENCE_VOLTAGE_TEST=y diff --git a/tests/drivers/adc/adc_accuracy_test/boards/fpb_rx261.overlay b/tests/drivers/adc/adc_accuracy_test/boards/fpb_rx261.overlay new file mode 100644 index 0000000000000..9868021588bcb --- /dev/null +++ b/tests/drivers/adc/adc_accuracy_test/boards/fpb_rx261.overlay @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + zephyr,user { + io-channels = <&adc 0>; + reference-mv = <3300>; + expected-accuracy = <32>; + }; +}; + +&adc { + pinctrl-0 = <&adc_default>; + pinctrl-names = "default"; + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + channel@0 { + reg = <0>; + zephyr,gain = "ADC_GAIN_1"; + zephyr,reference = "ADC_REF_INTERNAL"; + zephyr,acquisition-time = ; + zephyr,resolution = <12>; + zephyr,vref-mv = <3300>; + zephyr,oversampling = <1>; + }; + + channel@1 { + reg = <1>; + zephyr,gain = "ADC_GAIN_1"; + zephyr,reference = "ADC_REF_INTERNAL"; + zephyr,acquisition-time = ; + zephyr,resolution = <12>; + zephyr,vref-mv = <3300>; + }; +}; diff --git a/tests/drivers/adc/adc_api/boards/fpb_rx261.overlay b/tests/drivers/adc/adc_api/boards/fpb_rx261.overlay new file mode 100644 index 0000000000000..4621ebd68509f --- /dev/null +++ b/tests/drivers/adc/adc_api/boards/fpb_rx261.overlay @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2025 Renesas Electronics Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + zephyr,user { + io-channels = <&adc 0>, <&adc 2>; + }; +}; + +&adc { + pinctrl-0 = <&adc_default>; + pinctrl-names = "default"; + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + + channel@0 { + reg = <0>; + zephyr,gain = "ADC_GAIN_1"; + zephyr,reference = "ADC_REF_INTERNAL"; + zephyr,resolution = <12>; + zephyr,acquisition-time = ; + zephyr,vref-mv = <3300>; + }; + + channel@2 { + reg = <2>; + zephyr,gain = "ADC_GAIN_1"; + zephyr,reference = "ADC_REF_INTERNAL"; + zephyr,resolution = <12>; + zephyr,acquisition-time = ; + zephyr,vref-mv = <3300>; + }; +};