aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iio
diff options
context:
space:
mode:
authorDaniel Baluta <daniel.baluta@intel.com>2016-04-29 07:42:35 -0400
committerJonathan Cameron <jic23@kernel.org>2016-05-04 05:51:39 -0400
commit216912e3f1aa6c7216ba7913c8694c41c885fa04 (patch)
tree42962d14d5abe87e3738a3ccd8a49ce5521e7236 /drivers/iio
parent331dd5be97a9a241329a99cbe19e217273ae541b (diff)
imu: bmi160: Add avail frequency and scale attributes
Signed-off-by: Daniel Baluta <daniel.baluta@intel.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'drivers/iio')
-rw-r--r--drivers/iio/imu/bmi160/bmi160_core.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/drivers/iio/imu/bmi160/bmi160_core.c b/drivers/iio/imu/bmi160/bmi160_core.c
index 0bf92b06d7d8..914e2e7971be 100644
--- a/drivers/iio/imu/bmi160/bmi160_core.c
+++ b/drivers/iio/imu/bmi160/bmi160_core.c
@@ -20,6 +20,7 @@
20#include <linux/iio/triggered_buffer.h> 20#include <linux/iio/triggered_buffer.h>
21#include <linux/iio/trigger_consumer.h> 21#include <linux/iio/trigger_consumer.h>
22#include <linux/iio/buffer.h> 22#include <linux/iio/buffer.h>
23#include <linux/iio/sysfs.h>
23 24
24#include "bmi160.h" 25#include "bmi160.h"
25 26
@@ -466,10 +467,36 @@ static int bmi160_write_raw(struct iio_dev *indio_dev,
466 return 0; 467 return 0;
467} 468}
468 469
470static
471IIO_CONST_ATTR(in_accel_sampling_frequency_available,
472 "0.78125 1.5625 3.125 6.25 12.5 25 50 100 200 400 800 1600");
473static
474IIO_CONST_ATTR(in_anglvel_sampling_frequency_available,
475 "25 50 100 200 400 800 1600 3200");
476static
477IIO_CONST_ATTR(in_accel_scale_available,
478 "0.000598 0.001197 0.002394 0.004788");
479static
480IIO_CONST_ATTR(in_anglvel_scale_available,
481 "0.001065 0.000532 0.000266 0.000133 0.000066");
482
483static struct attribute *bmi160_attrs[] = {
484 &iio_const_attr_in_accel_sampling_frequency_available.dev_attr.attr,
485 &iio_const_attr_in_anglvel_sampling_frequency_available.dev_attr.attr,
486 &iio_const_attr_in_accel_scale_available.dev_attr.attr,
487 &iio_const_attr_in_anglvel_scale_available.dev_attr.attr,
488 NULL,
489};
490
491static const struct attribute_group bmi160_attrs_group = {
492 .attrs = bmi160_attrs,
493};
494
469static const struct iio_info bmi160_info = { 495static const struct iio_info bmi160_info = {
470 .driver_module = THIS_MODULE, 496 .driver_module = THIS_MODULE,
471 .read_raw = bmi160_read_raw, 497 .read_raw = bmi160_read_raw,
472 .write_raw = bmi160_write_raw, 498 .write_raw = bmi160_write_raw,
499 .attrs = &bmi160_attrs_group,
473}; 500};
474 501
475static const char *bmi160_match_acpi_device(struct device *dev) 502static const char *bmi160_match_acpi_device(struct device *dev)