aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnmin Hsu <anmin.hsu@mediatek.com>2015-10-01 23:46:42 +0800
committerMister Oyster <oysterized@gmail.com>2017-05-11 17:14:29 +0200
commit0b0b444cca9bc25171db53b9c8150385043a1aa1 (patch)
tree8f1266ebf928aa09798747bcc90b6ad476a0e689
parentecf7438fe50bc0a3e0a53085125b3bc67626f403 (diff)
downloadandroid_kernel_m2note-0b0b444cca9bc25171db53b9c8150385043a1aa1.tar.gz
Fuel Gauge: fix suspend/resume calculation
[Detail] 1. bat volt is wrong in the fuel gauge algorithm of suspend/resume 2. fuel gauge log cannot print out [Solution] 1. fix correct bat volt in resume 2. fix fuel gauge log level [Feature] Battery Management MTK-Commit-Id: 81ea0e76922c6280d1f7dcdb601d6ba04cf21369 Change-Id: Ibfd975bc72a373c8b15a0737361c50b7054fa865 Signed-off-by: Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com> CR-Id: ALPS02314143 (cherry picked from commit bd1c50b3720b0e12f3e6b8d0fb32dcab1ca41461) Backported for 3.10 Signed-off-by: Mister Oyster <oysterized@gmail.com>
-rw-r--r--drivers/power/mediatek/battery_meter.c22
1 files changed, 2 insertions, 20 deletions
diff --git a/drivers/power/mediatek/battery_meter.c b/drivers/power/mediatek/battery_meter.c
index 64ffd8fca..2e584e937 100644
--- a/drivers/power/mediatek/battery_meter.c
+++ b/drivers/power/mediatek/battery_meter.c
@@ -2643,27 +2643,17 @@ kal_int32 get_dynamic_period(int first_use, int first_wakeup_time, int battery_c
static kal_int32 last_time=0;
kal_int32 ret_val = -1;
- int check_fglog = 0;
kal_int32 I_sleep = 0;
kal_int32 new_time = 0;
kal_int32 vbat_val = 0;
int ret = 0;
- check_fglog = Enable_FGADC_LOG;
- if (check_fglog == 0) {
- /* Enable_FGADC_LOG=1; */
- }
-
-
vbat_val = g_sw_vbat_temp;
ret = battery_meter_ctrl(BATTERY_METER_CMD_GET_HW_FG_CURRENT, &current_instant);
ret = battery_meter_ctrl(BATTERY_METER_CMD_GET_HW_FG_CAR, &car_instant);
- if (check_fglog == 0) {
- /* Enable_FGADC_LOG=0; */
- }
if (car_instant < 0) {
car_instant = car_instant - (car_instant * 2);
}
@@ -2683,16 +2673,8 @@ kal_int32 get_dynamic_period(int first_use, int first_wakeup_time, int battery_c
I_sleep = ((car_wakeup - car_sleep) * 3600) / last_time; /* unit: second */
if (I_sleep == 0) {
- if (check_fglog == 0) {
- /* Enable_FGADC_LOG=1; */
- }
-
ret = battery_meter_ctrl(BATTERY_METER_CMD_GET_HW_FG_CURRENT, &I_sleep);
-
I_sleep = I_sleep / 10;
- if (check_fglog == 0) {
- /* Enable_FGADC_LOG=0; */
- }
}
if (I_sleep == 0) {
@@ -3298,10 +3280,10 @@ static ssize_t fgadc_log_write(struct file *filp, const char __user *buff,
if (proc_fgadc_data == '1') {
bm_print(BM_LOG_CRTI, "enable FGADC driver log system\n");
- Enable_FGADC_LOG = 1;
+ Enable_FGADC_LOG = BM_LOG_CRTI;
} else if (proc_fgadc_data == '2') {
bm_print(BM_LOG_CRTI, "enable FGADC driver log system:2\n");
- Enable_FGADC_LOG = 2;
+ Enable_FGADC_LOG = BM_LOG_FULL;
} else {
bm_print(BM_LOG_CRTI, "Disable FGADC driver log system\n");
Enable_FGADC_LOG = 0;