Commit fc02a731 authored by Alexandru Ardelean's avatar Alexandru Ardelean Committed by Jonathan Cameron

iio: hid-sensors: use iio_triggered_buffer_setup_ext()

This change switches to the new iio_triggered_buffer_setup_ext()
function and removes the iio_buffer_set_attrs() call, for assigning the
HW FIFO attributes to the buffer.
Signed-off-by: default avatarAlexandru Ardelean <alexandru.ardelean@analog.com>
Reviewed-by: default avatarAndy Shevchenko <andy.shevchenko@gmail.com>
Link: https://lore.kernel.org/r/20200929125949.69934-9-alexandru.ardelean@analog.comSigned-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent 165aea80
...@@ -84,15 +84,6 @@ static const struct attribute *hid_sensor_fifo_attributes[] = { ...@@ -84,15 +84,6 @@ static const struct attribute *hid_sensor_fifo_attributes[] = {
NULL, NULL,
}; };
static void hid_sensor_setup_batch_mode(struct iio_dev *indio_dev,
struct hid_sensor_common *st)
{
if (!hid_sensor_batch_mode_supported(st))
return;
iio_buffer_set_attrs(indio_dev->buffer, hid_sensor_fifo_attributes);
}
static int _hid_sensor_power_state(struct hid_sensor_common *st, bool state) static int _hid_sensor_power_state(struct hid_sensor_common *st, bool state)
{ {
int state_val; int state_val;
...@@ -247,11 +238,18 @@ static const struct iio_trigger_ops hid_sensor_trigger_ops = { ...@@ -247,11 +238,18 @@ static const struct iio_trigger_ops hid_sensor_trigger_ops = {
int hid_sensor_setup_trigger(struct iio_dev *indio_dev, const char *name, int hid_sensor_setup_trigger(struct iio_dev *indio_dev, const char *name,
struct hid_sensor_common *attrb) struct hid_sensor_common *attrb)
{ {
const struct attribute **fifo_attrs;
int ret; int ret;
struct iio_trigger *trig; struct iio_trigger *trig;
ret = iio_triggered_buffer_setup(indio_dev, &iio_pollfunc_store_time, if (hid_sensor_batch_mode_supported(attrb))
NULL, NULL); fifo_attrs = hid_sensor_fifo_attributes;
else
fifo_attrs = NULL;
ret = iio_triggered_buffer_setup_ext(indio_dev,
&iio_pollfunc_store_time,
NULL, NULL, fifo_attrs);
if (ret) { if (ret) {
dev_err(&indio_dev->dev, "Triggered Buffer Setup Failed\n"); dev_err(&indio_dev->dev, "Triggered Buffer Setup Failed\n");
return ret; return ret;
...@@ -276,8 +274,6 @@ int hid_sensor_setup_trigger(struct iio_dev *indio_dev, const char *name, ...@@ -276,8 +274,6 @@ int hid_sensor_setup_trigger(struct iio_dev *indio_dev, const char *name,
attrb->trigger = trig; attrb->trigger = trig;
indio_dev->trig = iio_trigger_get(trig); indio_dev->trig = iio_trigger_get(trig);
hid_sensor_setup_batch_mode(indio_dev, attrb);
ret = pm_runtime_set_active(&indio_dev->dev); ret = pm_runtime_set_active(&indio_dev->dev);
if (ret) if (ret)
goto error_unreg_trigger; goto error_unreg_trigger;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment