Boot Linux faster!

Check our new training course

Boot Linux faster!

Check our new training course
and Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

menuconfig BMG160
	bool "Bosch BMG160 gyroscope support"
	depends on SENSOR
	depends on I2C
	default n
	help
	  Enable Bosch BMG160 gyroscope support.

config BMG160_SYS_LOG_LEVEL
	int "BMG160 Log level"
	depends on SYS_LOG && BMG160
	default 0
	range 0 4
	help
	  Sets log level for BMG160 driver.
	  Levels are:
	  0 OFF, do not write
	  1 ERROR, only write SYS_LOG_ERR
	  2 WARNING, write SYS_LOG_WRN in adition to previous level
	  3 INFO, write SYS_LOG_INF in adition to previous levels
	  4 DEBUG, write SYS_LOG_DBG in adition to previous levels

config BMG160_INIT_PRIORITY
	int
	prompt "BMG160 Init priority"
	default 70
	depends on BMG160
	help
	  Device driver initialization priority.
	  As the device is connected to SPI bus, its driver has
	  to be initialized after the SPI one.

config BMG160_DRV_NAME
	string "Driver's name"
	depends on BMG160
	default "bmg160"
	help
	  Name for the BMG160 driver which will be used for binding.

config BMG160_I2C_PORT_NAME
	string "I2C master controller port name"
	depends on BMG160
	default "I2C_0"
	help
	  Master I2C port name through which BMG160 chip is accessed.

config BMG160_I2C_ADDR
	hex "BMG160 I2C address"
	depends on BMG160
	default 0x68
	help
	  BMG160 chip's I2C address. Chip supports two addresses: 0x68 and 0x69 (if
	  SDO pin is pulled to GND).

choice
	prompt "BMG160 I2C bus speed"
	default BMG160_I2C_SPEED_STANDARD
	depends on BMG160

config BMG160_I2C_SPEED_STANDARD
	bool "Standard"
	help
	  Standard bus speed of up to 100kHz.

config BMG160_I2C_SPEED_FAST
	bool "Fast"
	help
	  Fast bus speed of up to 400KHz.
endchoice

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

config BMG160_TRIGGER_NONE
	bool
	prompt "No trigger"

config BMG160_TRIGGER_GLOBAL_FIBER
	bool "Use global fiber"
	depends on SYSTEM_WORKQUEUE
	select BMG160_TRIGGER

config BMG160_TRIGGER_OWN_FIBER
	bool "Use own fiber"
	select BMG160_TRIGGER
endchoice

config BMG160_TRIGGER
	bool
	depends on BMG160

config BMG160_FIBER_PRIORITY
	int "Own fiber priority"
	depends on BMG160 && BMG160_TRIGGER_OWN_FIBER
	default 10
	help
	  The priority of the fiber used for handling interrupts.

config BMG160_FIBER_STACK_SIZE
	int "Own fiber stack size"
	depends on BMG160 && BMG160_TRIGGER_OWN_FIBER
	default 1024
	help
	  The fiber stack size.

config BMG160_GPIO_PORT_NAME
	string "GPIO controller port name"
	depends on BMG160 && BMG160_TRIGGER
	default "GPIO_0"
	help
	  The gpio controller the interrupt pin is atteched to.

config BMG160_INT_PIN
	hex "BMG160 INT PIN"
	depends on BMG160 && BMG160_TRIGGER
	default 2
	help
	  BMG160 interrupt pin.

choice
	prompt "Gyroscope range setting."
	depends on BMG160
	default BMG160_RANGE_RUNTIME

config BMG160_RANGE_RUNTIME
	bool "Set at runtime."

config BMG160_RANGE_2000DPS
	bool "2000 DPS"

config BMG160_RANGE_1000DPS
	bool "1000 DPS"

config BMG160_RANGE_500DPS
	bool "500 DPS"

config BMG160_RANGE_250DPS
	bool "250 DPS"

config BMG160_RANGE_125DPS
	bool "125 DPS"
endchoice

choice
	prompt "Gyroscope sampling frequency."
	depends on BMG160
	default BMG160_ODR_RUNTIME

config BMG160_ODR_RUNTIME
	bool "Set at runtime."

config BMG160_ODR_100
	bool "100 Hz"

config BMG160_ODR_200
	bool "200 Hz"

config BMG160_ODR_400
	bool "400 Hz"

config BMG160_ODR_1000
	bool "1000 Hz"

config BMG160_ODR_2000
	bool "2000 Hz"
endchoice