Re: [PATCH v2 3/3] iio: temperature: mlx90632 Change return value of sensor measurement channel

From: Jonathan Cameron
Date: Sun Sep 04 2022 - 11:23:43 EST


On Sun, 4 Sep 2022 00:24:22 +0200
cmo@xxxxxxxxxxx wrote:

> From: Crt Mori <cmo@xxxxxxxxxxx>
>
> The current EINVAL value is more applicable to embedded library, where
> user can actually put the fixed value to the sensor. In case of the
> driver if the value of the channel is invalid it is better in inform
> userspace that Channel was out of range as that implies more to internal
> driver error than invalid input. It also makes for easier debugging of
> where the error comes from during the development.
>
> Signed-off-by: Crt Mori <cmo@xxxxxxxxxxx>
Hmm. That's an obscure return value - I think it's mostly going to confuse
anyone who ever gets it. So not sure this change is wise even though the
descriptive text for that one does seem very much suited to this usecase.

> ---
> drivers/iio/temperature/mlx90632.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/iio/temperature/mlx90632.c b/drivers/iio/temperature/mlx90632.c
> index 37edd324d6a1..d511d36942d3 100644
> --- a/drivers/iio/temperature/mlx90632.c
> +++ b/drivers/iio/temperature/mlx90632.c
> @@ -435,7 +435,7 @@ static int mlx90632_channel_new_select(int perform_ret, uint8_t *channel_new,
> *channel_old = 1;
> break;
> default:
> - return -EINVAL;
> + return -ECHRNG;
> }
>
> return 0;