# LMP90xxx ADC configuration options

# Copyright (c) 2019 Vestas Wind Systems A/S
# SPDX-License-Identifier: Apache-2.0

config ADC_LMP90XXX
	bool "LMP90xxx driver"
	depends on SPI
	select ADC_CONFIGURABLE_INPUTS
	help
	  Enable LMP90xxx ADC driver.

	  The LMP90xxx is a multi-channel, low power sensor analog
	  frontend (AFE).

if ADC_LMP90XXX

config ADC_LMP90XXX_INIT_PRIORITY
	int "Init priority"
	default 80
	help
	  LMP90xxx ADC device driver initialization priority.

config ADC_LMP90XXX_ACQUISITION_THREAD_STACK_SIZE
	int "Stack size for the ADC data acquisition thread"
	default 400
	help
	  Size of the stack used for the internal data acquisition
	  thread.

config ADC_LMP90XXX_ACQUISITION_THREAD_PRIO
	int "Priority for the ADC data acquisition thread"
	default 0
	help
	  Priority level for the internal ADC data acquisition thread.

config ADC_LMP90XXX_CRC
	bool "Use Cyclic Redundancy Check (CRC)"
	default y
	help
	  Use Cyclic Redundancy Check (CRC) to verify the integrity of
	  the data read from the LMP90xxx.

config ADC_LMP90XXX_GPIO
	bool "Enable GPIO support"
	depends on GPIO
	select GPIO_LMP90XXX
	help
	  Enable GPIO child device support in the LMP90xxx ADC driver.

	  The GPIO functionality is handled by the LMP90xxx GPIO
	  driver.

endif # ADC_LMP90XXX
