summaryrefslogtreecommitdiff
path: root/firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.c')
-rw-r--r--firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.c b/firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.c
index 7e3b39dba8..d7fe87f168 100644
--- a/firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.c
+++ b/firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.c
@@ -28,6 +28,7 @@
28#include "backlight-target.h" 28#include "backlight-target.h"
29#include "avic-imx31.h" 29#include "avic-imx31.h"
30#include "mc13783.h" 30#include "mc13783.h"
31#include "dvfs_dptc-imx31.h"
31#if CONFIG_TUNER 32#if CONFIG_TUNER
32#include "fmradio_i2c.h" 33#include "fmradio_i2c.h"
33#endif 34#endif
@@ -121,6 +122,9 @@ bool tuner_powered(void)
121 122
122void power_off(void) 123void power_off(void)
123{ 124{
125 /* Turn off voltage and frequency scaling */
126 dvfs_dptc_stop();
127
124 /* Cut backlight */ 128 /* Cut backlight */
125 _backlight_off(); 129 _backlight_off();
126 130
@@ -131,9 +135,7 @@ void power_off(void)
131 mc13783_set(MC13783_POWER_CONTROL0, MC13783_USEROFFSPI); 135 mc13783_set(MC13783_POWER_CONTROL0, MC13783_USEROFFSPI);
132 136
133 /* Wait for power cut */ 137 /* Wait for power cut */
134 disable_interrupt(IRQ_FIQ_STATUS); 138 system_halt();
135
136 while (1);
137} 139}
138 140
139void power_init(void) 141void power_init(void)