lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5693FF6B.9060200@kernel.org>
Date:	Mon, 11 Jan 2016 19:15:55 +0000
From:	Jonathan Cameron <jic23@...nel.org>
To:	Crt Mori <cmo@...exis.com>
Cc:	Gabriele Mazzotta <gabriele.mzt@...il.com>,
	Hartmut Knaack <knaack.h@....de>,
	Lars-Peter Clausen <lars@...afoo.de>,
	Peter Meerwald-Stadler <pmeerw@...erw.net>, marex@...x.de,
	marxin.liska@...il.com, linux-iio@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] iio: light: acpi-als: Report data as processed rather
 than raw

On 11/01/16 10:16, Crt Mori wrote:
> On 9 January 2016 at 17:31, Jonathan Cameron <jic23@...nel.org> wrote:
>> On 07/01/16 15:21, Gabriele Mazzotta wrote:
>>> As per the ACPI specification (Revision 5.0) [1], the data coming
>>> from the sensor represent the ambient light illuminance reading
>>> expressed in lux. Use IIO_CHAN_INFO_PROCESSED instead of
>>> IIO_CHAN_INFO_RAW to signify that the data are pre-processed.
>>>
>>> [1] http://www.acpi.info/DOWNLOADS/ACPIspec50.pdf
>>>
>>> Signed-off-by: Gabriele Mazzotta <gabriele.mzt@...il.com>
>> Hm. Whilst it's a fix in a sense, the original didn't really 'break'
>> the ABI so I worry a little that this change may break others.
>> Irritating as it is, perhaps we should keep the _RAW and add _PROCESSED
>> (which will then be exactly the same value).
>> We'll also then need a comment in the code, that leaving the _RAW
>> elements was for ABI compatibility.
>>
>> What do others think?
> For this case I agree to keep both for backwards ABI compatibility,
> but then other drivers returning the data in basic units, should be
> changed from raw to processed? I do not think this was the case
> before?
It's always been the case that devices that happen to output in the
right units (or do so after a non linear transform as tends to happen
with a lot of light sensors) should mark themselves as processed
to indicate that nothing else needs be done to convert to standard
units.

Sensor hubs in particular often do the unit conversion stuff on
a separate processor, though often their chosen 'base' units differ
from ours (not always though!)

Jonathan
> 
> Crt
> 
>>
>> Jonathan
>>> ---
>>>  drivers/iio/light/acpi-als.c | 4 ++--
>>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/iio/light/acpi-als.c b/drivers/iio/light/acpi-als.c
>>> index 60537ec..a53be07 100644
>>> --- a/drivers/iio/light/acpi-als.c
>>> +++ b/drivers/iio/light/acpi-als.c
>>> @@ -54,7 +54,7 @@ static const struct iio_chan_spec acpi_als_channels[] = {
>>>                       .realbits       = 32,
>>>                       .storagebits    = 32,
>>>               },
>>> -             .info_mask_separate     = BIT(IIO_CHAN_INFO_RAW),
>>> +             .info_mask_separate     = BIT(IIO_CHAN_INFO_PROCESSED),
>>>       },
>>>  };
>>>
>>> @@ -152,7 +152,7 @@ static int acpi_als_read_raw(struct iio_dev *indio_dev,
>>>       s32 temp_val;
>>>       int ret;
>>>
>>> -     if (mask != IIO_CHAN_INFO_RAW)
>>> +     if (mask != IIO_CHAN_INFO_PROCESSED)
>>>               return -EINVAL;
>>>
>>>       /* we support only illumination (_ALI) so far. */
>>>
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-iio" in
>> the body of a message to majordomo@...r.kernel.org
>> 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@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