[PATCH] leds-gpio: Fix default state handling on OF platforms

Andrew Morton akpm at linux-foundation.org
Tue Feb 9 08:04:55 EST 2010


On Fri, 5 Feb 2010 23:54:37 +0300
Anton Vorontsov <avorontsov at ru.mvista.com> wrote:

> The driver wrongly sets default state for LEDs that don't specify
> default-state property.
> 
> Currently the driver handles default state this way:
> 
> memset(&led, 0, sizeof(led));
> for_each_child_of_node(np, child) {
> 	state = of_get_property(child, "default-state", NULL);
> 	if (state) {
> 		if (!strcmp(state, "keep"))
> 			led.default_state = LEDS_GPIO_DEFSTATE_KEEP;
> 		...
> 	}
> 	ret = create_gpio_led(&led, ...);
> }
> 
> Which means that all LEDs that do not specify default-state will
> inherit the last value of the default-state property, which is wrong.


Does this actually happen in any 2.6.33 driver code?  If so, we might
want to merge this into 2.6.33.  And perhaps earlier kernels.  Or not. 
There's no way for me to tell :(



More information about the Linuxppc-dev mailing list