From a61196fd3ae5ebd71134da8eb10e3189403c116f Mon Sep 17 00:00:00 2001 From: Mark Arigo Date: Fri, 19 Jun 2009 03:23:38 +0000 Subject: Philips SA9200: Working touchpad and button lights! Also, improvements to the keymap (still needs work). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21346 a1c6a512-1295-4272-9138-f99709370657 --- .../target/arm/philips/sa9200/backlight-sa9200.c | 23 +++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'firmware/target/arm/philips/sa9200/backlight-sa9200.c') diff --git a/firmware/target/arm/philips/sa9200/backlight-sa9200.c b/firmware/target/arm/philips/sa9200/backlight-sa9200.c index a0acaa0abd..22aae1ae6b 100644 --- a/firmware/target/arm/philips/sa9200/backlight-sa9200.c +++ b/firmware/target/arm/philips/sa9200/backlight-sa9200.c @@ -21,10 +21,10 @@ #include "config.h" #include "backlight-target.h" #include "system.h" -#include "lcd.h" #include "backlight.h" #include "ascodec.h" #include "as3514.h" +#include "synaptics-mep.h" void _backlight_set_brightness(int brightness) { @@ -51,12 +51,29 @@ void _backlight_off(void) #endif } +#ifdef HAVE_BUTTON_LIGHT + +#define BUTTONLIGHT_MASK 0x7f +#define BUTTONLIGHT_MAX 0x0f +static unsigned short buttonlight_status = 0; + void _buttonlight_on(void) { - /* TODO */ + if (!buttonlight_status) + { + touchpad_set_buttonlights(BUTTONLIGHT_MASK, BUTTONLIGHT_MAX); + GPIOD_OUTPUT_VAL &= ~(0x40 | 0x20 | 0x04); /* REW/FFWD/MENU */ + buttonlight_status = 1; + } } void _buttonlight_off(void) { - /* TODO */ + if (buttonlight_status) + { + touchpad_set_buttonlights(BUTTONLIGHT_MASK, 0); + GPIOD_OUTPUT_VAL |= (0x40 | 0x20 | 0x04); /* REW/FFWD/MENU */ + buttonlight_status = 0; + } } +#endif -- cgit v1.2.3