summaryrefslogtreecommitdiff
path: root/firmware/target/arm/sandisk
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/sandisk')
-rw-r--r--firmware/target/arm/sandisk/power-c200_e200.c24
1 files changed, 17 insertions, 7 deletions
diff --git a/firmware/target/arm/sandisk/power-c200_e200.c b/firmware/target/arm/sandisk/power-c200_e200.c
index d6319f44bb..cc9d16f466 100644
--- a/firmware/target/arm/sandisk/power-c200_e200.c
+++ b/firmware/target/arm/sandisk/power-c200_e200.c
@@ -26,6 +26,7 @@
26#include "tuner.h" 26#include "tuner.h"
27#include "as3514.h" 27#include "as3514.h"
28#include "power.h" 28#include "power.h"
29#include "usb.h"
29 30
30void power_init(void) 31void power_init(void)
31{ 32{
@@ -53,15 +54,24 @@ void power_off(void)
53 } 54 }
54} 55}
55 56
56bool charger_inserted(void) 57unsigned int power_input_status(void)
57{ 58{
58#ifdef SANSA_E200 59 unsigned int status = POWER_INPUT_NONE;
59 if(GPIOB_INPUT_VAL & 0x10) 60
60#else /* SANSA_C200 */ 61#if defined(SANSA_E200)
61 if(GPIOH_INPUT_VAL & 0x2) 62 #define _charger_present() (GPIOB_INPUT_VAL & 0x10)
63#elif defined(SANSA_C200)
64 #define _charger_present() (GPIOH_INPUT_VAL & 0x2)
65#else
66 #define _charger_present() 0
62#endif 67#endif
63 return true; 68
64 return false; 69 if (_charger_present())
70 status = POWER_INPUT_MAIN_CHARGER;
71
72 /* No separate source for USB */
73
74 return status;
65} 75}
66 76
67void ide_power_enable(bool on) 77void ide_power_enable(bool on)