summaryrefslogtreecommitdiff
path: root/firmware/target/arm/imx31/gigabeat-s/power-imx31.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/imx31/gigabeat-s/power-imx31.c')
-rw-r--r--firmware/target/arm/imx31/gigabeat-s/power-imx31.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/firmware/target/arm/imx31/gigabeat-s/power-imx31.c b/firmware/target/arm/imx31/gigabeat-s/power-imx31.c
index 53cdb7c315..8db59bdf0e 100644
--- a/firmware/target/arm/imx31/gigabeat-s/power-imx31.c
+++ b/firmware/target/arm/imx31/gigabeat-s/power-imx31.c
@@ -28,14 +28,11 @@
28 28
29static bool charger_detect = false; 29static bool charger_detect = false;
30 30
31void power_init(void)
32{
33}
34
35/* This is called from the mc13783 interrupt thread */ 31/* This is called from the mc13783 interrupt thread */
36void set_charger_inserted(bool inserted) 32void charger_detect_event(void)
37{ 33{
38 charger_detect = inserted; 34 charger_detect =
35 mc13783_read(MC13783_INTERRUPT_SENSE0) & MC13783_CHGDETS;
39} 36}
40 37
41bool charger_inserted(void) 38bool charger_inserted(void)
@@ -81,6 +78,15 @@ void power_off(void)
81 while (1); 78 while (1);
82} 79}
83 80
81void power_init(void)
82{
83 /* Poll initial state */
84 charger_detect_event();
85
86 /* Enable detect event */
87 mc13783_enable_event(MC13783_CHGDET_EVENT);
88}
89
84#else /* SIMULATOR */ 90#else /* SIMULATOR */
85 91
86bool charger_inserted(void) 92bool charger_inserted(void)