On 04/07/2016 10:59 PM, Peter Meerwald-Stadler wrote:
  static int max44000_probe(struct i2c_client *client,
                          const struct i2c_device_id *id)
  {
@@ -513,6 +569,12 @@ static int max44000_probe(struct i2c_client *client,
                return ret;
        }

+       ret = iio_triggered_buffer_setup(indio_dev, NULL, 
max44000_trigger_handler, NULL);
+       if (ret < 0) {
+               dev_err(&client->dev, "iio triggered buffer setup failed\n");
+               return ret;
+       }
+
        return iio_device_register(indio_dev);

no devm_ possible anymore :-)

It's not clear to me why explicit calls to iio_triggered_buffer_cleanup are done in every driver. Wouldn't it be possible for iio_dev_release to call iio_triggered_buffer_cleanup? That would require triggered_buffer_cleanup to explictly NULL the fields it deallocates so that duplicate cleanups don't crash.

--
Regards,
Leonard

Reply via email to