zephyr/drivers/i2c/Kconfig.nrfx
Bjarki Arge Andreasen 02bf44d590 drivers: i2c: add nrf twis suppport
Add nrf twis (I2C controller supporting I2C peripheral role and
EasyDMA) support, including updating the existing twis dt binding
to match the hardware with proper examples.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2024-12-20 16:14:05 +01:00

82 lines
2.3 KiB
Plaintext

# nrfx I2C support
# Copyright (c) 2018, Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
menuconfig I2C_NRFX
bool "nRF TWI nrfx drivers"
default y
depends on SOC_FAMILY_NORDIC_NRF
depends on MULTITHREADING
select PINCTRL
help
Enable support for nrfx TWI drivers for nRF MCU series.
if I2C_NRFX
config I2C_NRFX_TWI
def_bool y
depends on DT_HAS_NORDIC_NRF_TWI_ENABLED
select NRFX_TWI0 if HAS_HW_NRF_TWI0
select NRFX_TWI1 if HAS_HW_NRF_TWI1
config I2C_NRFX_TWIM
def_bool y
depends on DT_HAS_NORDIC_NRF_TWIM_ENABLED
select NRFX_TWIM0 if HAS_HW_NRF_TWIM0
select NRFX_TWIM1 if HAS_HW_NRF_TWIM1
select NRFX_TWIM2 if HAS_HW_NRF_TWIM2
select NRFX_TWIM3 if HAS_HW_NRF_TWIM3
select NRFX_TWIM20 if HAS_HW_NRF_TWIM20
select NRFX_TWIM21 if HAS_HW_NRF_TWIM21
select NRFX_TWIM22 if HAS_HW_NRF_TWIM22
select NRFX_TWIM30 if HAS_HW_NRF_TWIM30
select NRFX_TWIM120 if HAS_HW_NRF_TWIM120
select NRFX_TWIM130 if HAS_HW_NRF_TWIM130
select NRFX_TWIM131 if HAS_HW_NRF_TWIM131
select NRFX_TWIM132 if HAS_HW_NRF_TWIM132
select NRFX_TWIM133 if HAS_HW_NRF_TWIM133
select NRFX_TWIM134 if HAS_HW_NRF_TWIM134
select NRFX_TWIM135 if HAS_HW_NRF_TWIM135
select NRFX_TWIM136 if HAS_HW_NRF_TWIM136
select NRFX_TWIM137 if HAS_HW_NRF_TWIM137
config I2C_NRFX_TRANSFER_TIMEOUT
int "Transfer timeout [ms]"
default 500
help
Timeout in milliseconds used for each I2C transfer.
0 means that the driver should use the K_FOREVER value,
i.e. it should wait as long as necessary.
config I2C_NRFX_TWIS
def_bool y
depends on DT_HAS_NORDIC_NRF_TWIS_ENABLED
depends on I2C_TARGET
depends on I2C_TARGET_BUFFER_MODE
select NRFX_TWIS0 if HAS_HW_NRF_TWIS0
select NRFX_TWIS1 if HAS_HW_NRF_TWIS1
select NRFX_TWIS2 if HAS_HW_NRF_TWIS2
select NRFX_TWIS3 if HAS_HW_NRF_TWIS3
select NRFX_TWIS20 if HAS_HW_NRF_TWIS20
select NRFX_TWIS21 if HAS_HW_NRF_TWIS21
select NRFX_TWIS22 if HAS_HW_NRF_TWIS22
select NRFX_TWIS30 if HAS_HW_NRF_TWIS30
select NRFX_TWIS130 if HAS_HW_NRF_TWIS130
select NRFX_TWIS131 if HAS_HW_NRF_TWIS131
select NRFX_TWIS133 if HAS_HW_NRF_TWIS133
select NRFX_TWIS134 if HAS_HW_NRF_TWIS134
select NRFX_TWIS135 if HAS_HW_NRF_TWIS135
select NRFX_TWIS136 if HAS_HW_NRF_TWIS136
select NRFX_TWIS137 if HAS_HW_NRF_TWIS137
if I2C_NRFX_TWIS
config I2C_NRFX_TWIS_BUF_SIZE
int "DMA buffer size in bytes"
default 64
endif # I2C_NRFX_TWIS
endif # I2C_NRFX