summaryrefslogtreecommitdiff
path: root/firmware/target/arm/ipod
diff options
context:
space:
mode:
authorBoris Gjenero <dreamlayers@rockbox.org>2009-04-12 15:35:57 +0000
committerBoris Gjenero <dreamlayers@rockbox.org>2009-04-12 15:35:57 +0000
commitab1e97aea8eb4e7c3c3250d9ab90f84814cb5912 (patch)
tree43fc8d08c21ee6088081ed4ce24a18c55e280467 /firmware/target/arm/ipod
parent73e1bad355bee944eaa0e2f15d2a52da073b980b (diff)
downloadrockbox-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')
-rw-r--r--firmware/target/arm/ipod/video/lcd-video.c8
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
185static void continue_lcd_awake(void) 186static 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
192static void lcd_tick(void) 194static 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 {