diff options
Diffstat (limited to 'firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c')
-rw-r--r-- | firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c | 48 |
1 files changed, 19 insertions, 29 deletions
diff --git a/firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c b/firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c index c1c0595262..ad9098dd8a 100644 --- a/firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c +++ b/firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c | |||
@@ -27,8 +27,7 @@ | |||
27 | #include "pcf50606.h" | 27 | #include "pcf50606.h" |
28 | #include "backlight.h" | 28 | #include "backlight.h" |
29 | #include "backlight-target.h" | 29 | #include "backlight-target.h" |
30 | 30 | #include "usb.h" | |
31 | #ifndef SIMULATOR | ||
32 | 31 | ||
33 | void power_init(void) | 32 | void power_init(void) |
34 | { | 33 | { |
@@ -39,13 +38,28 @@ void power_init(void) | |||
39 | /* Charger detect */ | 38 | /* Charger detect */ |
40 | } | 39 | } |
41 | 40 | ||
42 | bool charger_inserted(void) | 41 | unsigned int power_input_status(void) |
43 | { | 42 | { |
44 | return (GPFDAT & (1 << 4)) ? false : true; | 43 | unsigned int status = POWER_INPUT_NONE; |
44 | |||
45 | /* Is the battery switch ON? */ | ||
46 | if ((GPGDAT & (1 << 9)) == 0) | ||
47 | status |= POWER_INPUT_BATTERY; | ||
48 | |||
49 | /* Main or cradle power available? */ | ||
50 | if ((GPFDAT & (1 << 4)) == 0) | ||
51 | status |= POWER_INPUT_MAIN_CHARGER; | ||
52 | |||
53 | /* Is the USB cable inserted? */ | ||
54 | if (usb_detect() == USB_INSERTED) | ||
55 | status |= POWER_INPUT_USB_CHARGER; | ||
56 | |||
57 | return status; | ||
45 | } | 58 | } |
46 | 59 | ||
47 | /* Returns true if the unit is charging the batteries. */ | 60 | /* Returns true if the unit is charging the batteries. */ |
48 | bool charging_state(void) { | 61 | bool charging_state(void) |
62 | { | ||
49 | return (GPGDAT & (1 << 8)) ? false : true; | 63 | return (GPGDAT & (1 << 8)) ? false : true; |
50 | } | 64 | } |
51 | 65 | ||
@@ -87,27 +101,3 @@ void power_off(void) | |||
87 | 101 | ||
88 | reboot_point(); | 102 | reboot_point(); |
89 | } | 103 | } |
90 | |||
91 | #else /* SIMULATOR */ | ||
92 | |||
93 | bool charger_inserted(void) | ||
94 | { | ||
95 | return false; | ||
96 | } | ||
97 | |||
98 | void charger_enable(bool on) | ||
99 | { | ||
100 | (void)on; | ||
101 | } | ||
102 | |||
103 | void power_off(void) | ||
104 | { | ||
105 | } | ||
106 | |||
107 | void ide_power_enable(bool on) | ||
108 | { | ||
109 | (void)on; | ||
110 | } | ||
111 | |||
112 | #endif /* SIMULATOR */ | ||
113 | |||