summaryrefslogtreecommitdiff
path: root/firmware/target/arm/imx31/gigabeat-s
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2010-04-07 06:26:18 +0000
committerMichael Sevakis <jethead71@rockbox.org>2010-04-07 06:26:18 +0000
commit4e8704c387d1983cca20070a05d99e70aca9d5b2 (patch)
treee84e6d3d869580dfb1ccc9abc66bf05ad9cbbe42 /firmware/target/arm/imx31/gigabeat-s
parentf25f17c5b60ade629b8b7b0449a6aafab7e32a7d (diff)
downloadrockbox-4e8704c387d1983cca20070a05d99e70aca9d5b2.tar.gz
rockbox-4e8704c387d1983cca20070a05d99e70aca9d5b2.zip
Gigabeat S: Extend the upper temperature range for battery charging to 50C: OK and 45C: Resume. Currently extended disk activity can cause it to detect overtemp which doesn't quite seem correct. Add macros for the range so that they may be target-specific.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25508 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/imx31/gigabeat-s')
-rw-r--r--firmware/target/arm/imx31/gigabeat-s/powermgmt-imx31.c9
-rw-r--r--firmware/target/arm/imx31/gigabeat-s/powermgmt-target.h10
2 files changed, 17 insertions, 2 deletions
diff --git a/firmware/target/arm/imx31/gigabeat-s/powermgmt-imx31.c b/firmware/target/arm/imx31/gigabeat-s/powermgmt-imx31.c
index c6b3549afb..6986a0605d 100644
--- a/firmware/target/arm/imx31/gigabeat-s/powermgmt-imx31.c
+++ b/firmware/target/arm/imx31/gigabeat-s/powermgmt-imx31.c
@@ -467,8 +467,13 @@ static bool charging_ok(void)
467 * come back into safe range. */ 467 * come back into safe range. */
468 static const signed char temp_ranges[2][2] = 468 static const signed char temp_ranges[2][2] =
469 { 469 {
470 { 0, 45 }, /* Temperature range before beginning charging */ 470 /* Temperature range before beginning charging */
471 { 5, 40 }, /* Temperature range after out-of-range detected */ 471 { BATTERY_CHARGE_MIN,
472 BATTERY_CHARGE_MAX },
473 /* Temperature range after out-of-range detected -
474 charging will self-resume */
475 { BATTERY_CHARGE_RESTART_MIN,
476 BATTERY_CHARGE_RESTART_MAX },
472 }; 477 };
473 478
474 int temp = battery_adc_temp(); 479 int temp = battery_adc_temp();
diff --git a/firmware/target/arm/imx31/gigabeat-s/powermgmt-target.h b/firmware/target/arm/imx31/gigabeat-s/powermgmt-target.h
index c157dc2fbf..86278bce73 100644
--- a/firmware/target/arm/imx31/gigabeat-s/powermgmt-target.h
+++ b/firmware/target/arm/imx31/gigabeat-s/powermgmt-target.h
@@ -61,6 +61,16 @@
61 read below 2400mV. */ 61 read below 2400mV. */
62#define CHARGER_TOTAL_TIMER 300 /* minutes */ 62#define CHARGER_TOTAL_TIMER 300 /* minutes */
63 63
64/* Temperature readings - w/hysteresis */
65
66/* Temperature range before beginning charging */
67#define BATTERY_CHARGE_MIN 0
68#define BATTERY_CHARGE_MAX 50
69/* Temperature range after out-of-range detected - charging will
70 * self-resume */
71#define BATTERY_CHARGE_RESTART_MIN 5
72#define BATTERY_CHARGE_RESTART_MAX 45
73
64/* .316 ohms is closest standard value as measured in 1% tolerance - adjust 74/* .316 ohms is closest standard value as measured in 1% tolerance - adjust
65 * relative to .100 ohm which is what the PMIC is "tuned" for. */ 75 * relative to .100 ohm which is what the PMIC is "tuned" for. */
66#define ILEVEL_ADJUST_IN(I) (100*(I) / 316) 76#define ILEVEL_ADJUST_IN(I) (100*(I) / 316)