Hi, On Thu, Mar 16, 2023 at 09:38:21AM +0200, Matti Vaittinen wrote: > On 3/15/23 00:55, Sebastian Reichel wrote: > > Use standard simple-battery API for constant battery > > information like min and max voltage. This simplifies > > the driver a lot and brings automatic support for DT. > > > > Reviewed-by: Linus Walleij > > Signed-off-by: Sebastian Reichel > > --- > > drivers/power/supply/generic-adc-battery.c | 64 ++-------------------- > > include/linux/power/generic-adc-battery.h | 18 ------ > > 2 files changed, 4 insertions(+), 78 deletions(-) > > delete mode 100644 include/linux/power/generic-adc-battery.h > > > > diff --git a/drivers/power/supply/generic-adc-battery.c b/drivers/power/supply/generic-adc-battery.c > > index 771e5cfc49c3..d4f63d945b2c 100644 > > --- a/drivers/power/supply/generic-adc-battery.c > > +++ b/drivers/power/supply/generic-adc-battery.c > > @@ -22,7 +22,6 @@ > > #include > > #include > > #include > > -#include > > #include > > #define JITTER_DEFAULT 10 /* hope 10ms is enough */ > > @@ -48,9 +47,7 @@ struct gab { > > struct power_supply *psy; > > struct power_supply_desc psy_desc; > > struct iio_channel *channel[GAB_MAX_CHAN_TYPE]; > > - struct gab_platform_data *pdata; > > struct delayed_work bat_work; > > - int level; > > int status; > > bool cable_plugged; > > struct gpio_desc *charge_finished; > > @@ -70,14 +67,6 @@ static void gab_ext_power_changed(struct power_supply *psy) > > static const enum power_supply_property gab_props[] = { > > POWER_SUPPLY_PROP_STATUS, > > - POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN, > > - POWER_SUPPLY_PROP_CHARGE_EMPTY_DESIGN, > > - POWER_SUPPLY_PROP_VOLTAGE_NOW, > > - POWER_SUPPLY_PROP_CURRENT_NOW, > > - POWER_SUPPLY_PROP_TECHNOLOGY, > > - POWER_SUPPLY_PROP_VOLTAGE_MIN_DESIGN, > > - POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN, > > - POWER_SUPPLY_PROP_MODEL_NAME, > > }; > > /* > > @@ -97,17 +86,6 @@ static bool gab_charge_finished(struct gab *adc_bat) > > return gpiod_get_value(adc_bat->charge_finished); > > } > > -static int gab_get_status(struct gab *adc_bat) > > -{ > > - struct gab_platform_data *pdata = adc_bat->pdata; > > - struct power_supply_info *bat_info; > > - > > - bat_info = &pdata->battery_info; > > - if (adc_bat->level == bat_info->charge_full_design) > > - return POWER_SUPPLY_STATUS_FULL; > > Not sure if this is intentional but I don't see the POWER_SUPPLY_STATUS_FULL > being reported after applying your series. If this is intended, maybe it > could be mentioned in commit log? Right. I removed it, because 'level' is never written to and thus is always 0. Apart from that the code needs to be a bit more flexible anyways (i.e. should not just report full for exactly the same value) and we currently do not have a way to calculate the current charge value. Thus removing it makes sense at the moment. Something better can be added once we have the required infrastructure. -- Sebastian