Linux Audio

Check our new training course

Loading...
# Kconfig - LIS3DH Three Axis Accelerometer configuration options

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

menuconfig LIS3DH
	bool
	prompt "LIS3DH Three Axis Accelerometer"
	depends on SENSOR && I2C
	default n
	help
	  Enable driver for LIS3DH I2C-based triaxial accelerometer sensor.

config LIS3DH_NAME
	string
	prompt "Driver name"
	default "LIS3DH"
	depends on LIS3DH
	help
	  Device name with which the LIS3DH sensor is identified.

config LIS3DH_I2C_ADDR
	hex
	prompt "LIS3DH I2C address"
	depends on LIS3DH
	default 0x18
	help
	  I2C address of the LIS3DH sensor.

	  0x18: Choose this option if the SDO pin is pulled to GND.
	  0x19: Choose this option if the SDO pin is pulled to VDDIO.

config LIS3DH_I2C_MASTER_DEV_NAME
	string
	prompt "I2C master where LIS3DH is connected"
	depends on LIS3DH
	default "I2C_0"
	help
	  Specify the device name of the I2C master device to which LIS3DH is
	  connected.

choice
	prompt "Trigger mode"
	depends on LIS3DH
	default LIS3DH_TRIGGER_GLOBAL_THREAD
	help
	  Specify the type of triggering to be used by the driver.

config LIS3DH_TRIGGER_NONE
	bool
	prompt "No trigger"

config LIS3DH_TRIGGER_GLOBAL_THREAD
	bool
	prompt "Use global thread"
	depends on GPIO
	select LIS3DH_TRIGGER

config LIS3DH_TRIGGER_OWN_THREAD
	bool
	prompt "Use own thread"
	depends on GPIO
	select LIS3DH_TRIGGER

endchoice

config LIS3DH_TRIGGER
	bool
	depends on LIS3DH

config LIS3DH_GPIO_DEV_NAME
	string
	prompt "GPIO device"
	default "GPIO_0"
	depends on LIS3DH && LIS3DH_TRIGGER
	help
	  The device name of the GPIO device to which the LIS3DH interrupt pins
	  are connected.

config LIS3DH_GPIO_PIN_NUM
	int
	prompt "Interrupt GPIO pin number"
	default 0
	depends on LIS3DH && LIS3DH_TRIGGER
	help
	  The number of the GPIO on which the interrupt signal from the LIS3DH
	  chip will be received.

config LIS3DH_THREAD_PRIORITY
	int
	prompt "Thread priority"
	depends on LIS3DH && LIS3DH_TRIGGER_OWN_THREAD
	default 10
	help
	  Priority of thread used by the driver to handle interrupts.

config LIS3DH_THREAD_STACK_SIZE
	int
	prompt "Thread stack size"
	depends on LIS3DH && LIS3DH_TRIGGER_OWN_THREAD
	default 1024
	help
	  Stack size of thread used by the driver to handle interrupts.

choice
	prompt "Acceleration measurement range"
	depends on LIS3DH
	default LIS3DH_ACCEL_RANGE_2G
	help
	  Measurement full scale range for acceleration values.

config LIS3DH_ACCEL_RANGE_2G
	bool
	prompt "+/-2g"

config LIS3DH_ACCEL_RANGE_4G
	bool
	prompt "+/-4g"

config LIS3DH_ACCEL_RANGE_8G
	bool
	prompt "+/-8g"

config LIS3DH_ACCEL_RANGE_16G
	bool
	prompt "+/-16g"

endchoice

choice
	prompt "Power mode"
	depends on LIS3DH
	default LIS3DH_POWER_MODE_NORMAL
	help
	  Choose between normal or low power operation mode for chip.

config LIS3DH_POWER_MODE_NORMAL
	bool
	prompt "normal"

config LIS3DH_POWER_MODE_LOW
	bool
	prompt "low"

endchoice

choice
	prompt "Data rate frequency"
	depends on LIS3DH
	default LIS3DH_ODR_1
	help
	  Data rate frequency of acceleration data.

config LIS3DH_ODR_1
	bool
	prompt "1Hz"

config LIS3DH_ODR_2
	bool
	prompt "10Hz"

config LIS3DH_ODR_3
	bool
	prompt "25Hz"

config LIS3DH_ODR_4
	bool
	prompt "50Hz"

config LIS3DH_ODR_5
	bool
	prompt "100Hz"

config LIS3DH_ODR_6
	bool
	prompt "200Hz"

config LIS3DH_ODR_7
	bool
	prompt "400Hz"

config LIS3DH_ODR_8
	bool
	prompt "1.6KHz"
	depends on LIS3DH_POWER_MODE_LOW

config LIS3DH_ODR_9_NORMAL
	bool
	prompt "1.25KHz"
	depends on LIS3DH_POWER_MODE_NORMAL

config LIS3DH_ODR_9_LOW
	bool
	prompt "5KHz"
	depends on LIS3DH_POWER_MODE_LOW

endchoice