summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAidan MacDonald <amachronic@protonmail.com>2022-10-02 01:35:06 +0100
committerAidan MacDonald <amachronic@protonmail.com>2022-10-12 07:58:57 -0400
commit9549ddabba292f904769437098817dd158c76f49 (patch)
treea88769892a5da797003e664ffccea12c2240ad90
parent44b9785465fcb96f7544576b7657a47813625a01 (diff)
downloadrockbox-9549ddabba.tar.gz
rockbox-9549ddabba.zip
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
-rw-r--r--firmware/drivers/lcd-1bit-vert.c2
-rw-r--r--firmware/drivers/lcd-2bit-horz.c2
-rw-r--r--firmware/drivers/lcd-2bit-vert.c2
-rw-r--r--firmware/drivers/lcd-2bit-vi.c2
4 files changed, 4 insertions, 4 deletions
diff --git a/firmware/drivers/lcd-1bit-vert.c b/firmware/drivers/lcd-1bit-vert.c
index accce026cd..77eb4ab2a1 100644
--- a/firmware/drivers/lcd-1bit-vert.c
+++ b/firmware/drivers/lcd-1bit-vert.c
@@ -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) */
diff --git a/firmware/drivers/lcd-2bit-horz.c b/firmware/drivers/lcd-2bit-horz.c
index b8ebaff7e1..abe7443e01 100644
--- a/firmware/drivers/lcd-2bit-horz.c
+++ b/firmware/drivers/lcd-2bit-horz.c
@@ -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) */
diff --git a/firmware/drivers/lcd-2bit-vert.c b/firmware/drivers/lcd-2bit-vert.c
index 9856b28819..6ea367e695 100644
--- a/firmware/drivers/lcd-2bit-vert.c
+++ b/firmware/drivers/lcd-2bit-vert.c
@@ -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) */
diff --git a/firmware/drivers/lcd-2bit-vi.c b/firmware/drivers/lcd-2bit-vi.c
index d621951c78..5c615c4c9e 100644
--- a/firmware/drivers/lcd-2bit-vi.c
+++ b/firmware/drivers/lcd-2bit-vi.c
@@ -380,7 +380,7 @@ void LCDFN(clear_display)(void)
FBSIZE);
}
- LCDFN(scroll_info).lines = 0;
+ LCDFN(scroll_stop)();
}
/* Draw a horizontal line (optimised) */