[PATCH 16/17] leds: turris-omnia: Simplify with scoped for each OF child loop

Marek Behún kabel at kernel.org
Mon Aug 19 03:30:51 PDT 2024


Reviewed-by: Marek Behún <kabel at kernel.org>

On Fri, Aug 16, 2024 at 05:31:48PM +0200, Krzysztof Kozlowski wrote:
> Use scoped for_each_available_child_of_node_scoped() when iterating over
> device nodes to make code a bit simpler.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>
> ---
>  drivers/leds/leds-turris-omnia.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/leds/leds-turris-omnia.c b/drivers/leds/leds-turris-omnia.c
> index 39f740be058f..1ef942b5cefa 100644
> --- a/drivers/leds/leds-turris-omnia.c
> +++ b/drivers/leds/leds-turris-omnia.c
> @@ -452,7 +452,7 @@ static int omnia_mcu_get_features(const struct i2c_client *client)
>  static int omnia_leds_probe(struct i2c_client *client)
>  {
>  	struct device *dev = &client->dev;
> -	struct device_node *np = dev_of_node(dev), *child;
> +	struct device_node *np = dev_of_node(dev);
>  	struct omnia_leds *leds;
>  	struct omnia_led *led;
>  	int ret, count;
> @@ -497,12 +497,10 @@ static int omnia_leds_probe(struct i2c_client *client)
>  	}
>  
>  	led = &leds->leds[0];
> -	for_each_available_child_of_node(np, child) {
> +	for_each_available_child_of_node_scoped(np, child) {
>  		ret = omnia_led_register(client, led, child);
> -		if (ret < 0) {
> -			of_node_put(child);
> +		if (ret < 0)
>  			return ret;
> -		}
>  
>  		led += ret;
>  	}
> 
> -- 
> 2.43.0
> 



More information about the Linux-mediatek mailing list