2009-07-21 02:22:05

by Subrata Modak

[permalink] [raw]
Subject: [PATCH 03/06][RESEND] Fix compilation warning for drivers/leds/leds_gpio.c

gcc 4.4.1 generates the following build warning on i386:

drivers/leds/leds-gpio.c:75: warning: 'create_gpio_led' defined but not used
drivers/leds/leds-gpio.c:126: warning: 'delete_gpio_led' defined but not used
drivers/leds/leds-gpio.c: In function 'gpio_led_init':
drivers/leds/leds-gpio.c:316: warning: 'ret' is used uninitialized in this function

Fix them as below:
1) Put the definitions of create_gpio_led() and delete_gpio_led() inside:
"#ifdef CONFIG_LEDS_GPIO_PLATFORM"
when you are actually using them only inside:
"#ifdef CONFIG_LEDS_GPIO_PLATFORM"

2) And then initialize "ret = 0", as Ingo suggests:
http://lkml.org/lkml/2009/7/18/89,

This patch is rebased from an earlier version:
http://lkml.org/lkml/2009/7/14/361,

Signed-off-by: Subrata Modak<[email protected]>,
---

--- a/drivers/leds/leds-gpio.c 2009-06-29 19:20:42.000000000 +0530
+++ b/drivers/leds/leds-gpio.c 2009-07-15 05:51:21.000000000 +0530
@@ -29,6 +29,7 @@ struct gpio_led_data {
unsigned long *delay_on, unsigned long *delay_off);
};

+#ifdef CONFIG_LEDS_GPIO_PLATFORM
static void gpio_led_work(struct work_struct *work)
{
struct gpio_led_data *led_dat =
@@ -132,7 +133,6 @@ static void delete_gpio_led(struct gpio_
gpio_free(led->gpio);
}

-#ifdef CONFIG_LEDS_GPIO_PLATFORM
static int __devinit gpio_led_probe(struct platform_device *pdev)
{
struct gpio_led_platform_data *pdata = pdev->dev.platform_data;
@@ -298,7 +298,7 @@ static struct of_platform_driver of_gpio

static int __init gpio_led_init(void)
{
- int ret;
+ int ret = 0;

#ifdef CONFIG_LEDS_GPIO_PLATFORM
ret = platform_driver_register(&gpio_led_driver);

---
Regards--
Subrata