diff options
author | Ramakrishna Pallala <ramakrishna.pallala@intel.com> | 2012-05-07 00:55:58 -0400 |
---|---|---|
committer | Anton Vorontsov <cbouatmailru@gmail.com> | 2012-06-19 19:48:08 -0400 |
commit | 5fc55bc8225d5a5c13b978e3e3dbf51e6cd6a333 (patch) | |
tree | c0e8412fa7b3e9c2272aa888f0b80a48ffecfa20 /drivers/power | |
parent | 19dd6bcd1136d254c1f12b0f69e827c3e1679b43 (diff) |
max17042_battery: Support CHARGE_COUNTER power supply attribute
This patch adds the support for CHARGE_COUNTER power supply attribute
to max17042/47 driver.
Note:QH(Charge Counter) register is not documented in max17042 the Spec.
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
Diffstat (limited to 'drivers/power')
-rw-r--r-- | drivers/power/max17042_battery.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/power/max17042_battery.c b/drivers/power/max17042_battery.c index 140788b309f8..74abc6c755b4 100644 --- a/drivers/power/max17042_battery.c +++ b/drivers/power/max17042_battery.c | |||
@@ -113,6 +113,7 @@ static enum power_supply_property max17042_battery_props[] = { | |||
113 | POWER_SUPPLY_PROP_VOLTAGE_OCV, | 113 | POWER_SUPPLY_PROP_VOLTAGE_OCV, |
114 | POWER_SUPPLY_PROP_CAPACITY, | 114 | POWER_SUPPLY_PROP_CAPACITY, |
115 | POWER_SUPPLY_PROP_CHARGE_FULL, | 115 | POWER_SUPPLY_PROP_CHARGE_FULL, |
116 | POWER_SUPPLY_PROP_CHARGE_COUNTER, | ||
116 | POWER_SUPPLY_PROP_TEMP, | 117 | POWER_SUPPLY_PROP_TEMP, |
117 | POWER_SUPPLY_PROP_CURRENT_NOW, | 118 | POWER_SUPPLY_PROP_CURRENT_NOW, |
118 | POWER_SUPPLY_PROP_CURRENT_AVG, | 119 | POWER_SUPPLY_PROP_CURRENT_AVG, |
@@ -201,6 +202,13 @@ static int max17042_get_property(struct power_supply *psy, | |||
201 | 202 | ||
202 | val->intval = ret * 1000 / 2; | 203 | val->intval = ret * 1000 / 2; |
203 | break; | 204 | break; |
205 | case POWER_SUPPLY_PROP_CHARGE_COUNTER: | ||
206 | ret = max17042_read_reg(chip->client, MAX17042_QH); | ||
207 | if (ret < 0) | ||
208 | return ret; | ||
209 | |||
210 | val->intval = ret * 1000 / 2; | ||
211 | break; | ||
204 | case POWER_SUPPLY_PROP_TEMP: | 212 | case POWER_SUPPLY_PROP_TEMP: |
205 | ret = max17042_read_reg(chip->client, MAX17042_TEMP); | 213 | ret = max17042_read_reg(chip->client, MAX17042_TEMP); |
206 | if (ret < 0) | 214 | if (ret < 0) |