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;
memset(LCDFB(0, 0), bits, FBSIZE);
LCDFN(scroll_info).lines = 0;
LCDFN(scroll_stop)();
}
/* Draw a horizontal line (optimised) */

View file

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

View file

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

View file

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