Re: [PATCH 3/3] power/axp288_fuel_gauge: axp288 fuel gauge driver

From: Todd E Brandt
Date: Wed Jan 21 2015 - 15:52:47 EST


On Sun, Jan 18, 2015 at 11:49:27AM +0100, Sebastian Reichel wrote:
> Hi,
>
> On Wed, Jan 07, 2015 at 01:26:55PM -0800, Todd E Brandt wrote:
> > X-Power AXP288 PMIC Fuel Gauge Driver
> >
> > new power_supply driver at driver/power
> > interfaces with the axp20x mfd driver as a cell
> > provides battery info and monitors for changes
> > generates alerts on temperature and capacity issues
> >
> > [...]
> >
> > +static int fuel_gauge_battery_health(struct axp288_fg_info *info)
> > +{
> > + int temp, vocv;
> > + int ret, health = POWER_SUPPLY_HEALTH_UNKNOWN;
> > +
> > + ret = fuel_gauge_get_btemp(info, &temp);
> > + if (ret < 0)
> > + goto health_read_fail;
> > +
> > + ret = fuel_gauge_get_vocv(info, &vocv);
> > + if (ret < 0)
> > + goto health_read_fail;
> > +
> > + if (vocv > info->pdata->max_volt)
> > + health = POWER_SUPPLY_HEALTH_OVERVOLTAGE;
> > + else if (temp > info->pdata->max_temp ||
> > + temp < info->pdata->min_temp)
> > + health = POWER_SUPPLY_HEALTH_OVERHEAT;
>
> if (temp < info->pdata->min_temp)
> health = POWER_SUPPLY_HEALTH_COLD;

Will add in v2, thanks.

>
> > + else if (vocv < info->pdata->min_volt)
> > + health = POWER_SUPPLY_HEALTH_DEAD;
> > + else
> > + health = POWER_SUPPLY_HEALTH_GOOD;
> > +
> > +health_read_fail:
> > + return health;
> > +}
> >
> > [...]
> >
> > +static int axp288_fuel_gauge_remove(struct platform_device *pdev)
> > +{
> > + return 0;
> > +}
>
> You can drop this function if nothing needs to be cleaned, but
> that's not the case, so where is the cleanup code?

You're right, I believe it needs:

cancel_delayed_work_sync(&info->status_monitor);
power_supply_unregister(&info->bat);

will add in v2, thanks

>
> > [...]
>
> -- Sebastian


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/