1# nrfx I2C support
2
3# Copyright (c) 2018, Nordic Semiconductor ASA
4# SPDX-License-Identifier: Apache-2.0
5
6menuconfig I2C_NRFX
7	bool "nRF TWI nrfx drivers"
8	default y
9	depends on SOC_FAMILY_NRF
10	depends on MULTITHREADING
11	help
12	  Enable support for nrfx TWI drivers for nRF MCU series.
13
14if I2C_NRFX
15
16config I2C_NRFX_TRANSFER_TIMEOUT
17	int "Transfer timeout [ms]"
18	default 500
19	help
20	  Timeout in milliseconds used for each I2C transfer.
21	  0 means that the driver should use the K_FOREVER value,
22	  i.e. it should wait as long as necessary.
23
24config I2C_0_NRF_TWI
25	def_bool HAS_HW_NRF_TWI0
26	select NRFX_TWI0
27	help
28	  Enable nRF TWI Master without EasyDMA on port 0.
29
30config I2C_0_NRF_TWIM
31	def_bool HAS_HW_NRF_TWIM0
32	select NRFX_TWIM0
33	help
34	  Enable nRF TWI Master with EasyDMA on port 0.
35	  This peripheral accepts transfers from RAM only,
36	  if provided buffer is placed in flash, transfer will fail.
37
38config I2C_1_NRF_TWI
39	def_bool HAS_HW_NRF_TWI1
40	select NRFX_TWI1
41	help
42	  Enable nRF TWI Master without EasyDMA on port 1.
43
44config I2C_1_NRF_TWIM
45	def_bool HAS_HW_NRF_TWIM1
46	select NRFX_TWIM1
47	help
48	  Enable nRF TWI Master with EasyDMA on port 1.
49	  This peripheral accepts transfers from RAM only,
50	  if provided buffer is placed in flash, transfer will fail.
51
52config I2C_2_NRF_TWIM
53	def_bool HAS_HW_NRF_TWIM2
54	select NRFX_TWIM2
55	help
56	  Enable nRF TWI Master with EasyDMA on port 2.
57	  This peripheral accepts transfers from RAM only,
58	  if provided buffer is placed in flash, transfer will fail.
59
60config I2C_3_NRF_TWIM
61	def_bool HAS_HW_NRF_TWIM3
62	select NRFX_TWIM3
63	help
64	  Enable nRF TWI Master with EasyDMA on port 3.
65	  This peripheral accepts transfers from RAM only,
66	  if provided buffer is placed in flash, transfer will fail.
67
68endif # I2C_NRFX
69