Commit 4aefe1c2 authored by Andrea Merello's avatar Andrea Merello Committed by Jonathan Cameron
Browse files

iio: imu: add Bosch Sensortec BNO055 core driver



Add the core driver for the BNO055 IMU from Bosch. This IMU can be
connected via both serial and I2C busses; separate patches will add support
for them.

The driver supports "AMG" (Accelerometer, Magnetometer, Gyroscope) mode,
that provides raw data from the said internal sensors, and a couple of
"fusion" modes (i.e. the IMU also does calculations in order to provide
euler angles, quaternions, linear acceleration and gravity measurements).

In fusion modes the AMG data is still available (with some calibration
refinements done by the IMU), but certain settings such as low pass filters
cut-off frequency and sensors' ranges are fixed, while in AMG mode they can
be customized; this is why AMG mode can still be interesting.

Signed-off-by: default avatarAndrea Merello <andrea.merello@iit.it>
Link: https://lore.kernel.org/r/20220907132205.28021-9-andrea.merello@iit.it


Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent e0d27ea3
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -52,6 +52,7 @@ config ADIS16480
	  ADIS16485, ADIS16488 inertial sensors.

source "drivers/iio/imu/bmi160/Kconfig"
source "drivers/iio/imu/bno055/Kconfig"

config FXOS8700
	tristate
+1 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ adis_lib-$(CONFIG_IIO_ADIS_LIB_BUFFER) += adis_buffer.o
obj-$(CONFIG_IIO_ADIS_LIB) += adis_lib.o

obj-y += bmi160/
obj-y += bno055/

obj-$(CONFIG_FXOS8700) += fxos8700_core.o
obj-$(CONFIG_FXOS8700_I2C) += fxos8700_i2c.o
+4 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0

config BOSCH_BNO055
	tristate
+3 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0

obj-$(CONFIG_BOSCH_BNO055) += bno055.o
+1685 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading