1
0
Fork 0
forked from len0rd/rockbox

lcd: Fix bug in grayscale clear_display() implementation

clear_display() on grayscale LCDs sets the number of scrolling
lines to 0 but that's wrong, the scollers need to be shut down
first. Call scroll_stop() for that, as is done on color LCDs.

Change-Id: I75fb6839ed04f6fe1eb8e2855c8db820fcedddb8
This commit is contained in:
Aidan MacDonald 2022-10-02 01:35:06 +01:00
parent 44b9785465
commit 9549ddabba
4 changed files with 4 additions and 4 deletions

View file

@ -203,7 +203,7 @@ void LCDFN(clear_display)(void)
unsigned bits = (CURRENT_VP->drawmode & DRMODE_INVERSEVID) ? 0xFFu : 0; unsigned bits = (CURRENT_VP->drawmode & DRMODE_INVERSEVID) ? 0xFFu : 0;
memset(LCDFB(0, 0), bits, FBSIZE); memset(LCDFB(0, 0), bits, FBSIZE);
LCDFN(scroll_info).lines = 0; LCDFN(scroll_stop)();
} }
/* Draw a horizontal line (optimised) */ /* Draw a horizontal line (optimised) */

View file

@ -345,7 +345,7 @@ void lcd_clear_display(void)
memset(FBADDR(0,0), bg_pattern, FRAMEBUFFER_SIZE); memset(FBADDR(0,0), bg_pattern, FRAMEBUFFER_SIZE);
} }
lcd_scroll_info.lines = 0; lcd_scroll_stop();
} }
/* Draw a horizontal line (optimised) */ /* Draw a horizontal line (optimised) */

View file

@ -347,7 +347,7 @@ void lcd_clear_display(void)
memset(FBADDR(0,0), bg_pattern, FRAMEBUFFER_SIZE); memset(FBADDR(0,0), bg_pattern, FRAMEBUFFER_SIZE);
} }
lcd_scroll_info.lines = 0; lcd_scroll_stop();
} }
/* Draw a horizontal line (optimised) */ /* Draw a horizontal line (optimised) */

View file

@ -380,7 +380,7 @@ void LCDFN(clear_display)(void)
FBSIZE); FBSIZE);
} }
LCDFN(scroll_info).lines = 0; LCDFN(scroll_stop)();
} }
/* Draw a horizontal line (optimised) */ /* Draw a horizontal line (optimised) */