# Copyright (c) 2020 Facebook, Inc. and its affiliates
# SPDX-License-Identifier: Apache-2.0

menuconfig BMP388
	bool "Bosch BMP388 pressure sensor"
	default y
	depends on DT_HAS_BOSCH_BMP388_ENABLED || DT_HAS_BOSCH_BMP390_ENABLED
	select I2C if $(dt_compat_on_bus,$(DT_COMPAT_BOSCH_BMP388),i2c) || \
			$(dt_compat_on_bus,$(DT_COMPAT_BOSCH_BMP390),i2c)
	select SPI if $(dt_compat_on_bus,$(DT_COMPAT_BOSCH_BMP388),spi) || \
			$(dt_compat_on_bus,$(DT_COMPAT_BOSCH_BMP390),spi)
	help
	  Enable driver for the Bosch BMP388 pressure sensor

if BMP388

choice BMP388_TRIGGER_MODE
	prompt "Trigger mode"
	default BMP388_TRIGGER_GLOBAL_THREAD
	help
	  Specify the type of triggering to be used by the driver.

config BMP388_TRIGGER_NONE
	bool "No trigger"

config BMP388_TRIGGER_GLOBAL_THREAD
	bool "Use global thread"
	depends on GPIO
	depends on $(dt_compat_any_has_prop,$(DT_COMPAT_BOSCH_BMP388),int-gpios)
	select BMP388_TRIGGER

config BMP388_TRIGGER_OWN_THREAD
	bool "Use own thread"
	depends on GPIO
	depends on $(dt_compat_any_has_prop,$(DT_COMPAT_BOSCH_BMP388),int-gpios)
	select BMP388_TRIGGER

config BMP388_TRIGGER_DIRECT
	bool "Use IRQ handler"
	depends on GPIO
	depends on $(dt_compat_any_has_prop,$(DT_COMPAT_BOSCH_BMP388),int-gpios)
	select BMP388_TRIGGER
endchoice

config BMP388_TRIGGER
	bool

config BMP388_THREAD_PRIORITY
	int "Own thread priority"
	depends on BMP388_TRIGGER_OWN_THREAD
	default 10
	help
	  Priority of the thread used by the driver to handle interrupts.

config BMP388_THREAD_STACK_SIZE
	int "Own thread stack size"
	depends on BMP388_TRIGGER_OWN_THREAD
	default 1024
	help
	  Stack size of thread used by the driver to handle interrupts.

config BMP388_ODR_RUNTIME
	bool "Change ODR at runtime."
	default y

config BMP388_OSR_RUNTIME
	bool "Change OSR at runtime."
	default y

endif # BMP388
