summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRafaël Carré <rafael.carre@gmail.com>2010-05-08 14:53:41 +0000
committerRafaël Carré <rafael.carre@gmail.com>2010-05-08 14:53:41 +0000
commita1b26db98fe461a81bdac87915968c6caa06f58a (patch)
treed40c1656f8d9f18b91d532e3c21080159cd87f0d
parentb269b7854ff80d470da53ac048f4f19012e43520 (diff)
downloadrockbox-a1b26db98fe461a81bdac87915968c6caa06f58a.zip
rockbox-a1b26db98fe461a81bdac87915968c6caa06f58a.tar.gz
rockbox-a1b26db98fe461a81bdac87915968c6caa06f58a.tar.bz2
rockbox-a1b26db98fe461a81bdac87915968c6caa06f58a.tar.xz
Sansa Cliv2: calibrated discharge curve
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25901 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/SOURCES2
-rw-r--r--firmware/target/arm/as3525/sansa-clipv2/powermgmt-clipv2.c51
2 files changed, 52 insertions, 1 deletions
diff --git a/firmware/SOURCES b/firmware/SOURCES
index 5253e5f..bbed9d2 100644
--- a/firmware/SOURCES
+++ b/firmware/SOURCES
@@ -1235,7 +1235,7 @@ target/arm/as3525/sansa-clipv2/button-clip.c
target/arm/as3525/sansa-clipv2/backlight-clipv2.c
#ifndef BOOTLOADER
target/arm/powermgmt-ascodec.c
-target/arm/as3525/sansa-clip/powermgmt-clip.c
+target/arm/as3525/sansa-clipv2/powermgmt-clipv2.c
target/arm/as3525/sansa-clipv2/lcd-as-clipv2.S
#endif /* !BOOTLOADER */
#endif /* !SIMULATOR */
diff --git a/firmware/target/arm/as3525/sansa-clipv2/powermgmt-clipv2.c b/firmware/target/arm/as3525/sansa-clipv2/powermgmt-clipv2.c
new file mode 100644
index 0000000..7e4cc78
--- /dev/null
+++ b/firmware/target/arm/as3525/sansa-clipv2/powermgmt-clipv2.c
@@ -0,0 +1,51 @@
+/***************************************************************************
+ * __________ __ ___.
+ * Open \______ \ ____ ____ | | _\_ |__ _______ ___
+ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
+ * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
+ * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
+ * \/ \/ \/ \/ \/
+ * $Id$
+ *
+ * Copyright © 2008 Rafaël Carré
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ****************************************************************************/
+
+#include "config.h"
+
+/* The battery manufacturer's website shows discharge curves down to 3.0V,
+ so 'dangerous' and 'shutoff' levels of 3.4V and 3.3V should be safe.
+ */
+const unsigned short battery_level_dangerous[BATTERY_TYPES_COUNT] =
+{
+ 3400
+};
+
+const unsigned short battery_level_shutoff[BATTERY_TYPES_COUNT] =
+{
+ 3300
+};
+
+/* voltages (millivolt) of 0%, 10%, ... 100% when charging disabled */
+const unsigned short percent_to_volt_discharge[BATTERY_TYPES_COUNT][11] =
+{
+ { 3300, 3692, 3740, 3772, 3798, 3828, 3876, 3943, 4013, 4094, 4194 }
+};
+
+#if CONFIG_CHARGING
+/* voltages (millivolt) of 0%, 10%, ... 100% when charging enabled */
+const unsigned short percent_to_volt_charge[11] =
+{
+ /* TODO: simple linear uncalibrated curve */
+ 3300, 3390, 3480, 3570, 3660, 3750, 3840, 3930, 4020, 4110, 4200
+};
+#endif /* CONFIG_CHARGING */
+