diff options
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/target/arm/lcd-c200_c200v2.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/firmware/target/arm/lcd-c200_c200v2.c b/firmware/target/arm/lcd-c200_c200v2.c index 858828f88a..f82f8a809e 100644 --- a/firmware/target/arm/lcd-c200_c200v2.c +++ b/firmware/target/arm/lcd-c200_c200v2.c | |||
@@ -274,13 +274,8 @@ void lcd_enable(bool yesno) | |||
274 | 274 | ||
275 | if ((is_lcd_enabled = yesno)) | 275 | if ((is_lcd_enabled = yesno)) |
276 | { | 276 | { |
277 | #ifdef SANSA_C200V2 | ||
278 | /* lcd sometimes gets stuck, do full init here */ | ||
279 | lcd_reset(); | ||
280 | #else | ||
281 | lcd_send_command(R_STANDBY_OFF, 0); | 277 | lcd_send_command(R_STANDBY_OFF, 0); |
282 | lcd_send_command(R_DISPLAY_ON, 0); | 278 | lcd_send_command(R_DISPLAY_ON, 0); |
283 | #endif | ||
284 | send_event(LCD_EVENT_ACTIVATION, NULL); | 279 | send_event(LCD_EVENT_ACTIVATION, NULL); |
285 | } | 280 | } |
286 | else | 281 | else |
@@ -418,6 +413,11 @@ void lcd_update_rect(int x, int y, int width, int height) | |||
418 | lcd_send_command(R_Y_ADDR_AREA, y + 0x1a); | 413 | lcd_send_command(R_Y_ADDR_AREA, y + 0x1a); |
419 | lcd_send_command(y + height - 1 + 0x1a, 0); | 414 | lcd_send_command(y + height - 1 + 0x1a, 0); |
420 | 415 | ||
416 | #ifdef SANSA_C200V2 | ||
417 | /* somehow there are glitches without this delay */ | ||
418 | udelay(1); | ||
419 | #endif | ||
420 | |||
421 | do { | 421 | do { |
422 | lcd_write_data(addr, width); | 422 | lcd_write_data(addr, width); |
423 | addr += LCD_WIDTH; | 423 | addr += LCD_WIDTH; |