# ADC configuration options

# Copyright (c) 2015 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

#
# ADC options
#
menuconfig ADC
	bool "ADC drivers"
	# All platforms that implement the ADC driver are now required to
	# provide relevant DTS entries.
	help
	  Enable ADC (Analog to Digital Converter) driver configuration.

if ADC

config ADC_SHELL
	bool "Enable ADC Shell"
	default y
	depends on SHELL
	help
	  Enable ADC Shell for testing.

# By selecting or not this option particular ADC drivers indicate if it is
# required to explicitly specify analog inputs when configuring channels or
# just the channel identifier is sufficient.
config ADC_CONFIGURABLE_INPUTS
	bool

config ADC_ASYNC
	bool "Enable asynchronous call support"
	select POLL
	help
	  This option enables the asynchronous API calls.

config ADC_INIT_PRIORITY
	int "ADC init priority"
	default KERNEL_INIT_PRIORITY_DEVICE
	help
	  ADC driver device initialization priority.

module = ADC
module-str = ADC
source "subsys/logging/Kconfig.template.log_config"

source "drivers/adc/Kconfig.it8xxx2"

source "drivers/adc/Kconfig.mcux"

source "drivers/adc/Kconfig.nrfx"

source "drivers/adc/Kconfig.sam_afec"

source "drivers/adc/Kconfig.sam0"

source "drivers/adc/Kconfig.stm32"

source "drivers/adc/Kconfig.xec"

source "drivers/adc/Kconfig.lmp90xxx"

source "drivers/adc/Kconfig.mcp320x"

source "drivers/adc/Kconfig.npcx"

source "drivers/adc/Kconfig.cc32xx"

source "drivers/adc/Kconfig.adc_emul"

source "drivers/adc/Kconfig.test"

endif # ADC
