diff options
| author | Robert Kukla <roolku@rockbox.org> | 2008-04-15 23:38:45 +0000 |
|---|---|---|
| committer | Robert Kukla <roolku@rockbox.org> | 2008-04-15 23:38:45 +0000 |
| commit | 4c86e345173b72d0b42d366d8f256065d2604ce1 (patch) | |
| tree | 2104a86971c2c93a90061df4c81f04bc38c8fd22 | |
| parent | 620e6b4d933532c48a8995ab495b02505791c347 (diff) | |
| download | rockbox-4c86e345173b72d0b42d366d8f256065d2604ce1.zip rockbox-4c86e345173b72d0b42d366d8f256065d2604ce1.tar.gz rockbox-4c86e345173b72d0b42d366d8f256065d2604ce1.tar.bz2 rockbox-4c86e345173b72d0b42d366d8f256065d2604ce1.tar.xz | |
m:robe 100 - enable setting for buttonlight brightness
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17134 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | apps/lang/english.lang | 6 | ||||
| -rw-r--r-- | firmware/export/config-mrobe100.h | 2 | ||||
| -rw-r--r-- | firmware/target/arm/olympus/mrobe-100/backlight-mr100.c | 28 | ||||
| -rw-r--r-- | firmware/target/arm/olympus/mrobe-100/backlight-target.h | 1 |
4 files changed, 18 insertions, 19 deletions
diff --git a/apps/lang/english.lang b/apps/lang/english.lang index bd9e09c..f43df0d 100644 --- a/apps/lang/english.lang +++ b/apps/lang/english.lang @@ -3909,15 +3909,15 @@ user: <source> *: none - gigabeatf: "Button Light Brightness" + gigabeatf,mrobe100: "Button Light Brightness" </source> <dest> *: none - gigabeatf: "Button Light Brightness" + gigabeatf,mrobe100: "Button Light Brightness" </dest> <voice> *: none - gigabeatf: "Button Light Brightness" + gigabeatf,mrobe100: "Button Light Brightness" </voice> </phrase> <phrase> diff --git a/firmware/export/config-mrobe100.h b/firmware/export/config-mrobe100.h index 1996499..0365bb3 100644 --- a/firmware/export/config-mrobe100.h +++ b/firmware/export/config-mrobe100.h @@ -75,6 +75,8 @@ /* define this if you have a light associated with the buttons */ #define HAVE_BUTTON_LIGHT +#define HAVE_BUTTONLIGHT_BRIGHTNESS + #define BATTERY_CAPACITY_DEFAULT 720 /* default battery capacity */ #ifndef SIMULATOR diff --git a/firmware/target/arm/olympus/mrobe-100/backlight-mr100.c b/firmware/target/arm/olympus/mrobe-100/backlight-mr100.c index 24a62d2..f5a7370 100644 --- a/firmware/target/arm/olympus/mrobe-100/backlight-mr100.c +++ b/firmware/target/arm/olympus/mrobe-100/backlight-mr100.c @@ -19,9 +19,10 @@ #include "backlight-target.h" #include "system.h" -#include "lcd.h" -#include "backlight.h" -#include "i2c-pp.h" + +#define MIN_BRIGHTNESS 0x80ff08ff + +static const int log_brightness[12] = {0,4,8,12,20,28,40,60,88,124,176,255}; void _backlight_on(void) { @@ -33,23 +34,18 @@ void _backlight_off(void) GPO32_ENABLE &= ~0x1000000; } +void _buttonlight_set_brightness(int brightness) +{ + /* clamp the brightness value */ + brightness = MAX(0, MIN(15, brightness)); + + outl(MIN_BRIGHTNESS-(log_brightness[brightness - 1] << 16), 0x7000a010); +} + void _buttonlight_on(void) { /* turn on all touchpad leds */ GPIOA_OUTPUT_VAL |= BUTTONLIGHT_ALL; - -#if 0 - /* Writing to 0x7000a010 controls the brightness of the leds. - This routine fades the leds from dim to bright, like when - you first turn the unit on. */ - unsigned long val = 0x80ff08ff; - int i = 0; - for (i = 0; i < 16; i++) - outl(val, 0x7000a010); - udelay(100000); - val -= 0x110000; - } -#endif } void _buttonlight_off(void) diff --git a/firmware/target/arm/olympus/mrobe-100/backlight-target.h b/firmware/target/arm/olympus/mrobe-100/backlight-target.h index e6c8387..7b4787f 100644 --- a/firmware/target/arm/olympus/mrobe-100/backlight-target.h +++ b/firmware/target/arm/olympus/mrobe-100/backlight-target.h @@ -35,6 +35,7 @@ void _backlight_off(void); BUTTONLIGHT_DISPLAY | BUTTONLIGHT_LEFT | \ BUTTONLIGHT_RIGHT | BUTTONLIGHT_SCROLL) +void _buttonlight_set_brightness(int brightness); void _buttonlight_on(void); void _buttonlight_off(void); |