# Copyright (c) 2016 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

config HAS_NORDIC_DRIVERS
	bool
	default y if HAS_HW_NRF_RADIO_IEEE802154

menu "Nordic drivers"
	depends on HAS_NORDIC_DRIVERS

menuconfig NRF_802154_RADIO_DRIVER
	bool "Enable nRF IEEE 802.15.4 radio driver"
	depends on HAS_HW_NRF_RADIO_IEEE802154

if NRF_802154_RADIO_DRIVER

choice NRF_802154_CCA_MODE
	prompt "nRF IEEE 802.15.4 CCA mode"
	default NRF_802154_CCA_MODE_ED
	help
	  CCA mode

config NRF_802154_CCA_MODE_ED
	bool "Energy Above Threshold"

config NRF_802154_CCA_MODE_CARRIER
	bool "Carrier Seen"

config NRF_802154_CCA_MODE_CARRIER_AND_ED
	bool "Energy Above Threshold AND Carrier Seen"

config NRF_802154_CCA_MODE_CARRIER_OR_ED
	bool "Energy Above Threshold OR Carrier Seen"

endchoice

config NRF_802154_CCA_ED_THRESHOLD
	int "nRF IEEE 802.15.4 CCA Energy Detection threshold"
	default 45
	help
	  If energy detected in a given channel is above the value then the
	  channel is deemed busy. The unit is defined as per 802.15.4-2006 spec.

config NRF_802154_CCA_CORR_THRESHOLD
	int "nRF IEEE 802.15.4 CCA Correlator threshold"
	default 45

config NRF_802154_CCA_CORR_LIMIT
	int "nRF IEEE 802.15.4 CCA Correlator limit"
	default 2
	help
	  Limit for occurrences above correlator threshold. When not equal to
	  zero the correlator based signal detect is enabled.

endif # NRF_802154_RADIO_DRIVER

endmenu

config HAS_NRFX
	bool
	select HAS_CMSIS_CORE

menu "nrfx drivers"
	depends on HAS_NRFX

config NRFX_ADC
	bool "Enable ADC driver"
	depends on HAS_HW_NRF_ADC

config NRFX_CLOCK
	bool "Enable CLOCK driver"
	depends on HAS_HW_NRF_CLOCK

config NRFX_COMP
	bool "Enable COMP driver"
	depends on HAS_HW_NRF_COMP

config NRFX_DPPI
	bool "Enable DPPI allocator"
	depends on HAS_HW_NRF_DPPIC

config NRFX_EGU
	bool "Enable EGU driver"
	depends on HAS_HW_NRF_EGU0 || HAS_HW_NRF_EGU1 || HAS_HW_NRF_EGU2 || \
		   HAS_HW_NRF_EGU3 || HAS_HW_NRF_EGU4 || HAS_HW_NRF_EGU5

config NRFX_EGU0
	bool "Enable EGU0 instance"
	depends on HAS_HW_NRF_EGU0
	select NRFX_EGU

config NRFX_EGU1
	bool "Enable EGU1 instance"
	depends on HAS_HW_NRF_EGU1
	select NRFX_EGU

config NRFX_EGU2
	bool "Enable EGU2 instance"
	depends on HAS_HW_NRF_EGU2
	select NRFX_EGU

config NRFX_EGU3
	bool "Enable EGU3 instance"
	depends on HAS_HW_NRF_EGU3
	select NRFX_EGU

config NRFX_EGU4
	bool "Enable EGU4 instance"
	depends on HAS_HW_NRF_EGU4
	select NRFX_EGU

config NRFX_EGU5
	bool "Enable EGU5 instance"
	depends on HAS_HW_NRF_EGU5
	select NRFX_EGU

config NRFX_GPIOTE
	bool "Enable GPIOTE driver"
	depends on HAS_HW_NRF_GPIOTE

config NRFX_I2S
	bool "Enable I2S driver"
	depends on HAS_HW_NRF_I2S

config NRFX_IPC
	bool "Enable IPC driver"
	depends on HAS_HW_NRF_IPC

config NRFX_LPCOMP
	bool "Enable LPCOMP driver"
	depends on HAS_HW_NRF_LPCOMP

config NRFX_NFCT
	bool "Enable NFCT driver"
	depends on HAS_HW_NRF_NFCT
	select NRFX_TIMER4 if SOC_SERIES_NRF52X
	select NRFX_TIMER2 if SOC_SERIES_NRF53X

config NRFX_NVMC
	bool "Enable NVMC driver"

config NRFX_PDM
	bool "Enable PDM driver"
	depends on HAS_HW_NRF_PDM

config NRFX_POWER
	bool "Enable POWER driver"
	depends on HAS_HW_NRF_POWER

config NRFX_PPI
	bool "Enable PPI allocator"
	depends on HAS_HW_NRF_PPI

config NRFX_PWM
	bool "Enable PWM driver"
	depends on HAS_HW_NRF_PWM0 || HAS_HW_NRF_PWM1 || \
		   HAS_HW_NRF_PWM2 || HAS_HW_NRF_PWM3

config NRFX_PWM0
	bool "Enable PWM0 instance"
	depends on HAS_HW_NRF_PWM0
	select NRFX_PWM

