Skip to content

Commit

Permalink
avr32: use GPIO line PB15 on EVKLCD10x boards for backlight
Browse files Browse the repository at this point in the history
The PB15 GPIO line is used to control the enable and disable signal for
the backlight regulator on EVKLCD10x boards. This patch hands the I/O
line over to the LCDC driver, which will control when to enable and
disable the backlight.

Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
[haavard.skinnemoen@atmel.com: reverted ac97c change]
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
  • Loading branch information
Hans-Christian Egtvedt authored and Haavard Skinnemoen committed Mar 26, 2009
1 parent fe272b5 commit 30754ac
Showing 1 changed file with 19 additions and 1 deletion.
20 changes: 19 additions & 1 deletion arch/avr32/boards/atngw100/evklcd10x.c
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@

#include <linux/init.h>
#include <linux/linkage.h>
#include <linux/gpio.h>
#include <linux/fb.h>
#include <linux/platform_device.h>

Expand All @@ -19,6 +20,7 @@
#include <asm/setup.h>

#include <mach/at32ap700x.h>
#include <mach/portmux.h>
#include <mach/board.h>

static struct ac97c_platform_data __initdata ac97c0_data = {
Expand Down Expand Up @@ -144,13 +146,29 @@ static struct atmel_lcdfb_info __initdata atevklcd10x_lcdc_data = {
};
#endif

static void atevklcd10x_lcdc_power_control(int on)
{
gpio_set_value(GPIO_PIN_PB(15), on);
}

static int __init atevklcd10x_init(void)
{
at32_add_device_ac97c(0, &ac97c0_data);
/* PB15 is connected to the enable line on the boost regulator
* controlling the backlight for the LCD panel.
*/
at32_select_gpio(GPIO_PIN_PB(15), AT32_GPIOF_OUTPUT);
gpio_request(GPIO_PIN_PB(15), "backlight");
gpio_direction_output(GPIO_PIN_PB(15), 0);

atevklcd10x_lcdc_data.atmel_lcdfb_power_control =
atevklcd10x_lcdc_power_control;

at32_add_device_lcdc(0, &atevklcd10x_lcdc_data,
fbmem_start, fbmem_size,
ATMEL_LCDC_ALT_18BIT | ATMEL_LCDC_PE_DVAL);

at32_add_device_ac97c(0, &ac97c0_data);

return 0;
}
postcore_initcall(atevklcd10x_init);

0 comments on commit 30754ac

Please sign in to comment.