lkml.org 
[lkml]   [2014]   [Mar]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v2 1/3] power_supply: modelgauge_battery: Maxim ModelGauge ICs gauge
From
Date
And one more comment:

On Sun, 2014-02-02 at 02:23 +0400, Vladimir Barinov wrote:
> +static int modelgauge_get_property(struct power_supply *psy,
> + enum power_supply_property psp,
> + union power_supply_propval *val)
> +{
> + struct modelgauge_priv *priv = container_of(psy,
> + struct modelgauge_priv,
> + battery);
> + struct regmap *regmap = priv->regmap;
> + struct modelgauge_platform_data *pdata = priv->pdata;
> + int reg;
> + int ret;
> +
> + switch (psp) {
> + case POWER_SUPPLY_PROP_STATUS:
> + if (pdata && pdata->get_charging_status)
> + val->intval = pdata->get_charging_status();
> + else
> + val->intval = POWER_SUPPLY_STATUS_UNKNOWN;
> + break;
> + case POWER_SUPPLY_PROP_VOLTAGE_NOW:
> + ret = regmap_read(regmap, MODELGAUGE_VCELL_REG, &reg);
> + if (ret < 0)
> + return ret;
> +
> + val->intval = modelgauge_lsb_to_uvolts(priv, reg);
> + break;
> + case POWER_SUPPLY_PROP_VOLTAGE_OCV:
> + /* Unlock model access */
> + regmap_write(regmap, MODELGAUGE_UNLOCK_REG,
> + MODELGAUGE_UNLOCK_VALUE);
> + ret = regmap_read(regmap, MODELGAUGE_OCV_REG, &reg);
> + /* Lock model access */
> + regmap_write(regmap, MODELGAUGE_UNLOCK_REG, 0);
> + if (ret < 0)
> + return ret;
> +
> + val->intval = modelgauge_lsb_to_uvolts(priv, reg);
> + break;
> + case POWER_SUPPLY_PROP_CAPACITY:
> + ret = regmap_read(regmap, MODELGAUGE_SOC_REG, &reg);
> + if (ret < 0)
> + return ret;
> +
> + val->intval = reg / (1 << priv->soc_shift);
> + break;
> + case POWER_SUPPLY_PROP_TEMP:
> + if (pdata && pdata->get_temperature)
> + val->intval = pdata->get_temperature();
> + else
> + val->intval = 25;

If pdata->get_temperature() is not supplied then probably the driver
should not support POWER_SUPPLY_PROP_TEMP at all. I think it is better
not to report any temperature than to report a wrong one.


Best regards,
Krzysztof



\
 
 \ /
  Last update: 2014-03-04 13:41    [W:1.049 / U:0.528 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site