Jagath Jog J
961db2da15
iio: accel: bma400: Add support for single and double tap events
...
Add support for single and double tap events based on the tap threshold
value, minimum quiet time before and after the tap and minimum time
between the taps in the double tap. The INT1 pin is used to interrupt
and the event is pushed to userspace.
Signed-off-by: Jagath Jog J <jagathjog1996@gmail.com >
Link: https://lore.kernel.org/r/20220831063117.4141-3-jagathjog1996@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-09-05 18:08:42 +01:00
Jagath Jog J
3cf122c20b
iio: accel: bma400: Add support for activity and inactivity events
...
Add support for activity and inactivity events for all axis based on the
threshold, duration and hysteresis value set from the userspace. INT1 pin
is used to interrupt and event is pushed to userspace.
Signed-off-by: Jagath Jog J <jagathjog1996@gmail.com >
Link: https://lore.kernel.org/r/20220505133021.22362-9-jagathjog1996@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-06-11 14:35:26 +01:00
Jagath Jog J
d024af5b39
iio: accel: bma400: Add step change event
...
Added support for event when there is a detection of step change.
INT1 pin is used to interrupt and event is pushed to userspace.
Signed-off-by: Jagath Jog J <jagathjog1996@gmail.com >
Link: https://lore.kernel.org/r/20220505133021.22362-7-jagathjog1996@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-06-11 14:35:26 +01:00
Jagath Jog J
d221de60ee
iio: accel: bma400: Add separate channel for step counter
...
Added channel for step counter which can be enable or disable
through the sysfs interface.
Signed-off-by: Jagath Jog J <jagathjog1996@gmail.com >
Link: https://lore.kernel.org/r/20220505133021.22362-6-jagathjog1996@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-06-11 14:35:26 +01:00
Jagath Jog J
ffe0ab6a96
iio: accel: bma400: Add triggered buffer support
...
Added trigger buffer support to read continuous acceleration
and temperature data from device with data ready interrupt which
is mapped to INT1 pin.
Signed-off-by: Jagath Jog J <jagathjog1996@gmail.com >
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com >
Link: https://lore.kernel.org/r/20220505133021.22362-5-jagathjog1996@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-06-11 14:35:26 +01:00
Jagath Jog J
12c99f859f
iio: accel: bma400: conversion to device-managed function
...
This is a conversion to device-managed by using devm_iio_device_register()
inside probe function. Previously the bma400 was not put into power down
mode in some error paths in probe where it now is, but that should cause
no harm.
The dev_set_drvdata() call, bma400_remove() function and hooks in the I2C
and SPI driver struct is removed as devm_iio_device_register() function is
used to automatically unregister on driver detach.
Signed-off-by: Jagath Jog J <jagathjog1996@gmail.com >
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com >
Link: https://lore.kernel.org/r/20220505133021.22362-4-jagathjog1996@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-06-11 14:35:26 +01:00
Jagath Jog J
747c7cf159
iio: accel: bma400: Fix the scale min and max macro values
...
Changing the scale macro values to match the bma400 sensitivity
for 1 LSB of all the available ranges.
Fixes: 465c811f1f ("iio: accel: Add driver for the BMA400")
Signed-off-by: Jagath Jog J <jagathjog1996@gmail.com >
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com >
Link: https://lore.kernel.org/r/20220505133021.22362-2-jagathjog1996@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-06-11 14:35:25 +01:00
Uwe Kleine-König
fa0b148eb3
iio: accel: bma400: Make bma400_remove() return void
...
When an i2c or spi driver's remove function returns a non-zero error
code nothing happens apart from emitting a generic error message. Make
this error message more device specific and return zero instead in the
remove callbacks. As the return value of bma400_remove() is unused then,
change the function to not yield a return value.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Reviewed-by: Alexandru Ardelean <ardeleanalex@gmail.com >
Link: https://lore.kernel.org/r/20211013203223.2694577-2-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2021-10-19 08:30:45 +01:00
Dan Robertson
3cf7ded15e
iio: accel: bma400: basic regulator support
...
Add support for the VDD and VDDIO regulators using the regulator
framework.
Signed-off-by: Dan Robertson <dan@dlrobertson.com >
Reviewed-by: Linus Walleij <linus.walleij@linaro.org >
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2019-12-29 15:20:02 +00:00
Dan Robertson
465c811f1f
iio: accel: Add driver for the BMA400
...
Add a IIO driver for the Bosch BMA400 3-axes ultra-low power accelerometer.
The driver supports reading from the acceleration and temperature
registers. The driver also supports reading and configuring the output data
rate, oversampling ratio, and scale.
Signed-off-by: Dan Robertson <dan@dlrobertson.com >
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com >
Reviewed-by: Linus Walleij <linus.walleij@linaro.org >
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2019-12-29 15:20:02 +00:00