config NRFX_PWM1
	bool "Enable PWM1 instance"
	depends on HAS_HW_NRF_PWM1
	select NRFX_PWM

config NRFX_PWM2
	bool "Enable PWM2 instance"
	depends on HAS_HW_NRF_PWM2
	select NRFX_PWM

config NRFX_PWM3
	bool "Enable PWM3 instance"
	depends on HAS_HW_NRF_PWM3
	select NRFX_PWM

config NRFX_QDEC
	bool "Enable QDEC driver"
	depends on HAS_HW_NRF_QDEC

config NRFX_QSPI
	bool "Enable QSPI driver"
	depends on HAS_HW_NRF_QSPI

config NRFX_RNG
	bool "Enable RNG driver"
	depends on HAS_HW_NRF_RNG

config NRFX_RTC
	bool "Enable RTC driver"
	depends on HAS_HW_NRF_RTC0 || HAS_HW_NRF_RTC1 || HAS_HW_NRF_RTC2

config NRFX_RTC0
	bool "Enable RTC0 instance"
	depends on HAS_HW_NRF_RTC0
	select NRFX_RTC

config NRFX_RTC1
	bool "Enable RTC1 instance"
	depends on HAS_HW_NRF_RTC1
	select NRFX_RTC

config NRFX_RTC2
	bool "Enable RTC2 instance"
	depends on HAS_HW_NRF_RTC2
	select NRFX_RTC

config NRFX_SAADC
	bool "Enable SAADC driver"
	depends on HAS_HW_NRF_SAADC

config NRFX_SPI
	bool "Enable SPI driver"
	depends on HAS_HW_NRF_SPI0 || HAS_HW_NRF_SPI1 || HAS_HW_NRF_SPI2

config NRFX_SPI0
	bool "Enable SPI0 instance"
	depends on HAS_HW_NRF_SPI0
	select NRFX_SPI

config NRFX_SPI1
	bool "Enable SPI1 instance"
	depends on HAS_HW_NRF_SPI1
	select NRFX_SPI

config NRFX_SPI2
	bool "Enable SPI2 instance"
	depends on HAS_HW_NRF_SPI2
	select NRFX_SPI

config NRFX_SPIM
	bool "Enable SPIM driver"
	depends on HAS_HW_NRF_SPIM0 || HAS_HW_NRF_SPIM1 || \
		   HAS_HW_NRF_SPIM2 || HAS_HW_NRF_SPIM3 || HAS_HW_NRF_SPIM4

config NRFX_SPIM0
	bool "Enable SPIM0 instance"
	depends on HAS_HW_NRF_SPIM0
	select NRFX_SPIM

config NRFX_SPIM1
	bool "Enable SPIM1 instance"
	depends on HAS_HW_NRF_SPIM1
	select NRFX_SPIM

config NRFX_SPIM2
	bool "Enable SPIM2 instance"
	depends on HAS_HW_NRF_SPIM2
	select NRFX_SPIM

config NRFX_SPIM3
	bool "Enable SPIM3 instance"
	depends on HAS_HW_NRF_SPIM3
	select NRFX_SPIM

config NRFX_SPIM4
	bool "Enable SPIM4 instance"
	depends on HAS_HW_NRF_SPIM4
	select NRFX_SPIM

config NRFX_SPIS
	bool "Enable SPIS driver"
	depends on HAS_HW_NRF_SPIS0 || HAS_HW_NRF_SPIS1 || \
		   HAS_HW_NRF_SPIS2 || HAS_HW_NRF_SPIS3

config NRFX_SPIS0
	bool "Enable SPIS0 instance"
	depends on HAS_HW_NRF_SPIS0
	select NRFX_SPIS

config NRFX_SPIS1
	bool "Enable SPIS1 instance"
	depends on HAS_HW_NRF_SPIS1
	select NRFX_SPIS

config NRFX_SPIS2
	bool "Enable SPIS2 instance"
	depends on HAS_HW_NRF_SPIS2
	select NRFX_SPIS

config NRFX_SPIS3
	bool "Enable SPIS3 instance"
	depends on HAS_HW_NRF_SPIS3
	select NRFX_SPIS

config NRFX_SYSTICK
	bool "Enable SYSTICK driver"
	depends on CPU_CORTEX_M_HAS_SYSTICK

config NRFX_TEMP
	bool "Enable TEMP driver"
	depends on HAS_HW_NRF_TEMP

config NRFX_TIMER
	bool "Enable TIMER driver"
	depends on HAS_HW_NRF_TIMER0 || HAS_HW_NRF_TIMER1 || \
		   HAS_HW_NRF_TIMER2 || HAS_HW_NRF_TIMER3 || \
		   HAS_HW_NRF_TIMER4

config NRFX_TIMER0
	bool "Enable TIMER0 instance"
	depends on HAS_HW_NRF_TIMER0
	select NRFX_TIMER

config NRFX_TIMER1
	bool "Enable TIMER1 instance"
	depends on HAS_HW_NRF_TIMER1
	select NRFX_TIMER

