mrst: Battery fixes
PATCH 1/1 mrst: Battery fixes
From: Major Lee <[email protected]>
[Resend with correct email address]
When DCDC input line over current detecting, PMIC will change charging current automatically. Logging event is enough.
Signed-off-by Major Lee <[email protected]>
Signed-off-by Alan Cox <[email protected]>
---
drivers/power/intel_mid_battery.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-)
drivers/power/intel_mid_battery.c +6 -6
@@ -61,7 +61,8 @@ MODULE_PARM_DESC(debug, "Flag to enable PMIC Battery debug messages.");#define PMIC_BATT_CHR_SBATDET_MASK (1 << 5)#define PMIC_BATT_CHR_SDCLMT_MASK (1 << 6)#define PMIC_BATT_CHR_SUSBOVP_MASK (1 << 7) -#define PMIC_BATT_CHR_EXCPT_MASK 0xC6 +#define PMIC_BATT_CHR_EXCPT_MASK 0x86 +#define PMIC_BATT_ADC_ACCCHRG_MASK (1 << 31)#define PMIC_BATT_ADC_ACCCHRGVAL_MASK 0x7FFFFFFF
@@ -304,11 +305,6 @@ static void pmic_battery_read_status(struct pmic_power_module_info *pbi) pbi->batt_status =POWER_SUPPLY_STATUS_NOT_CHARGING ;pmic_battery_log_event (BATT_EVENT_BATOVP_EXCPT ); batt_exception =1 ; - }else if (r8 &PMIC_BATT_CHR_SDCLMT_MASK ) { - pbi->batt_health =POWER_SUPPLY_HEALTH_OVERVOLTAGE ; - pbi->batt_status =POWER_SUPPLY_STATUS_NOT_CHARGING ; -pmic_battery_log_event (BATT_EVENT_DCLMT_EXCPT ); - batt_exception =1 ; }else if (r8 &PMIC_BATT_CHR_STEMP_MASK ) { pbi->batt_health =POWER_SUPPLY_HEALTH_OVERHEAT ; pbi->batt_status =POWER_SUPPLY_STATUS_NOT_CHARGING ;
@@ -316,6 +312,10 @@ static void pmic_battery_read_status(struct pmic_power_module_info *pbi) batt_exception =1 ; }else { pbi->batt_health =POWER_SUPPLY_HEALTH_GOOD ; +if (r8 &PMIC_BATT_CHR_SDCLMT_MASK ) { +/* PMIC will change charging current automatically */ +pmic_battery_log_event (pbi,BATT_EVENT_DCLMT_EXCPT ); + } } }