diff options
Diffstat (limited to 'firmware/target')
-rw-r--r-- | firmware/target/arm/as3525/powermgmt-target.h | 10 | ||||
-rw-r--r-- | firmware/target/arm/as3525/sansa-c200v2/powermgmt-c200v2.c | 48 |
2 files changed, 58 insertions, 0 deletions
diff --git a/firmware/target/arm/as3525/powermgmt-target.h b/firmware/target/arm/as3525/powermgmt-target.h index 269a89349e..159a051e70 100644 --- a/firmware/target/arm/as3525/powermgmt-target.h +++ b/firmware/target/arm/as3525/powermgmt-target.h | |||
@@ -52,6 +52,16 @@ | |||
52 | #define CHARGER_TOTAL_TIMER (4*3600*2) | 52 | #define CHARGER_TOTAL_TIMER (4*3600*2) |
53 | #define ADC_BATTERY ADC_BVDD | 53 | #define ADC_BATTERY ADC_BVDD |
54 | 54 | ||
55 | #elif defined(SANSA_C200V2) | ||
56 | |||
57 | /* Check if topped-off and monitor voltage while plugged. */ | ||
58 | #define BATT_FULL_VOLTAGE 4160 | ||
59 | #define BATT_VAUTO_RECHARGE 4100 | ||
60 | #define BATT_CHG_V CHG_V_4_20V | ||
61 | #define BATT_CHG_I CHG_I_200MA | ||
62 | #define CHARGER_TOTAL_TIMER (4*3600*2) | ||
63 | #define ADC_BATTERY ADC_BVDD | ||
64 | |||
55 | #else | 65 | #else |
56 | #error "Charger settings not defined!" | 66 | #error "Charger settings not defined!" |
57 | #endif | 67 | #endif |
diff --git a/firmware/target/arm/as3525/sansa-c200v2/powermgmt-c200v2.c b/firmware/target/arm/as3525/sansa-c200v2/powermgmt-c200v2.c new file mode 100644 index 0000000000..395e2a472c --- /dev/null +++ b/firmware/target/arm/as3525/sansa-c200v2/powermgmt-c200v2.c | |||
@@ -0,0 +1,48 @@ | |||
1 | /*************************************************************************** | ||
2 | * __________ __ ___. | ||
3 | * Open \______ \ ____ ____ | | _\_ |__ _______ ___ | ||
4 | * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / | ||
5 | * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < | ||
6 | * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ | ||
7 | * \/ \/ \/ \/ \/ | ||
8 | * $Id$ | ||
9 | * | ||
10 | * Copyright (C) 2002 by Heikki Hannikainen, Uwe Freese | ||
11 | * Revisions copyright (C) 2005 by Gerald Van Baren | ||
12 | * | ||
13 | * This program is free software; you can redistribute it and/or | ||
14 | * modify it under the terms of the GNU General Public License | ||
15 | * as published by the Free Software Foundation; either version 2 | ||
16 | * of the License, or (at your option) any later version. | ||
17 | * | ||
18 | * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY | ||
19 | * KIND, either express or implied. | ||
20 | * | ||
21 | ****************************************************************************/ | ||
22 | |||
23 | #include "config.h" | ||
24 | #include "powermgmt.h" | ||
25 | |||
26 | const unsigned short battery_level_dangerous[BATTERY_TYPES_COUNT] = | ||
27 | { | ||
28 | 3400 | ||
29 | }; | ||
30 | |||
31 | const unsigned short battery_level_shutoff[BATTERY_TYPES_COUNT] = | ||
32 | { | ||
33 | 3300 | ||
34 | }; | ||
35 | |||
36 | /* voltages (millivolt) of 0%, 10%, ... 100% when charging disabled */ | ||
37 | const unsigned short percent_to_volt_discharge[BATTERY_TYPES_COUNT][11] = | ||
38 | { | ||
39 | /* TODO: calibrate, copied from powermgmt-c200.c svn r22636 */ | ||
40 | { 3400, 3689, 3744, 3773, 3798, 3831, 3886, 3947, 4005, 4102, 4220 }, | ||
41 | }; | ||
42 | |||
43 | /* voltages (millivolt) of 0%, 10%, ... 100% when charging enabled */ | ||
44 | const unsigned short percent_to_volt_charge[11] = | ||
45 | { | ||
46 | /* TODO: simple uncalibrated curve with 10% knee at 3.60V */ | ||
47 | 3400, 3600, 3670, 3740, 3810, 3880, 3950, 4020, 4090, 4160, 4230 | ||
48 | }; | ||