Commit 865cc639 authored by Christer Weinigel's avatar Christer Weinigel Committed by Ben Dooks
Browse files

[ARM] Acer n30: LED support.



Add support for the LEDs on the Acer N30.

Signed-off-by: default avatarChrister Weinigel <christer@weinigel.se>
Signed-off-by: default avatarBen Dooks <ben-linux@fluff.org>
parent 62065750
Loading
Loading
Loading
Loading
+37 −0
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@
#include <asm/irq.h>
#include <asm/mach-types.h>

#include <asm/arch/leds-gpio.h>
#include <asm/arch/regs-gpio.h>

#include <asm/mach/arch.h>
@@ -164,6 +165,40 @@ static struct platform_device n30_button_device = {
	}
};

/* This is the bluetooth LED on the device. */
static struct s3c24xx_led_platdata n30_blue_led_pdata = {
	.name		= "blue_led",
	.gpio		= S3C2410_GPG6,
	.def_trigger	= "",
};

/* This LED is driven by the battery microcontroller, and is blinking
 * red, blinking green or solid green when the battery is low,
 * charging or full respectively.  By driving GPD9 low, it's possible
 * to force the LED to blink red, so call that warning LED.  */
static struct s3c24xx_led_platdata n30_warning_led_pdata = {
	.name		= "warning_led",
	.flags          = S3C24XX_LEDF_ACTLOW,
	.gpio		= S3C2410_GPD9,
	.def_trigger	= "",
};

static struct platform_device n30_blue_led = {
	.name		= "s3c24xx_led",
	.id		= 1,
	.dev		= {
		.platform_data	= &n30_blue_led_pdata,
	},
};

static struct platform_device n30_warning_led = {
	.name		= "s3c24xx_led",
	.id		= 2,
	.dev		= {
		.platform_data	= &n30_warning_led_pdata,
	},
};

static struct platform_device *n30_devices[] __initdata = {
	&s3c_device_lcd,
	&s3c_device_wdt,
@@ -172,6 +207,8 @@ static struct platform_device *n30_devices[] __initdata = {
	&s3c_device_usb,
	&s3c_device_usbgadget,
	&n30_button_device,
	&n30_blue_led,
	&n30_warning_led,
};

static struct s3c2410_platform_i2c n30_i2ccfg = {