From ca1a76247920ae3953db12ec290cf702053e970a Mon Sep 17 00:00:00 2001 From: Jens Rottmann Date: Wed, 18 Aug 2010 21:23:27 +0000 Subject: libpayload: fix garbage on screen with Geode-LX VGA Clear initial garbage in VGA memory and fix scroll_up, which scrolled 1 scanline instead of 1 text line by mistake. Signed-off-by: Jens Rottmann Acked-by: Patrick Georgi git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5722 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- payloads/libpayload/drivers/video/geodelx.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/payloads/libpayload/drivers/video/geodelx.c b/payloads/libpayload/drivers/video/geodelx.c index 382ae4943e..ede997cb26 100644 --- a/payloads/libpayload/drivers/video/geodelx.c +++ b/payloads/libpayload/drivers/video/geodelx.c @@ -206,7 +206,7 @@ static void geodelx_set_palette(int entry, unsigned int color) static void geodelx_scroll_up(void) { unsigned char *dst = FB; - unsigned char *src = FB + vga_mode.hactive; + unsigned char *src = FB + FONT_HEIGHT * vga_mode.hactive; int y; for(y = 0; y < vga_mode.vactive - FONT_HEIGHT; y++) { @@ -216,8 +216,6 @@ static void geodelx_scroll_up(void) src += vga_mode.hactive; } - dst = FB + (vga_mode.vactive - FONT_HEIGHT) * vga_mode.hactive; - for(; y < vga_mode.vactive; y++) { memset(dst, 0, vga_mode.hactive); dst += vga_mode.hactive; @@ -280,6 +278,8 @@ static int geodelx_init(void) geodelx_set_palette(i, vga_colors[i]); } + geodelx_clear(); + return 0; } -- cgit v1.2.3