Commit b344d87a authored by Jonas Zetterberg's avatar Jonas Zetterberg Committed by Tony Lindgren

IGEPv2: Use Red Led1 as Heartbeat if configured

If not configured it will be exported as normal GPIO led.
Signed-off-by: default avatarJonas Zetterberg <jozz@jozz.se>
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent c67b0d98
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
#include <linux/clk.h> #include <linux/clk.h>
#include <linux/io.h> #include <linux/io.h>
#include <linux/gpio.h> #include <linux/gpio.h>
#include <linux/leds.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <linux/regulator/machine.h> #include <linux/regulator/machine.h>
...@@ -354,9 +355,34 @@ static void __init igep2_display_init(void) ...@@ -354,9 +355,34 @@ static void __init igep2_display_init(void)
gpio_direction_output(IGEP2_GPIO_DVI_PUP, 1)) gpio_direction_output(IGEP2_GPIO_DVI_PUP, 1))
pr_err("IGEP v2: Could not obtain gpio GPIO_DVI_PUP\n"); pr_err("IGEP v2: Could not obtain gpio GPIO_DVI_PUP\n");
} }
#ifdef CONFIG_LEDS_TRIGGERS
static struct gpio_led gpio_leds[] = {
{
.name = "GPIO_LED1_RED",
.default_trigger = "heartbeat",
.gpio = IGEP2_GPIO_LED1_RED,
},
};
static struct gpio_led_platform_data gpio_leds_info = {
.leds = gpio_leds,
.num_leds = ARRAY_SIZE(gpio_leds),
};
static struct platform_device leds_gpio = {
.name = "leds-gpio",
.id = -1,
.dev = {
.platform_data = &gpio_leds_info,
},
};
#endif
static struct platform_device *igep2_devices[] __initdata = { static struct platform_device *igep2_devices[] __initdata = {
&igep2_dss_device, &igep2_dss_device,
#ifdef CONFIG_LEDS_TRIGGERS
&leds_gpio,
#endif
}; };
static void __init igep2_init_irq(void) static void __init igep2_init_irq(void)
...@@ -456,14 +482,14 @@ static void __init igep2_init(void) ...@@ -456,14 +482,14 @@ static void __init igep2_init(void)
gpio_set_value(IGEP2_GPIO_LED0_GREEN, 0); gpio_set_value(IGEP2_GPIO_LED0_GREEN, 0);
} else } else
pr_warning("IGEP v2: Could not obtain gpio GPIO_LED0_GREEN\n"); pr_warning("IGEP v2: Could not obtain gpio GPIO_LED0_GREEN\n");
#ifndef CONFIG_LEDS_TRIGGERS
if ((gpio_request(IGEP2_GPIO_LED1_RED, "GPIO_LED1_RED") == 0) && if ((gpio_request(IGEP2_GPIO_LED1_RED, "GPIO_LED1_RED") == 0) &&
(gpio_direction_output(IGEP2_GPIO_LED1_RED, 1) == 0)) { (gpio_direction_output(IGEP2_GPIO_LED1_RED, 1) == 0)) {
gpio_export(IGEP2_GPIO_LED1_RED, 0); gpio_export(IGEP2_GPIO_LED1_RED, 0);
gpio_set_value(IGEP2_GPIO_LED1_RED, 0); gpio_set_value(IGEP2_GPIO_LED1_RED, 0);
} else } else
pr_warning("IGEP v2: Could not obtain gpio GPIO_LED1_RED\n"); pr_warning("IGEP v2: Could not obtain gpio GPIO_LED1_RED\n");
#endif
/* GPIO W-LAN + Bluetooth combo module */ /* GPIO W-LAN + Bluetooth combo module */
if ((gpio_request(IGEP2_GPIO_WIFI_NPD, "GPIO_WIFI_NPD") == 0) && if ((gpio_request(IGEP2_GPIO_WIFI_NPD, "GPIO_WIFI_NPD") == 0) &&
(gpio_direction_output(IGEP2_GPIO_WIFI_NPD, 1) == 0)) { (gpio_direction_output(IGEP2_GPIO_WIFI_NPD, 1) == 0)) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment