|
@@ -48,6 +48,9 @@ ssize_t iio_buffer_read_first_n_outer(struct file *filp, char __user *buf,
|
|
struct iio_dev *indio_dev = filp->private_data;
|
|
struct iio_dev *indio_dev = filp->private_data;
|
|
struct iio_buffer *rb = indio_dev->buffer;
|
|
struct iio_buffer *rb = indio_dev->buffer;
|
|
|
|
|
|
|
|
+ if (!indio_dev->info)
|
|
|
|
+ return -ENODEV;
|
|
|
|
+
|
|
if (!rb || !rb->access->read_first_n)
|
|
if (!rb || !rb->access->read_first_n)
|
|
return -EINVAL;
|
|
return -EINVAL;
|
|
return rb->access->read_first_n(rb, n, buf);
|
|
return rb->access->read_first_n(rb, n, buf);
|
|
@@ -62,6 +65,9 @@ unsigned int iio_buffer_poll(struct file *filp,
|
|
struct iio_dev *indio_dev = filp->private_data;
|
|
struct iio_dev *indio_dev = filp->private_data;
|
|
struct iio_buffer *rb = indio_dev->buffer;
|
|
struct iio_buffer *rb = indio_dev->buffer;
|
|
|
|
|
|
|
|
+ if (!indio_dev->info)
|
|
|
|
+ return -ENODEV;
|
|
|
|
+
|
|
poll_wait(filp, &rb->pollq, wait);
|
|
poll_wait(filp, &rb->pollq, wait);
|
|
if (rb->stufftoread)
|
|
if (rb->stufftoread)
|
|
return POLLIN | POLLRDNORM;
|
|
return POLLIN | POLLRDNORM;
|