summaryrefslogtreecommitdiffstats
path: root/firmware/target/arm
diff options
context:
space:
mode:
authorBertrik Sikken <bertrik@sikken.nl>2008-08-05 20:17:17 +0000
committerBertrik Sikken <bertrik@sikken.nl>2008-08-05 20:17:17 +0000
commitf2213c8fc26c94f091563aa4d8ca96f1369f079d (patch)
tree23908ab6d5f6098d9867dc7346d294490cb128f7 /firmware/target/arm
parentb0b72a84ffd1d743e98030fdd30a8d4d527f4766 (diff)
downloadrockbox-f2213c8fc26c94f091563aa4d8ca96f1369f079d.tar.gz
rockbox-f2213c8fc26c94f091563aa4d8ca96f1369f079d.zip
Apply FS#9195 (LCD disable for sansa c200), which puts the sansa c200 display controller in standby when the backlight is turned off and thereby improves runtime. I measured 40 minutes improvement over a runtime of about 14h.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18198 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm')
-rw-r--r--firmware/target/arm/sandisk/sansa-c200/lcd-c200.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/firmware/target/arm/sandisk/sansa-c200/lcd-c200.c b/firmware/target/arm/sandisk/sansa-c200/lcd-c200.c
index fc936b1287..9e7c81e20d 100644
--- a/firmware/target/arm/sandisk/sansa-c200/lcd-c200.c
+++ b/firmware/target/arm/sandisk/sansa-c200/lcd-c200.c
@@ -26,6 +26,7 @@
/* Display status */
static unsigned lcd_yuv_options SHAREDBSS_ATTR = 0;
+static bool is_lcd_enabled = true;
/* LCD command set for Samsung S6B33B2 */
@@ -189,6 +190,29 @@ void lcd_set_invert_display(bool yesno)
(void)yesno;
}
+void lcd_enable(bool yesno)
+{
+ if (yesno == is_lcd_enabled)
+ return;
+
+ if (yesno)
+ {
+ lcd_send_command(R_STANDBY_OFF);
+ lcd_send_command(R_DISPLAY_ON);
+ }
+ else
+ {
+ lcd_send_command(R_STANDBY_ON);
+ }
+ is_lcd_enabled = yesno;
+}
+
+bool lcd_enabled(void)
+{
+ return is_lcd_enabled;
+}
+
+
/* turn the display upside down (call lcd_update() afterwards) */
void lcd_set_flip(bool yesno)
{