From e92644d9f01233f66a09e1cd769236a100334158 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 29 Jun 2011 18:36:48 +0800 Subject: [PATCH] rk29phone:reduce heat consumption for charging --- arch/arm/mach-rk29/board-rk29-a22.c | 4 ++-- arch/arm/mach-rk29/board-rk29-phonesdk.c | 4 ++-- drivers/power/wm831x_charger_display.c | 12 +++++++++--- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/arch/arm/mach-rk29/board-rk29-a22.c b/arch/arm/mach-rk29/board-rk29-a22.c index 0a0558f3d4e5..a8b428e79ce2 100755 --- a/arch/arm/mach-rk29/board-rk29-a22.c +++ b/arch/arm/mach-rk29/board-rk29-a22.c @@ -824,8 +824,8 @@ struct wm831x_battery_pdata wm831x_battery_platdata = { .trickle_ilim = 200, /** Trickle charge current limit, in mA */ .vsel = 4200, /** Target voltage, in mV */ .eoc_iterm = 90, /** End of trickle charge current, in mA */ - .fast_ilim = 1000, /** Fast charge current limit, in mA */ - .timeout = 180, /** Charge cycle timeout, in minutes */ + .fast_ilim = 500, /** Fast charge current limit, in mA */ + .timeout = 240, /** Charge cycle timeout, in minutes */ .syslo = 3300, /* syslo threshold, in mV*/ .sysok = 3500, /* sysko threshold, in mV*/ }; diff --git a/arch/arm/mach-rk29/board-rk29-phonesdk.c b/arch/arm/mach-rk29/board-rk29-phonesdk.c index f87c1d675563..b42f059d343d 100755 --- a/arch/arm/mach-rk29/board-rk29-phonesdk.c +++ b/arch/arm/mach-rk29/board-rk29-phonesdk.c @@ -909,8 +909,8 @@ struct wm831x_battery_pdata wm831x_battery_platdata = { .trickle_ilim = 200, /** Trickle charge current limit, in mA */ .vsel = 4200, /** Target voltage, in mV */ .eoc_iterm = 90, /** End of trickle charge current, in mA */ - .fast_ilim = 1000, /** Fast charge current limit, in mA */ - .timeout = 180, /** Charge cycle timeout, in minutes */ + .fast_ilim = 500, /** Fast charge current limit, in mA */ + .timeout = 240, /** Charge cycle timeout, in minutes */ .syslo = 3300, /* syslo threshold, in mV*/ .sysok = 3500, /* sysko threshold, in mV*/ }; diff --git a/drivers/power/wm831x_charger_display.c b/drivers/power/wm831x_charger_display.c index ad0cc3c8c96c..d79c80515b3c 100755 --- a/drivers/power/wm831x_charger_display.c +++ b/drivers/power/wm831x_charger_display.c @@ -320,20 +320,26 @@ static int rk29_charger_display(struct wm831x_chg *wm831x_chg) wm831x_chg->flag_chg = wm831x_read_chg_status(wm831x_chg); if(!wm831x_chg->flag_chg) kernel_power_off(); - + if(wm831x_chg->flag_bl != 0) ret = charger_logo_display(chargerlogo[i]); DBG("%s:i=%d\n",__FUNCTION__,i); - mdelay(300); + msleep(200); + wm831x_check_on_pin(wm831x_chg); + msleep(200); wm831x_check_on_pin(wm831x_chg); + } } else if(status == BAT_DISCHARGING) { + if(wm831x_chg->flag_bl != 0) charger_logo_display(chargerlogo[7]); - mdelay(300); + msleep(200); + wm831x_check_on_pin(wm831x_chg); + msleep(200); wm831x_check_on_pin(wm831x_chg); } -- 2.34.1