Re: [PATCH] iio: lidar: return -EIO on invalid signal

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Actually the INVALID status happens even it isn't out of range
sometimes roughly once every second or two. This can be from an
invalid second signal return path and etc..

So there are spurious zero readings from the triggered buffer, and
warning messages in the kernel log.

Thanks,

Matt

On Sat, Oct 31, 2015 at 2:29 AM, Jonathan Cameron <jic23@xxxxxxxxxx> wrote:
> On 25/10/15 23:07, Matt Ranostay wrote:
>> Returning zero from the measurment function has the side effect of
>> corrupting the triggered buffer readings, better to use -EIO than a
>> zero measurement reading.
> When you say 'corrupting' what do you mean?  As far as I can quickly see
> it will give a spurious 0 distance when it really means a long distance.
> Is that what you are referring to?
>
> Jonathan
>>
>> Signed-off-by: Matt Ranostay <mranostay@xxxxxxxxx>
>> ---
>>  drivers/iio/proximity/pulsedlight-lidar-lite-v2.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/iio/proximity/pulsedlight-lidar-lite-v2.c b/drivers/iio/proximity/pulsedlight-lidar-lite-v2.c
>> index 961f9f99..359beac 100644
>> --- a/drivers/iio/proximity/pulsedlight-lidar-lite-v2.c
>> +++ b/drivers/iio/proximity/pulsedlight-lidar-lite-v2.c
>> @@ -130,10 +130,10 @@ static int lidar_get_measurement(struct lidar_data *data, u16 *reg)
>>               if (ret < 0)
>>                       break;
>>
>> -             /* return 0 since laser is likely pointed out of range */
>> +             /* return -EIO since laser is likely pointed out of range */
>>               if (ret & LIDAR_REG_STATUS_INVALID) {
>>                       *reg = 0;
>> -                     ret = 0;
>> +                     ret = -EIO;
>>                       break;
>>               }
>>
>>
>
--
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



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux