summaryrefslogtreecommitdiff
path: root/firmware/target/arm/philips/sa9200/backlight-sa9200.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/philips/sa9200/backlight-sa9200.c')
-rw-r--r--firmware/target/arm/philips/sa9200/backlight-sa9200.c23
1 files changed, 20 insertions, 3 deletions
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 @@
21#include "config.h" 21#include "config.h"
22#include "backlight-target.h" 22#include "backlight-target.h"
23#include "system.h" 23#include "system.h"
24#include "lcd.h"
25#include "backlight.h" 24#include "backlight.h"
26#include "ascodec.h" 25#include "ascodec.h"
27#include "as3514.h" 26#include "as3514.h"
27#include "synaptics-mep.h"
28 28
29void _backlight_set_brightness(int brightness) 29void _backlight_set_brightness(int brightness)
30{ 30{
@@ -51,12 +51,29 @@ void _backlight_off(void)
51#endif 51#endif
52} 52}
53 53
54#ifdef HAVE_BUTTON_LIGHT
55
56#define BUTTONLIGHT_MASK 0x7f
57#define BUTTONLIGHT_MAX 0x0f
58static unsigned short buttonlight_status = 0;
59
54void _buttonlight_on(void) 60void _buttonlight_on(void)
55{ 61{
56 /* TODO */ 62 if (!buttonlight_status)
63 {
64 touchpad_set_buttonlights(BUTTONLIGHT_MASK, BUTTONLIGHT_MAX);
65 GPIOD_OUTPUT_VAL &= ~(0x40 | 0x20 | 0x04); /* REW/FFWD/MENU */
66 buttonlight_status = 1;
67 }
57} 68}
58 69
59void _buttonlight_off(void) 70void _buttonlight_off(void)
60{ 71{
61 /* TODO */ 72 if (buttonlight_status)
73 {
74 touchpad_set_buttonlights(BUTTONLIGHT_MASK, 0);
75 GPIOD_OUTPUT_VAL |= (0x40 | 0x20 | 0x04); /* REW/FFWD/MENU */
76 buttonlight_status = 0;
77 }
62} 78}
79#endif