[RFC] led: try to get LED's label from the 'label' property

Sebastian Hesselbarth sebastian.hesselbarth at gmail.com
Sat Jul 26 01:19:57 PDT 2014


On 07/26/2014 02:11 AM, Antony Pavlov wrote:
> Signed-off-by: Antony Pavlov <antonynpavlov at gmail.com>
> ---
>  drivers/led/led-gpio.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/led/led-gpio.c b/drivers/led/led-gpio.c
> index 7bb3b49..31ae627 100644
> --- a/drivers/led/led-gpio.c
> +++ b/drivers/led/led-gpio.c
> @@ -212,7 +212,9 @@ static int led_gpio_of_probe(struct device_d *dev)
>  			continue;
>  
>  		gled = xzalloc(sizeof(*gled));
> -		gled->led.name = xstrdup(child->name);
> +		gled->led.name = of_get_property(child, "label", NULL);

IIRC, back the days this was introduced, there was no "label" property.

Anyway, of_get_property gives you the reference to something that can
change, i.e. if you remove/modify the corresponding node or property
you'll end up with a gleg->led.name pointing to something old or gone.

Sebastian

> +		if (!gled->led.name)
> +			gled->led.name = xstrdup(child->name);
>  		gled->gpio = gpio;
>  		gled->active_low = (flags & OF_GPIO_ACTIVE_LOW) ? 1 : 0;
>  
> 




More information about the barebox mailing list