Skip to content

Commit ea6ec6b

Browse files
fimohamecfriedt
authored andcommitted
drivers: i2c: silabs: i2c driver for EFR series 2 devices
Added the i2c driver for EFR series 2 devices. Signed-off-by: S Mohamed Fiaz <[email protected]>
1 parent a048ed8 commit ea6ec6b

File tree

14 files changed

+589
-13
lines changed

14 files changed

+589
-13
lines changed

drivers/i2c/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ zephyr_library_sources_ifdef(CONFIG_I2C_SBCON i2c_sbcon.c)
6767
zephyr_library_sources_ifdef(CONFIG_I2C_SC18IM704 i2c_sc18im704.c)
6868
zephyr_library_sources_ifdef(CONFIG_I2C_SEDI i2c_sedi.c)
6969
zephyr_library_sources_ifdef(CONFIG_I2C_SIFIVE i2c_sifive.c)
70+
zephyr_library_sources_ifdef(CONFIG_I2C_SILABS i2c_silabs.c)
7071
zephyr_library_sources_ifdef(CONFIG_I2C_SMARTBOND i2c_smartbond.c)
7172
zephyr_library_sources_ifdef(CONFIG_I2C_SY1XX i2c_sy1xx.c)
7273
zephyr_library_sources_ifdef(CONFIG_I2C_TCA954X i2c_tca954x.c)

drivers/i2c/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ source "drivers/i2c/Kconfig.sbcon"
154154
source "drivers/i2c/Kconfig.sc18im704"
155155
source "drivers/i2c/Kconfig.sedi"
156156
source "drivers/i2c/Kconfig.sifive"
157+
source "drivers/i2c/Kconfig.silabs"
157158
source "drivers/i2c/Kconfig.smartbond"
158159
source "drivers/i2c/Kconfig.stm32"
159160
source "drivers/i2c/Kconfig.sy1xx"

drivers/i2c/Kconfig.silabs

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Copyright (c) 2025 Silicon Laboratories Inc.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
menuconfig I2C_SILABS
5+
bool "Silabs I2C_S2 driver"
6+
default y
7+
depends on DT_HAS_SILABS_I2C_ENABLED
8+
select SILABS_SISDK_I2C
9+
help
10+
Enable I2C series 2 driver for the Silabs gecko SoC series.
11+
if I2C_SILABS
12+
13+
config I2C_SILABS_DMA
14+
bool "DMA support for I2C operations"
15+
depends on DMA
16+
default y if $(dt_compat_any_has_prop,$(DT_COMPAT_SILABS_I2C),dmas)
17+
help
18+
Enable DMA mode for I2C DMA transfer.
19+
20+
config I2C_SILABS_TIMEOUT
21+
int "I2C operation timeout (milliseconds)"
22+
default 1000
23+
help
24+
Specify the timeout value in milliseconds for I2C transfer.
25+
26+
endif # I2C_SILABS

0 commit comments

Comments
 (0)