config NRFX_TIMER2
	bool "Enable TIMER2 instance"
	depends on HAS_HW_NRF_TIMER2
	select NRFX_TIMER

config NRFX_TIMER3
	bool "Enable TIMER3 instance"
	depends on HAS_HW_NRF_TIMER3
	select NRFX_TIMER

config NRFX_TIMER4
	bool "Enable TIMER4 instance"
	depends on HAS_HW_NRF_TIMER4
	select NRFX_TIMER

config NRFX_TWI
	bool "Enable TWI driver"
	depends on HAS_HW_NRF_TWI0 || HAS_HW_NRF_TWI1

config NRFX_TWI0
	bool "Enable TWI0 instance"
	depends on HAS_HW_NRF_TWI0
	select NRFX_TWI

config NRFX_TWI1
	bool "Enable TWI1 instance"
	depends on HAS_HW_NRF_TWI1
	select NRFX_TWI

config NRFX_TWIM
	bool "Enable TWIM driver"
	depends on HAS_HW_NRF_TWIM0 || HAS_HW_NRF_TWIM1 || \
		   HAS_HW_NRF_TWIM2 || HAS_HW_NRF_TWIM3

config NRFX_TWIM0
	bool "Enable TWIM0 instance"
	depends on HAS_HW_NRF_TWIM0
	select NRFX_TWIM

config NRFX_TWIM1
	bool "Enable TWIM1 instance"
	depends on HAS_HW_NRF_TWIM1
	select NRFX_TWIM

config NRFX_TWIM2
	bool "Enable TWIM2 instance"
	depends on HAS_HW_NRF_TWIM2
	select NRFX_TWIM

config NRFX_TWIM3
	bool "Enable TWIM3 instance"
	depends on HAS_HW_NRF_TWIM3
	select NRFX_TWIM

config NRFX_TWIS
	bool "Enable TWIS driver"
	depends on HAS_HW_NRF_TWIS0 || HAS_HW_NRF_TWIS1 || \
		   HAS_HW_NRF_TWIS2 || HAS_HW_NRF_TWIS3

config NRFX_TWIS0
	bool "Enable TWIS0 instance"
	depends on HAS_HW_NRF_TWIS0
	select NRFX_TWIS

config NRFX_TWIS1
	bool "Enable TWIS1 instance"
	depends on HAS_HW_NRF_TWIS1
	select NRFX_TWIS

config NRFX_TWIS2
	bool "Enable TWIS2 instance"
	depends on HAS_HW_NRF_TWIS2
	select NRFX_TWIS

config NRFX_TWIS3
	bool "Enable TWIS3 instance"
	depends on HAS_HW_NRF_TWIS3
	select NRFX_TWIS

config NRFX_UART
	bool "Enable UART driver"
	depends on HAS_HW_NRF_UART0

config NRFX_UART0
	bool "Enable UART0 instance"
	depends on HAS_HW_NRF_UART0
	select NRFX_UART

config NRFX_UARTE
	bool "Enable UARTE driver"
	depends on HAS_HW_NRF_UARTE0 || HAS_HW_NRF_UARTE1 || \
		   HAS_HW_NRF_UARTE2 || HAS_HW_NRF_UARTE3

config NRFX_UARTE0
	bool "Enable UARTE0 instance"
	depends on HAS_HW_NRF_UARTE0
	select NRFX_UARTE

config NRFX_UARTE1
	bool "Enable UARTE1 instance"
	depends on HAS_HW_NRF_UARTE1
	select NRFX_UARTE

config NRFX_UARTE2
	bool "Enable UARTE2 instance"
	depends on HAS_HW_NRF_UARTE2
	select NRFX_UARTE

config NRFX_UARTE3
	bool "Enable UARTE3 instance"
	depends on HAS_HW_NRF_UARTE3
	select NRFX_UARTE

config NRFX_USBD
	bool "Enable USBD driver"
	depends on HAS_HW_NRF_USBD
	select NRFX_SYSTICK

config NRFX_USBREG
	bool "Enable USBREG driver"
	depends on HAS_HW_NRF_USBREG

config NRFX_WDT
	bool "Enable WDT driver"
	depends on HAS_HW_NRF_WDT || HAS_HW_NRF_WDT0 || HAS_HW_NRF_WDT1

config NRFX_WDT0
	bool "Enable WDT0 instance"
	depends on HAS_HW_NRF_WDT || HAS_HW_NRF_WDT0
	select NRFX_WDT

config NRFX_WDT1
	bool "Enable WDT1 instance"
	depends on HAS_HW_NRF_WDT1
	select NRFX_WDT

config NRFX_PRS
	bool "Enable Peripheral Resource Sharing module"

config NRFX_PRS_BOX_0
	bool "Enable PRS box 0"
	select NRFX_PRS

config NRFX_PRS_BOX_1
	bool "Enable PRS box 1"
	select NRFX_PRS

config NRFX_PRS_BOX_2
	bool "Enable PRS box 2"
	select NRFX_PRS

config NRFX_PRS_BOX_3
	bool "Enable PRS box 3"
	select NRFX_PRS

config NRFX_PRS_BOX_4
	bool "Enable PRS box 4"
	select NRFX_PRS

endmenu
