#
# Copyright (c) 2020 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

# This hidden option is intended to enable (include into compilation) all nrfx
# drivers that are available for the SoC that is the build target.
config NRFX_ALL_DRIVERS
	def_bool y
	depends on HAS_NRFX
	select NRFX_ADC		if HAS_HW_NRF_ADC
	select NRFX_CLOCK	if HAS_HW_NRF_CLOCK && !CLOCK_CONTROL_MPSL
	select NRFX_COMP	if HAS_HW_NRF_COMP
	select NRFX_DPPI	if HAS_HW_NRF_DPPIC
	select NRFX_EGU0	if HAS_HW_NRF_EGU0
	select NRFX_EGU1	if HAS_HW_NRF_EGU1
	select NRFX_EGU2	if HAS_HW_NRF_EGU2
	select NRFX_EGU3	if HAS_HW_NRF_EGU3
	select NRFX_EGU4	if HAS_HW_NRF_EGU4
	select NRFX_EGU5	if HAS_HW_NRF_EGU5
	select NRFX_GPIOTE0	if HAS_HW_NRF_GPIOTE0
	select NRFX_GPIOTE1	if HAS_HW_NRF_GPIOTE1
	select NRFX_GPIOTE20	if HAS_HW_NRF_GPIOTE20
	select NRFX_GPIOTE30	if HAS_HW_NRF_GPIOTE30
	select NRFX_GPIOTE130	if HAS_HW_NRF_GPIOTE130
	select NRFX_GPIOTE131	if HAS_HW_NRF_GPIOTE131
	select NRFX_I2S		if HAS_HW_NRF_I2S
	select NRFX_IPC		if HAS_HW_NRF_IPC
	select NRFX_LPCOMP	if HAS_HW_NRF_LPCOMP
	select NRFX_NFCT	if HAS_HW_NRF_NFCT
	select NRFX_NVMC	if $(dt_has_compat,$(DT_COMPAT_NORDIC_NRF51_FLASH_CONTROLLER)) \
				|| $(dt_has_compat,$(DT_COMPAT_NORDIC_NRF52_FLASH_CONTROLLER)) \
				|| $(dt_has_compat,$(DT_COMPAT_NORDIC_NRF53_FLASH_CONTROLLER)) \
				|| $(dt_has_compat,$(DT_COMPAT_NORDIC_NRF91_FLASH_CONTROLLER))
	select NRFX_PDM		if HAS_HW_NRF_PDM
	select NRFX_POWER	if HAS_HW_NRF_POWER
	select NRFX_PPI		if HAS_HW_NRF_PPI
	select NRFX_PWM0	if HAS_HW_NRF_PWM0
	select NRFX_PWM1	if HAS_HW_NRF_PWM1
	select NRFX_PWM2	if HAS_HW_NRF_PWM2
	select NRFX_PWM3	if HAS_HW_NRF_PWM3
	select NRFX_QDEC0	if HAS_HW_NRF_QDEC0
	select NRFX_QDEC1	if HAS_HW_NRF_QDEC1
	select NRFX_QDEC20	if HAS_HW_NRF_QDEC20
	select NRFX_QDEC21	if HAS_HW_NRF_QDEC21
	select NRFX_QDEC130	if HAS_HW_NRF_QDEC130
	select NRFX_QDEC131	if HAS_HW_NRF_QDEC131
	select NRFX_QSPI	if HAS_HW_NRF_QSPI
	select NRFX_RNG		if HAS_HW_NRF_RNG
	select NRFX_RTC0	if HAS_HW_NRF_RTC0
	select NRFX_RTC1	if HAS_HW_NRF_RTC1
	select NRFX_RTC2	if HAS_HW_NRF_RTC2
	select NRFX_SAADC	if HAS_HW_NRF_SAADC
	select NRFX_SPI0	if HAS_HW_NRF_SPI0
	select NRFX_SPI1	if HAS_HW_NRF_SPI1
	select NRFX_SPI2	if HAS_HW_NRF_SPI2
	select NRFX_SPIM0	if HAS_HW_NRF_SPIM0
	select NRFX_SPIM1	if HAS_HW_NRF_SPIM1
	select NRFX_SPIM2	if HAS_HW_NRF_SPIM2
	select NRFX_SPIM3	if HAS_HW_NRF_SPIM3
	select NRFX_SPIM4	if HAS_HW_NRF_SPIM4
	select NRFX_SPIM00	if HAS_HW_NRF_SPIM00
	select NRFX_SPIM20	if HAS_HW_NRF_SPIM20
	select NRFX_SPIM21	if HAS_HW_NRF_SPIM21
	select NRFX_SPIM22	if HAS_HW_NRF_SPIM22
	select NRFX_SPIM30	if HAS_HW_NRF_SPIM30
	select NRFX_SPIM120	if HAS_HW_NRF_SPIM120
	select NRFX_SPIM121	if HAS_HW_NRF_SPIM121
	select NRFX_SPIM130	if HAS_HW_NRF_SPIM130
	select NRFX_SPIM131	if HAS_HW_NRF_SPIM131
	select NRFX_SPIM132	if HAS_HW_NRF_SPIM132
	select NRFX_SPIM133	if HAS_HW_NRF_SPIM133
	select NRFX_SPIM134	if HAS_HW_NRF_SPIM134
	select NRFX_SPIM135	if HAS_HW_NRF_SPIM135
	select NRFX_SPIM136	if HAS_HW_NRF_SPIM136
	select NRFX_SPIM137	if HAS_HW_NRF_SPIM137
	select NRFX_SPIS0	if HAS_HW_NRF_SPIS0
	select NRFX_SPIS1	if HAS_HW_NRF_SPIS1
	select NRFX_SPIS2	if HAS_HW_NRF_SPIS2
	select NRFX_SPIS3	if HAS_HW_NRF_SPIS3
	select NRFX_SYSTICK	if CPU_CORTEX_M_HAS_SYSTICK
	select NRFX_TEMP	if HAS_HW_NRF_TEMP
	select NRFX_TIMER0	if HAS_HW_NRF_TIMER0
	select NRFX_TIMER1	if HAS_HW_NRF_TIMER1
	select NRFX_TIMER2	if HAS_HW_NRF_TIMER2
	select NRFX_TIMER3	if HAS_HW_NRF_TIMER3
	select NRFX_TIMER4	if HAS_HW_NRF_TIMER4
	select NRFX_TIMER00	if HAS_HW_NRF_TIMER00
	select NRFX_TIMER10	if HAS_HW_NRF_TIMER10
	select NRFX_TIMER20	if HAS_HW_NRF_TIMER20
	select NRFX_TIMER21	if HAS_HW_NRF_TIMER21
	select NRFX_TIMER22	if HAS_HW_NRF_TIMER22
	select NRFX_TIMER23	if HAS_HW_NRF_TIMER23
	select NRFX_TIMER24	if HAS_HW_NRF_TIMER24
	select NRFX_TWI0	if HAS_HW_NRF_TWI0
	select NRFX_TWI1	if HAS_HW_NRF_TWI1
	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
	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_UART0	if HAS_HW_NRF_UART0
	select NRFX_UARTE0	if HAS_HW_NRF_UARTE0
	select NRFX_UARTE1	if HAS_HW_NRF_UARTE1
	select NRFX_UARTE2	if HAS_HW_NRF_UARTE2
	select NRFX_UARTE3	if HAS_HW_NRF_UARTE3
	select NRFX_UARTE00	if HAS_HW_NRF_UARTE00
	select NRFX_UARTE20	if HAS_HW_NRF_UARTE20
	select NRFX_UARTE21	if HAS_HW_NRF_UARTE21
	select NRFX_UARTE22	if HAS_HW_NRF_UARTE22
	select NRFX_UARTE30	if HAS_HW_NRF_UARTE30
	select NRFX_UARTE120	if HAS_HW_NRF_UARTE120
	select NRFX_UARTE130	if HAS_HW_NRF_UARTE130
	select NRFX_UARTE131	if HAS_HW_NRF_UARTE131
	select NRFX_UARTE132	if HAS_HW_NRF_UARTE132
	select NRFX_UARTE133	if HAS_HW_NRF_UARTE133
	select NRFX_UARTE134	if HAS_HW_NRF_UARTE134
	select NRFX_UARTE135	if HAS_HW_NRF_UARTE135
	select NRFX_UARTE136	if HAS_HW_NRF_UARTE136
	select NRFX_UARTE137	if HAS_HW_NRF_UARTE137
	select NRFX_USBD	if HAS_HW_NRF_USBD
	select NRFX_USBREG	if HAS_HW_NRF_USBREG
	select NRFX_WDT0	if HAS_HW_NRF_WDT0
	select NRFX_WDT1	if HAS_HW_NRF_WDT1
	select NRFX_WDT30	if HAS_HW_NRF_WDT30
	select NRFX_WDT31	if HAS_HW_NRF_WDT31
	select NRFX_WDT130	if HAS_HW_NRF_WDT130
	select NRFX_PRS_BOX_0
	select NRFX_PRS_BOX_1
	select NRFX_PRS_BOX_2
	select NRFX_PRS_BOX_3
	select NRFX_PRS_BOX_4

config NRFX_AND_BT_LL_SOFTDEVICE
	bool "Test nrfx integration with SoftDevice BLE LL"
	select BT

config NRFX_AND_BT_LL_SW_SPLIT
	bool "Test nrfx integration with Zephyr BLE LL"
	select BT

choice BT_LL_CHOICE
	default BT_LL_SOFTDEVICE if NRFX_AND_BT_LL_SOFTDEVICE
	default BT_LL_SW_SPLIT   if NRFX_AND_BT_LL_SW_SPLIT
endchoice

source "Kconfig.zephyr"
