On Thu, 10 Dec 2020 14:15:40 -0800 Gwendal Grignou <gwendal@xxxxxxxxxxxx> wrote: > Add timestamp channel in list of channel, to allow retrieving timestamps > when events are produced. Giving IIO naming, events would be thresholds rather than buffered flow that you are talking about here. Not hugely important though. > > Signed-off-by: Gwendal Grignou <gwendal@xxxxxxxxxxxx> > --- > Changes in v3: none. > > drivers/iio/light/acpi-als.c | 11 +++++------ > 1 file changed, 5 insertions(+), 6 deletions(-) > > diff --git a/drivers/iio/light/acpi-als.c b/drivers/iio/light/acpi-als.c > index 1eafd0b24e182..ff0ecec65fae4 100644 > --- a/drivers/iio/light/acpi-als.c > +++ b/drivers/iio/light/acpi-als.c > @@ -45,24 +45,23 @@ static const struct iio_chan_spec acpi_als_channels[] = { > .info_mask_separate = BIT(IIO_CHAN_INFO_RAW) | > BIT(IIO_CHAN_INFO_PROCESSED), > }, > + IIO_CHAN_SOFT_TIMESTAMP(1), > }; > > /* > * The event buffer contains timestamp and all the data from > * the ACPI0008 block. There are multiple, but so far we only > - * support _ALI (illuminance). Once someone adds new channels > - * to acpi_als_channels[], the evt_buffer below will grow > - * automatically. > + * support _ALI (illuminance): > + * One channel, paddind and timestamp. padding > */ > -#define ACPI_ALS_EVT_NR_SOURCES ARRAY_SIZE(acpi_als_channels) > #define ACPI_ALS_EVT_BUFFER_SIZE \ > - (sizeof(s64) + (ACPI_ALS_EVT_NR_SOURCES * sizeof(s32))) > + (sizeof(s32) + sizeof(s32) + sizeof(s64)) > > struct acpi_als { > struct acpi_device *device; > struct mutex lock; > > - s32 evt_buffer[ACPI_ALS_EVT_BUFFER_SIZE]; > + s32 evt_buffer[ACPI_ALS_EVT_BUFFER_SIZE / sizeof(s32)] __aligned(8); > }; > > /*