summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorHyongbin Kim <hyongbink@nvidia.com>2013-10-10 14:21:39 +0900
committerGabby Lee <galee@nvidia.com>2013-10-13 17:13:48 -0700
commitfc3a15a409c7c1083691d5a0937c02f52dcdae22 (patch)
treebd048a938f0a69f27232f51668b93ae56dba762f /include
parent3b322b136660cdfdf51e569daa356bcc6f47fafb (diff)
power: bq2419x: Not use charging termination
BQ2419x charger generate charging termination automatically when Vbatt is under recharge threshold voltage(4208mA - 100mV = 4108mA) and charging current is below ITERM(256mA). For this reason, when Tegratab system spend more than charger power(5V*2A), unexpect charging termination occur under 99% SOC.(around 93%~98%). So we need to disable charging termination fuction and control charger manually. Disable charging when SOC over 100%(set by chg_complete_soc) and Batt voltage is over 4202mV and cahrging cuurent is under 256mA(over -256mA), besides restart charging when SOC is under 99% or Batt voltage is under 4140V, for prevent unexpected charging done. Bug 1310558 Bug 1316010 Bug 1327301 Bug 1316646 Change-Id: I6f67bde43c9b209b31d4906d869f364300c846b1 Signed-off-by: Hyongbin Kim <hyongbink@nvidia.com> Reviewed-on: http://git-master/r/289136 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Gabby Lee <galee@nvidia.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/power/bq2419x-charger.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/power/bq2419x-charger.h b/include/linux/power/bq2419x-charger.h
index 65516bacd0ee..dbf68067f9cb 100644
--- a/include/linux/power/bq2419x-charger.h
+++ b/include/linux/power/bq2419x-charger.h
@@ -118,6 +118,9 @@ struct bq2419x_vbus_platform_data {
struct bq2419x_charger_platform_data {
void (*update_status)(int, int);
int (*battery_check)(void);
+ int (*soc_check)(void);
+ int (*vcell_check)(void);
+ s32 (*current_check)(void);
int max_charge_volt_mV;
int max_charge_current_mA;
@@ -127,6 +130,7 @@ struct bq2419x_charger_platform_data {
int num_consumer_supplies;
struct regulator_consumer_supply *consumer_supplies;
int chg_restart_time;
+ int chg_complete_soc;
};
/*