diff --git a/boards/renesas/ek_ra2a1/doc/index.rst b/boards/renesas/ek_ra2a1/doc/index.rst index 0c7327a65fe679..fd8ebc5e26d692 100644 --- a/boards/renesas/ek_ra2a1/doc/index.rst +++ b/boards/renesas/ek_ra2a1/doc/index.rst @@ -86,6 +86,8 @@ hardware features: +-----------+------------+-------------------------------+ | ENTROPY | on-chip | entropy | +-----------+------------+-------------------------------+ +| I2C | on-chip | i2c | ++-----------+------------+-------------------------------+ The default configuration can be found in :zephyr_file:`boards/renesas/ek_ra2a1/ek_ra2a1_defconfig` diff --git a/boards/renesas/ek_ra2a1/ek_ra2a1-pinctrl.dtsi b/boards/renesas/ek_ra2a1/ek_ra2a1-pinctrl.dtsi index b0c854d697fafc..26835a70ea5cc7 100644 --- a/boards/renesas/ek_ra2a1/ek_ra2a1-pinctrl.dtsi +++ b/boards/renesas/ek_ra2a1/ek_ra2a1-pinctrl.dtsi @@ -34,4 +34,13 @@ ; }; }; + + iic0_default: iic0_default { + group1 { + /* SCL0 SDA0 */ + psels = , + ; + drive-strength = "medium"; + }; + }; }; diff --git a/boards/renesas/ek_ra2a1/ek_ra2a1.dts b/boards/renesas/ek_ra2a1/ek_ra2a1.dts index 4de6e45dcbeb86..f0040a3fd6dae1 100644 --- a/boards/renesas/ek_ra2a1/ek_ra2a1.dts +++ b/boards/renesas/ek_ra2a1/ek_ra2a1.dts @@ -98,3 +98,14 @@ &trng { status = "okay"; }; + +&iic0 { + pinctrl-0 = <&iic0_default>; + pinctrl-names = "default"; + #address-cells = <1>; + #size-cells = <0>; + clock-frequency = ; + interrupts = <0 1>, <1 1>, <2 1>, <3 1>; + interrupt-names = "rxi", "txi", "tei", "eri"; + status = "okay"; +}; diff --git a/boards/renesas/ek_ra4m2/doc/index.rst b/boards/renesas/ek_ra4m2/doc/index.rst index b9e3d2eeec733c..380f19da89b4b4 100644 --- a/boards/renesas/ek_ra4m2/doc/index.rst +++ b/boards/renesas/ek_ra4m2/doc/index.rst @@ -106,6 +106,8 @@ The below features are currently supported on Zephyr OS for EK-RA4M2 board: +-----------+------------+----------------------+ | PWM | on-chip | pwm | +-----------+------------+----------------------+ +| I2C | on-chip | i2c | ++-----------+------------+----------------------+ Other hardware features are currently not supported by the port. diff --git a/boards/renesas/ek_ra4m2/ek_ra4m2-pinctrl.dtsi b/boards/renesas/ek_ra4m2/ek_ra4m2-pinctrl.dtsi index b929ab8e7cbf5a..cd65bed269b7e3 100644 --- a/boards/renesas/ek_ra4m2/ek_ra4m2-pinctrl.dtsi +++ b/boards/renesas/ek_ra4m2/ek_ra4m2-pinctrl.dtsi @@ -37,4 +37,13 @@ ; }; }; + + iic0_default: iic0_default { + group1 { + /* SCL0 SDA0 */ + psels = , + ; + drive-strength = "medium"; + }; + }; }; diff --git a/boards/renesas/ek_ra4m2/ek_ra4m2.dts b/boards/renesas/ek_ra4m2/ek_ra4m2.dts index 8a96e6199e4a00..810d218174edce 100644 --- a/boards/renesas/ek_ra4m2/ek_ra4m2.dts +++ b/boards/renesas/ek_ra4m2/ek_ra4m2.dts @@ -124,3 +124,14 @@ interrupt-names = "gtioca", "overflow"; status = "okay"; }; + +&iic0 { + pinctrl-0 = <&iic0_default>; + pinctrl-names = "default"; + #address-cells = <1>; + #size-cells = <0>; + clock-frequency = ; + interrupts = <87 1>, <88 1>, <89 1>, <90 1>; + interrupt-names = "rxi", "txi", "tei", "eri"; + status = "okay"; +}; diff --git a/boards/renesas/ek_ra4m3/doc/index.rst b/boards/renesas/ek_ra4m3/doc/index.rst index 7a3ff751a62781..1d83845583e521 100644 --- a/boards/renesas/ek_ra4m3/doc/index.rst +++ b/boards/renesas/ek_ra4m3/doc/index.rst @@ -108,6 +108,8 @@ The below features are currently supported on Zephyr OS for EK-RA4M3 board: +-----------+------------+----------------------+ | PWM | on-chip | pwm | +-----------+------------+----------------------+ +| I2C | on-chip | i2c | ++-----------+------------+----------------------+ Other hardware features are currently not supported by the port. diff --git a/boards/renesas/ek_ra4m3/ek_ra4m3-pinctrl.dtsi b/boards/renesas/ek_ra4m3/ek_ra4m3-pinctrl.dtsi index bf3c56095e86e6..93f63b5a56a9ee 100644 --- a/boards/renesas/ek_ra4m3/ek_ra4m3-pinctrl.dtsi +++ b/boards/renesas/ek_ra4m3/ek_ra4m3-pinctrl.dtsi @@ -37,4 +37,13 @@ ; }; }; + + iic0_default: iic0_default { + group1 { + /* SCL0 SDA0 */ + psels = , + ; + drive-strength = "medium"; + }; + }; }; diff --git a/boards/renesas/ek_ra4m3/ek_ra4m3.dts b/boards/renesas/ek_ra4m3/ek_ra4m3.dts index 3764d88fc3bc37..d85ea607af1778 100644 --- a/boards/renesas/ek_ra4m3/ek_ra4m3.dts +++ b/boards/renesas/ek_ra4m3/ek_ra4m3.dts @@ -124,3 +124,14 @@ interrupt-names = "gtioca", "overflow"; status = "okay"; }; + +&iic0 { + pinctrl-0 = <&iic0_default>; + pinctrl-names = "default"; + #address-cells = <1>; + #size-cells = <0>; + clock-frequency = ; + interrupts = <87 1>, <88 1>, <89 1>, <90 1>; + interrupt-names = "rxi", "txi", "tei", "eri"; + status = "okay"; +}; diff --git a/boards/renesas/ek_ra4w1/doc/index.rst b/boards/renesas/ek_ra4w1/doc/index.rst index 01941c765ca15b..c9501e3dc1d6e2 100644 --- a/boards/renesas/ek_ra4w1/doc/index.rst +++ b/boards/renesas/ek_ra4w1/doc/index.rst @@ -100,6 +100,8 @@ The below features are currently supported on Zephyr OS for EK-RA4W1 board: +-----------+------------+----------------------+ | PWM | on-chip | pwm | +-----------+------------+----------------------+ +| I2C | on-chip | i2c | ++-----------+------------+----------------------+ Other hardware features are currently not supported by the port. diff --git a/boards/renesas/ek_ra4w1/ek_ra4w1-pinctrl.dtsi b/boards/renesas/ek_ra4w1/ek_ra4w1-pinctrl.dtsi index c44b47d8a5bebe..f0b48f12f95bab 100644 --- a/boards/renesas/ek_ra4w1/ek_ra4w1-pinctrl.dtsi +++ b/boards/renesas/ek_ra4w1/ek_ra4w1-pinctrl.dtsi @@ -37,4 +37,13 @@ ; }; }; + + iic0_default: iic0_default { + group1 { + /* SCL0 SDA0 */ + psels = , + ; + drive-strength = "medium"; + }; + }; }; diff --git a/boards/renesas/ek_ra4w1/ek_ra4w1.dts b/boards/renesas/ek_ra4w1/ek_ra4w1.dts index 81efbc746c223a..a8adbfd99a1a49 100644 --- a/boards/renesas/ek_ra4w1/ek_ra4w1.dts +++ b/boards/renesas/ek_ra4w1/ek_ra4w1.dts @@ -101,3 +101,14 @@ interrupt-names = "gtioca", "overflow"; status = "okay"; }; + +&iic0 { + pinctrl-0 = <&iic0_default>; + pinctrl-names = "default"; + #address-cells = <1>; + #size-cells = <0>; + clock-frequency = ; + interrupts = <10 1>, <11 1>, <12 1>, <13 1>; + interrupt-names = "rxi", "txi", "tei", "eri"; + status = "okay"; +}; diff --git a/dts/arm/renesas/ra/ra2/ra2xx.dtsi b/dts/arm/renesas/ra/ra2/ra2xx.dtsi index 5b90f6252c49a9..13111985dfe191 100644 --- a/dts/arm/renesas/ra/ra2/ra2xx.dtsi +++ b/dts/arm/renesas/ra/ra2/ra2xx.dtsi @@ -226,6 +226,20 @@ status = "disabled"; }; + iic0: iic0@40053000 { + compatible = "renesas,ra-iic"; + channel = <0>; + reg = <0x40053000 0x100>; + status = "disabled"; + }; + + iic1: iic1@40053100 { + compatible = "renesas,ra-iic"; + channel = <1>; + reg = <0x40053100 0x100>; + status = "disabled"; + }; + flash-controller@407e0000 { reg = <0x407e0000 0x10000>; #address-cells = <1>; diff --git a/dts/arm/renesas/ra/ra4/r7fa4e2b93cfm.dtsi b/dts/arm/renesas/ra/ra4/r7fa4e2b93cfm.dtsi index 7a92f21a3f6b00..a487ece659dcd7 100644 --- a/dts/arm/renesas/ra/ra4/r7fa4e2b93cfm.dtsi +++ b/dts/arm/renesas/ra/ra4/r7fa4e2b93cfm.dtsi @@ -13,6 +13,8 @@ /delete-node/ &agt3; /delete-node/ &agt4; /delete-node/ &agt5; +/delete-node/ &iic0; +/delete-node/ &iic1; /delete-node/ &adc1; diff --git a/dts/arm/renesas/ra/ra4/ra4-cm33-common.dtsi b/dts/arm/renesas/ra/ra4/ra4-cm33-common.dtsi index 895780269151da..ff7c1e6d401e98 100644 --- a/dts/arm/renesas/ra/ra4/ra4-cm33-common.dtsi +++ b/dts/arm/renesas/ra/ra4/ra4-cm33-common.dtsi @@ -268,6 +268,20 @@ status = "disabled"; }; + iic0: iic0@4009f000 { + compatible = "renesas,ra-iic"; + channel = <0>; + reg = <0x4009f000 0x100>; + status = "disabled"; + }; + + iic1: iic1@4009f100 { + compatible = "renesas,ra-iic"; + channel = <1>; + reg = <0x4009f100 0x100>; + status = "disabled"; + }; + option_setting_ofs: option_setting_ofs@100a100 { compatible = "zephyr,memory-region"; reg = <0x0100a100 0x18>; diff --git a/dts/arm/renesas/ra/ra4/ra4-cm4-common.dtsi b/dts/arm/renesas/ra/ra4/ra4-cm4-common.dtsi index ef831b03edc549..aaaff96cd3bad7 100644 --- a/dts/arm/renesas/ra/ra4/ra4-cm4-common.dtsi +++ b/dts/arm/renesas/ra/ra4/ra4-cm4-common.dtsi @@ -229,6 +229,20 @@ status = "disabled"; }; + iic0: iic0@40053000 { + compatible = "renesas,ra-iic"; + channel = <0>; + reg = <0x40053000 0x100>; + status = "disabled"; + }; + + iic1: iic1@40053100 { + compatible = "renesas,ra-iic"; + channel = <1>; + reg = <0x40053100 0x100>; + status = "disabled"; + }; + id_code: id_code@1010018 { compatible = "zephyr,memory-region"; reg = <0x01010018 0x20>; diff --git a/tests/drivers/i2c/i2c_api/boards/ek_ra2a1.conf b/tests/drivers/i2c/i2c_api/boards/ek_ra2a1.conf new file mode 100644 index 00000000000000..83547b4fe7250a --- /dev/null +++ b/tests/drivers/i2c/i2c_api/boards/ek_ra2a1.conf @@ -0,0 +1 @@ +CONFIG_SENSOR_GY271_QMC=y diff --git a/tests/drivers/i2c/i2c_api/boards/ek_ra2a1.overlay b/tests/drivers/i2c/i2c_api/boards/ek_ra2a1.overlay new file mode 100644 index 00000000000000..cce5441d28ee73 --- /dev/null +++ b/tests/drivers/i2c/i2c_api/boards/ek_ra2a1.overlay @@ -0,0 +1,6 @@ +/ { + aliases { + i2c-0 = &iic0; + gy271 = &iic0; + }; +}; diff --git a/tests/drivers/i2c/i2c_api/boards/ek_ra4m2.conf b/tests/drivers/i2c/i2c_api/boards/ek_ra4m2.conf new file mode 100644 index 00000000000000..83547b4fe7250a --- /dev/null +++ b/tests/drivers/i2c/i2c_api/boards/ek_ra4m2.conf @@ -0,0 +1 @@ +CONFIG_SENSOR_GY271_QMC=y diff --git a/tests/drivers/i2c/i2c_api/boards/ek_ra4m2.overlay b/tests/drivers/i2c/i2c_api/boards/ek_ra4m2.overlay new file mode 100644 index 00000000000000..cce5441d28ee73 --- /dev/null +++ b/tests/drivers/i2c/i2c_api/boards/ek_ra4m2.overlay @@ -0,0 +1,6 @@ +/ { + aliases { + i2c-0 = &iic0; + gy271 = &iic0; + }; +}; diff --git a/tests/drivers/i2c/i2c_api/boards/ek_ra4m3.conf b/tests/drivers/i2c/i2c_api/boards/ek_ra4m3.conf new file mode 100644 index 00000000000000..83547b4fe7250a --- /dev/null +++ b/tests/drivers/i2c/i2c_api/boards/ek_ra4m3.conf @@ -0,0 +1 @@ +CONFIG_SENSOR_GY271_QMC=y diff --git a/tests/drivers/i2c/i2c_api/boards/ek_ra4m3.overlay b/tests/drivers/i2c/i2c_api/boards/ek_ra4m3.overlay new file mode 100644 index 00000000000000..cce5441d28ee73 --- /dev/null +++ b/tests/drivers/i2c/i2c_api/boards/ek_ra4m3.overlay @@ -0,0 +1,6 @@ +/ { + aliases { + i2c-0 = &iic0; + gy271 = &iic0; + }; +}; diff --git a/tests/drivers/i2c/i2c_api/boards/ek_ra4w1.conf b/tests/drivers/i2c/i2c_api/boards/ek_ra4w1.conf new file mode 100644 index 00000000000000..83547b4fe7250a --- /dev/null +++ b/tests/drivers/i2c/i2c_api/boards/ek_ra4w1.conf @@ -0,0 +1 @@ +CONFIG_SENSOR_GY271_QMC=y diff --git a/tests/drivers/i2c/i2c_api/boards/ek_ra4w1.overlay b/tests/drivers/i2c/i2c_api/boards/ek_ra4w1.overlay new file mode 100644 index 00000000000000..cce5441d28ee73 --- /dev/null +++ b/tests/drivers/i2c/i2c_api/boards/ek_ra4w1.overlay @@ -0,0 +1,6 @@ +/ { + aliases { + i2c-0 = &iic0; + gy271 = &iic0; + }; +};