[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210331140238.jl3qprpqhqave4bf@pali>
Date: Wed, 31 Mar 2021 16:02:38 +0200
From: Pali Rohár <pali@...nel.org>
To: Hermes Zhang <chenhui.zhang@...s.com>
Cc: lars@...afoo.de, Sebastian Reichel <sre@...nel.org>,
kernel@...s.com, Hermes Zhang <chenhuiz@...s.com>,
linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] power: supply: bq27xxx: Return the value instead of
-ENODATA
On Wednesday 31 March 2021 21:51:41 Hermes Zhang wrote:
> From: Hermes Zhang <chenhuiz@...s.com>
>
> It might be better to return value (e.g. 65535) instead of an error
> (e.g. No data available) for the time property.
>
> Normally a common function will handle the read string and parse to
> integer for all the properties, but will have problem when read the
> time property because need to handle the NODATA error as non-error.
> So it will make simple for application which indicate success when
> read a number, otherwise as an error to handle.
>
> Signed-off-by: Hermes Zhang <chenhuiz@...s.com>
> ---
> drivers/power/supply/bq27xxx_battery.c | 3 ---
> 1 file changed, 3 deletions(-)
>
> diff --git a/drivers/power/supply/bq27xxx_battery.c b/drivers/power/supply/bq27xxx_battery.c
> index 4c4a7b1c64c5..b75e54aa8ada 100644
> --- a/drivers/power/supply/bq27xxx_battery.c
> +++ b/drivers/power/supply/bq27xxx_battery.c
> @@ -1655,9 +1655,6 @@ static int bq27xxx_battery_read_time(struct bq27xxx_device_info *di, u8 reg)
> return tval;
> }
>
> - if (tval == 65535)
> - return -ENODATA;
> -
> return tval * 60;
I'm not sure if this is correct change. If value 65535 is special which
indicates that data are not available then driver should not return
(converted) value 65535*60. If -ENODATA is there to indicate that data
are not available then -ENODATA should not be used.
And if there is application which does not handle -ENODATA for state
when data are not available then it is a bug in application.
> }
>
> --
> 2.20.1
>
Powered by blists - more mailing lists