1 /***************************************************************************
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
10 * Copyright (C) 2008 by Mark Arigo
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
22 #include "backlight-target.h"
24 #include "backlight.h"
25 #include "synaptics-mep.h"
27 #ifdef HAVE_BACKLIGHT_BRIGHTNESS
28 static const int brightness_vals
[16] =
29 {255,237,219,201,183,165,147,130,112,94,76,58,40,22,5,0};
31 void _backlight_set_brightness(int brightness
)
33 outl(0x80000000 | (brightness_vals
[brightness
-1] << 16), 0x7000a000);
37 void _backlight_on(void)
39 GPO32_VAL
&= ~0x1000000;
40 GPO32_ENABLE
&= ~0x1000000;
43 void _backlight_off(void)
45 GPO32_VAL
|= 0x1000000;
46 GPO32_ENABLE
|= 0x1000000;
49 #ifdef HAVE_BUTTON_LIGHT
50 #define BUTTONLIGHT_MASK 0x7f
51 static unsigned short buttonight_brightness
= DEFAULT_BRIGHTNESS_SETTING
- 1;
52 static unsigned short buttonlight_status
= 0;
54 void _buttonlight_on(void)
56 if (!buttonlight_status
)
58 touchpad_set_buttonlights(BUTTONLIGHT_MASK
, buttonight_brightness
);
59 buttonlight_status
= 1;
63 void _buttonlight_off(void)
65 if (buttonlight_status
)
67 touchpad_set_buttonlights(BUTTONLIGHT_MASK
, 0);
68 buttonlight_status
= 0;
72 void _buttonlight_set_brightness(int brightness
)
74 buttonight_brightness
= brightness
- 1;
75 touchpad_set_buttonlights(BUTTONLIGHT_MASK
, buttonight_brightness
);
76 buttonlight_status
= 1;