diff options
author | Sivaram Nair <sivaramn@nvidia.com> | 2013-04-17 14:32:16 +0300 |
---|---|---|
committer | Riham Haidar <rhaidar@nvidia.com> | 2013-04-18 12:51:50 -0700 |
commit | b0e02ec66549d0dffdf88868002c25b7c2c4d0d7 (patch) | |
tree | 8a78dc835bf096a7bca0e52ceb3c8a1c0ce6eb5e /drivers/power | |
parent | 0f06b19226be7f138404cdaa13c0414f84855418 (diff) |
power: max77665: add sysfs to display OC count
A new read-only sysfs entry is added to display the OC interrupt count.
Change-Id: I967d34c4c7c55d3fc6490fccecae7c60904c76ad
Signed-off-by: Sivaram Nair <sivaramn@nvidia.com>
Reviewed-on: http://git-master/r/220166
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Juha Tukkinen <jtukkinen@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Diffstat (limited to 'drivers/power')
-rw-r--r-- | drivers/power/max77665-charger.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/power/max77665-charger.c b/drivers/power/max77665-charger.c index a4569293302c..2f3317123772 100644 --- a/drivers/power/max77665-charger.c +++ b/drivers/power/max77665-charger.c @@ -83,6 +83,7 @@ struct max77665_charger { struct alarm wdt_alarm; struct delayed_work wdt_ack_work; struct wake_lock wdt_wake_lock; + unsigned int oc_count; }; static enum power_supply_property max77665_ac_props[] = { @@ -462,6 +463,9 @@ static int max77665_update_charger_status(struct max77665_charger *charger) } dev_dbg(charger->dev, "CHG_INT = 0x%02x\n", read_val); + if (read_val & BAT_I) + charger->oc_count++; + if (read_val & CHG_I) { ret = max77665_read_reg(charger, MAX77665_CHG_INT_OK, &read_val); @@ -584,9 +588,19 @@ static ssize_t max77665_show_battery_oc_state(struct device *dev, static DEVICE_ATTR(oc_state, 0644, max77665_show_battery_oc_state, max77665_set_battery_oc_state); +static ssize_t max77665_show_battery_oc_count(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max77665_charger *charger = dev_get_drvdata(dev); + return sprintf(buf, "%u\n", charger->oc_count); +} + +static DEVICE_ATTR(oc_count, 0444, max77665_show_battery_oc_count, NULL); + static struct attribute *max77665_chg_attributes[] = { &dev_attr_oc_threshold.attr, &dev_attr_oc_state.attr, + &dev_attr_oc_count.attr, NULL, }; |