[PATCH 2/3] ARM: pxa: palmtreo: fix #ifdefs for leds-gpio device

Mike Dunn mikedunn at newsguy.com
Sat Dec 22 14:31:58 EST 2012


The #ifdefs around the leds-gpio device platform data are erroneous.  Currently
the device is not instantiated on the centro unless CONFIG_MACH_TREO680 is
defined.

Signed-off-by: Mike Dunn <mikedunn at newsguy.com>
---

The #ifdefs within palmtreo_leds_init() are a little ugly, but I think the only
alternative would be to instantiate the leds-gpio device platform data for both
treo680 and centro, which would require some of the #defines in palmtreo.h to be
moved outside their containing #ifdef CONFIG_MACH_{TREO680,CENTRO}.

 arch/arm/mach-pxa/palmtreo.c |   16 +++++++++-------
 1 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/arch/arm/mach-pxa/palmtreo.c b/arch/arm/mach-pxa/palmtreo.c
index dcc38a1..cb9cc7b 100644
--- a/arch/arm/mach-pxa/palmtreo.c
+++ b/arch/arm/mach-pxa/palmtreo.c
@@ -357,7 +357,9 @@ static struct gpio_led_platform_data treo680_gpio_led_info = {
 	.leds		= treo680_gpio_leds,
 	.num_leds	= ARRAY_SIZE(treo680_gpio_leds),
 };
+#endif
 
+#ifdef CONFIG_MACH_CENTRO
 static struct gpio_led centro_gpio_leds[] = {
 	{
 		.name			= "centro:vibra:vibra",
@@ -381,25 +383,25 @@ static struct gpio_led_platform_data centro_gpio_led_info = {
 	.leds		= centro_gpio_leds,
 	.num_leds	= ARRAY_SIZE(centro_gpio_leds),
 };
+#endif
 
 static struct platform_device palmtreo_leds = {
 	.name   = "leds-gpio",
 	.id     = -1,
-	.dev    = {
-		.platform_data  = &treo680_gpio_led_info,
-	}
 };
 
 static void __init palmtreo_leds_init(void)
 {
+#ifdef CONFIG_MACH_CENTRO
 	if (machine_is_centro())
 		palmtreo_leds.dev.platform_data = &centro_gpio_led_info;
-
+#endif
+#ifdef CONFIG_MACH_TREO680
+	if (machine_is_treo680())
+		palmtreo_leds.dev.platform_data = &treo680_gpio_led_info;
+#endif
 	platform_device_register(&palmtreo_leds);
 }
-#else
-static inline void palmtreo_leds_init(void) {}
-#endif
 
 /******************************************************************************
  * Machine init
-- 
1.7.8.6




More information about the linux-arm-kernel mailing list