Skip to contentSkip to conversation

pxa/hx4700: Add ASIC3 LED support

PATCH New Paul Parsons 2 participants 2 messages Apr 30, 2011 – May 3, 2011

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 pxa/hx4700: Add ASIC3 LED support

Add LED support for the HTC ASIC3. Underlying support is provided by the mfd/asic3 and leds/leds-asic3 drivers. An example configuration is provided by the pxa/hx4700 platform.

---

arch/arm/mach-pxa/hx4700.c +17 -0
diff -uprN clean-2.6.39-rc5/arch/arm/mach-pxa/hx4700.c linux-2.6.39-rc5/arch/arm/mach-pxa/hx4700.c
@@ -23,6 +23,7 @@
 #include <linux/gpio_keys.h>
 #include <linux/input.h>
 #include <linux/lcd.h>
+#include <linux/leds.h>
 #include <linux/mfd/htc-egpio.h>
 #include <linux/mfd/asic3.h>
 #include <linux/mtd/physmap.h>
@@ -280,6 +281,21 @@ static u16 asic3_gpio_config[] = {
 	ASIC3_GPIOD15_nPIOW,
 };
 
+static struct asic3_led asic3_leds[ASIC3_NUM_LEDS] = {
+	[0] = {
+		.name = "hx4700:amber",
+		.default_trigger = "ds2760-battery.0-charging-blink-full-solid",
+	},
+	[1] = {
+		.name = "hx4700:green",
+		.default_trigger = "unused",
+	},
+	[2] = {
+		.name = "hx4700:blue",
+		.default_trigger = "hx4700-radio",
+	},
+};
+
 static struct resource asic3_resources[] = {
 	/* GPIO part */
 	[0] = {
@@ -310,6 +326,7 @@ static struct asic3_platform_data asic3_
 	.gpio_config_num = ARRAY_SIZE(asic3_gpio_config),
 	.irq_base        = IRQ_BOARD_START,
 	.gpio_base       = HX4700_ASIC3_GPIO_BASE,
+	.leds            = asic3_leds,
 };
 
 static struct platform_device asic3 = {
#1 lore raw

PATCH 1/1 pxa/hx4700: Add ASIC3 LED support

Am Samstag, den 30.04.2011, 17:59 +0000 schrieb Paul Parsons:

arch/arm/mach-pxa/hx4700.c line 26

Quoted 12 lines

Add LED support for the HTC ASIC3. Underlying support is provided by the mfd/asic3 and leds/leds-asic3 drivers. An example configuration is provided by the pxa/hx4700 platform.

---
diff -uprN clean-2.6.39-rc5/arch/arm/mach-pxa/hx4700.c linux-2.6.39-rc5/arch/arm/mach-pxa/hx4700.c

arch/arm/mach-pxa/hx4700.c +1 -0
@@ -23,6 +23,7 @@
 #include <linux/gpio_keys.h>
 #include <linux/input.h>
 #include <linux/lcd.h>
+#include <linux/leds.h>

This is not needed anymore.

Quoted 26 lines
arch/arm/mach-pxa/hx4700.c +15 -0
 #include <linux/mfd/htc-egpio.h>
 #include <linux/mfd/asic3.h>
 #include <linux/mtd/physmap.h>
@@ -280,6 +281,21 @@ static u16 asic3_gpio_config[] = {
 	ASIC3_GPIOD15_nPIOW,
 };
 
+static struct asic3_led asic3_leds[ASIC3_NUM_LEDS] = {
+	[0] = {
+		.name = "hx4700:amber",
+		.default_trigger = "ds2760-battery.0-charging-blink-full-solid",
+	},
+	[1] = {
+		.name = "hx4700:green",
+		.default_trigger = "unused",
+	},
+	[2] = {
+		.name = "hx4700:blue",
+		.default_trigger = "hx4700-radio",
+	},
+};
+
 static struct resource asic3_resources[] = {
 	/* GPIO part */
 	[0] = {

arch/arm/mach-pxa/hx4700.c static struct asic3_platform_data asic3_ · line 332

Quoted 7 lines
arch/arm/mach-pxa/hx4700.c +1 -0
@@ -310,6 +326,7 @@ static struct asic3_platform_data asic3_
 	.gpio_config_num = ARRAY_SIZE(asic3_gpio_config),
 	.irq_base        = IRQ_BOARD_START,
 	.gpio_base       = HX4700_ASIC3_GPIO_BASE,
+	.leds            = asic3_leds,
 };
 
 static struct platform_device asic3 = {

After removal of the superfluous include,

regards
Philipp