# ST Microelectronics IIS2ICLX 2-axis accelerometer sensor driver

# Copyright (c) 2020 STMicroelectronics
# SPDX-License-Identifier: Apache-2.0

menuconfig IIS2ICLX
	bool "IIS2ICLX I2C/SPI accelerometer Chip"
	depends on I2C || SPI
	select HAS_STMEMSC
	select USE_STDC_IIS2ICLX
	help
	  Enable driver for IIS2ICLX accelerometer
	  sensor.

if IIS2ICLX

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

config IIS2ICLX_TRIGGER_NONE
	bool "No trigger"

config IIS2ICLX_TRIGGER_GLOBAL_THREAD
	bool "Use global thread"
	depends on GPIO
	select IIS2ICLX_TRIGGER

config IIS2ICLX_TRIGGER_OWN_THREAD
	bool "Use own thread"
	depends on GPIO
	select IIS2ICLX_TRIGGER

endchoice

config IIS2ICLX_TRIGGER
	bool

if IIS2ICLX_TRIGGER

config IIS2ICLX_THREAD_PRIORITY
	int "Thread priority"
	depends on IIS2ICLX_TRIGGER_OWN_THREAD
	default 10
	help
	  Priority of thread used by the driver to handle interrupts.

config IIS2ICLX_THREAD_STACK_SIZE
	int "Thread stack size"
	depends on IIS2ICLX_TRIGGER_OWN_THREAD
	default 1024
	help
	  Stack size of thread used by the driver to handle interrupts.

endif # IIS2ICLX_TRIGGER

config IIS2ICLX_ENABLE_TEMP
	bool "Enable temperature"
	help
	  Enable/disable temperature

config IIS2ICLX_SENSORHUB
	bool "Enable I2C sensorhub feature"
	help
	  Enable/disable internal sensorhub. You can enable
	  a maximum of two external sensors (if more than two are enabled
	  the system would enumerate only the first two found)

if IIS2ICLX_SENSORHUB

config IIS2ICLX_EXT_LIS2MDL
	bool "Enable LIS2MDL as external sensor"

config IIS2ICLX_EXT_IIS2MDC
	bool "Enable IIS2MDC as external sensor"

config IIS2ICLX_EXT_LPS22HH
	bool "Enable LPS22HH as external sensor"

config IIS2ICLX_EXT_HTS221
	bool "Enable HTS221 as external sensor"

config IIS2ICLX_EXT_LPS22HB
	bool "Enable LPS22HB as external sensor"

endif # IIS2ICLX_SENSORHUB

menu "Attributes"

config IIS2ICLX_ACCEL_FS
	int "Accelerometer full-scale range"
	default 0
	help
	  Specify the default accelerometer full-scale range.
	  An X value for the config represents a range of +/- X G. Valid values
	  are:
	  0:  Full Scale selected at runtime
	  500:  +/- 500mg
	  1000: +/- 1g
	  2000: +/- 2g
	  3000: +/- 3g

config IIS2ICLX_ACCEL_ODR
	int "Accelerometer Output data rate frequency"
	range 0 10
	default 0
	help
	  Specify the default accelerometer output data rate expressed in
	  samples per second (Hz).
	  0: ODR selected at runtime
	  1: 12.5Hz
	  2: 26Hz
	  3: 52Hz
	  4: 104Hz
	  5: 208Hz
	  6: 416Hz
	  7: 833Hz
	  8: 1660Hz
	  9: 3330Hz
	  10: 6660Hz
endmenu

endif # IIS2ICLX
