# MS5607 pressure sensor configuration options

# Copyright (c) 2019 Thomas Schmid <tom@lfence.de>
# SPDX-License-Identifier: Apache-2.0

menuconfig MS5607
	bool "MS5607 pressure and temperature sensor"
	default y
	depends on DT_HAS_MEAS_MS5607_ENABLED
	select I2C if $(dt_compat_on_bus,$(DT_COMPAT_MEAS_MS5607),i2c)
	select SPI if $(dt_compat_on_bus,$(DT_COMPAT_MEAS_MS5607),spi)
	help
	  Enable driver for MS5607 pressure and temperature sensor.

if MS5607

choice
	prompt "Pressure oversampling."
	default MS5607_PRES_OVER_2048X

config MS5607_PRES_OVER_256X
	bool "x256"

config MS5607_PRES_OVER_512X
	bool "x512"

config MS5607_PRES_OVER_1024X
	bool "x1024"

config MS5607_PRES_OVER_2048X
	bool "x2048"

config MS5607_PRES_OVER_4096X
	bool "x4096"

endchoice


choice
	prompt "Temperature oversampling."
	default MS5607_TEMP_OVER_2048X

config MS5607_TEMP_OVER_256X
	bool "x256"

config MS5607_TEMP_OVER_512X
	bool "x512"

config MS5607_TEMP_OVER_1024X
	bool "x1024"

config MS5607_TEMP_OVER_2048X
	bool "x2048"

config MS5607_TEMP_OVER_4096X
	bool "x4096"

endchoice

endif # MS5607
