On Wednesday 31 March 2021 21:51:41 Hermes Zhang wrote: > From: Hermes Zhang <chenh...@axis.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 <chenh...@axis.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 >