# 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.

endif # I2C_NRFX
