diff options
author | Boris Gjenero <dreamlayers@rockbox.org> | 2009-04-12 15:35:57 +0000 |
---|---|---|
committer | Boris Gjenero <dreamlayers@rockbox.org> | 2009-04-12 15:35:57 +0000 |
commit | ab1e97aea8eb4e7c3c3250d9ab90f84814cb5912 (patch) | |
tree | 43fc8d08c21ee6088081ed4ce24a18c55e280467 /firmware/target/arm/ipod/video/lcd-video.c | |
parent | 73e1bad355bee944eaa0e2f15d2a52da073b980b (diff) | |
download | rockbox-ab1e97aea8eb4e7c3c3250d9ab90f84814cb5912.tar.gz rockbox-ab1e97aea8eb4e7c3c3250d9ab90f84814cb5912.zip |
Fix red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20696 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/ipod/video/lcd-video.c')
-rw-r--r-- | firmware/target/arm/ipod/video/lcd-video.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/firmware/target/arm/ipod/video/lcd-video.c b/firmware/target/arm/ipod/video/lcd-video.c index 200126d837..da3011887c 100644 --- a/firmware/target/arm/ipod/video/lcd-video.c +++ b/firmware/target/arm/ipod/video/lcd-video.c | |||
@@ -182,11 +182,13 @@ static inline unsigned bcm_read32(unsigned address) | |||
182 | return BCM_DATA32; /* read value */ | 182 | return BCM_DATA32; /* read value */ |
183 | } | 183 | } |
184 | 184 | ||
185 | #ifdef HAVE_LCD_SLEEP | ||
185 | static void continue_lcd_awake(void) | 186 | static void continue_lcd_awake(void) |
186 | { | 187 | { |
187 | lcd_state.waking = false; | 188 | lcd_state.waking = false; |
188 | wakeup_signal(&(lcd_state.initwakeup)); | 189 | wakeup_signal(&(lcd_state.initwakeup)); |
189 | } | 190 | } |
191 | #endif | ||
190 | 192 | ||
191 | #ifndef BOOTLOADER | 193 | #ifndef BOOTLOADER |
192 | static void lcd_tick(void) | 194 | static void lcd_tick(void) |
@@ -210,15 +212,19 @@ static void lcd_tick(void) | |||
210 | BCM_CONTROL = 0x31; | 212 | BCM_CONTROL = 0x31; |
211 | lcd_state.update_timeout = current_tick + BCM_UPDATE_TIMEOUT; | 213 | lcd_state.update_timeout = current_tick + BCM_UPDATE_TIMEOUT; |
212 | lcd_state.state = LCD_UPDATING; | 214 | lcd_state.state = LCD_UPDATING; |
215 | #ifdef HAVE_LCD_SLEEP | ||
213 | if (lcd_state.waking) | 216 | if (lcd_state.waking) |
214 | continue_lcd_awake(); | 217 | continue_lcd_awake(); |
218 | #endif | ||
215 | } | 219 | } |
216 | else if ((lcd_state.state == LCD_UPDATING) && !bcm_is_busy) | 220 | else if ((lcd_state.state == LCD_UPDATING) && !bcm_is_busy) |
217 | { | 221 | { |
218 | /* Update finished properly and no new update pending. */ | 222 | /* Update finished properly and no new update pending. */ |
219 | lcd_state.state = LCD_IDLE; | 223 | lcd_state.state = LCD_IDLE; |
224 | #ifdef HAVE_LCD_SLEEP | ||
220 | if (lcd_state.waking) | 225 | if (lcd_state.waking) |
221 | continue_lcd_awake(); | 226 | continue_lcd_awake(); |
227 | #endif | ||
222 | } | 228 | } |
223 | } | 229 | } |
224 | #if NUM_CORES > 1 | 230 | #if NUM_CORES > 1 |
@@ -259,8 +265,10 @@ static void lcd_unblock_and_update(void) | |||
259 | BCM_CONTROL = 0x31; | 265 | BCM_CONTROL = 0x31; |
260 | lcd_state.update_timeout = current_tick + BCM_UPDATE_TIMEOUT; | 266 | lcd_state.update_timeout = current_tick + BCM_UPDATE_TIMEOUT; |
261 | lcd_state.state = LCD_UPDATING; | 267 | lcd_state.state = LCD_UPDATING; |
268 | #ifdef HAVE_LCD_SLEEP | ||
262 | if (lcd_state.waking) | 269 | if (lcd_state.waking) |
263 | continue_lcd_awake(); | 270 | continue_lcd_awake(); |
271 | #endif | ||
264 | } | 272 | } |
265 | else | 273 | else |
266 | { | 274 | { |