On 08/01/15 10:47, Lars-Peter Clausen wrote: > On 01/07/2015 07:36 PM, Karol Wrona wrote: >> There was a need for non triggered software buffer type. It can be used when >> triggered model does not fit and INDIO_BUFFER_HARDWARE causes confusion because >> the data stream can be obtained not directly form hardware backend. >> >> Suggested-by: Jonathan Cameron <jic23@xxxxxxxxxx> >> Signed-off-by: Karol Wrona <k.wrona@xxxxxxxxxxx> > > Looks good, thanks. > > Reviewed-by: Lars-Peter Clausen <lars@xxxxxxxxxx> > Thanks for doing this. Applied to the togreg branch of iio.git - initially pushed out as testing. Jonathan >> --- >> drivers/iio/industrialio-buffer.c | 2 ++ >> include/linux/iio/iio.h | 6 ++++-- >> 2 files changed, 6 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/iio/industrialio-buffer.c b/drivers/iio/industrialio-buffer.c >> index f971f79..15e6de3 100644 >> --- a/drivers/iio/industrialio-buffer.c >> +++ b/drivers/iio/industrialio-buffer.c >> @@ -680,6 +680,8 @@ static int __iio_update_buffers(struct iio_dev *indio_dev, >> indio_dev->currentmode = INDIO_BUFFER_TRIGGERED; >> } else if (indio_dev->modes & INDIO_BUFFER_HARDWARE) { >> indio_dev->currentmode = INDIO_BUFFER_HARDWARE; >> + } else if (indio_dev->modes & INDIO_BUFFER_SOFTWARE) { >> + indio_dev->currentmode = INDIO_BUFFER_SOFTWARE; >> } else { /* Should never be reached */ >> ret = -EINVAL; >> goto error_run_postdisable; >> diff --git a/include/linux/iio/iio.h b/include/linux/iio/iio.h >> index 3642ce7..55e63fd 100644 >> --- a/include/linux/iio/iio.h >> +++ b/include/linux/iio/iio.h >> @@ -284,10 +284,11 @@ static inline s64 iio_get_time_ns(void) >> /* Device operating modes */ >> #define INDIO_DIRECT_MODE 0x01 >> #define INDIO_BUFFER_TRIGGERED 0x02 >> +#define INDIO_BUFFER_SOFTWARE 0x04 >> #define INDIO_BUFFER_HARDWARE 0x08 >> >> #define INDIO_ALL_BUFFER_MODES \ >> - (INDIO_BUFFER_TRIGGERED | INDIO_BUFFER_HARDWARE) >> + (INDIO_BUFFER_TRIGGERED | INDIO_BUFFER_HARDWARE | INDIO_BUFFER_SOFTWARE) >> >> #define INDIO_MAX_RAW_ELEMENTS 4 >> >> @@ -591,7 +592,8 @@ void devm_iio_trigger_free(struct device *dev, struct iio_trigger *iio_trig); >> static inline bool iio_buffer_enabled(struct iio_dev *indio_dev) >> { >> return indio_dev->currentmode >> - & (INDIO_BUFFER_TRIGGERED | INDIO_BUFFER_HARDWARE); >> + & (INDIO_BUFFER_TRIGGERED | INDIO_BUFFER_HARDWARE | >> + INDIO_BUFFER_SOFTWARE); >> } >> >> /** >> > > -- > To unsubscribe from this list: send the line "unsubscribe linux-iio" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html