Checking for the presence of the property first isn't strictly needed
as we can react on the return code of fwnode_property_read_string.
Also, even if the presence of a property "label" was checked,
reading a string value for it theoretically still can fail and
this case isn't handled.

Signed-off-by: Heiner Kallweit <hkallwe...@gmail.com>
---
v2:
- rebased due to removal of patch 2 of the original series
---
 drivers/leds/leds-gpio.c | 16 +++++++---------
 1 file changed, 7 insertions(+), 9 deletions(-)

diff --git a/drivers/leds/leds-gpio.c b/drivers/leds/leds-gpio.c
index 171ba2f..00a24e3 100644
--- a/drivers/leds/leds-gpio.c
+++ b/drivers/leds/leds-gpio.c
@@ -181,16 +181,14 @@ static struct gpio_leds_priv *gpio_leds_create(struct 
platform_device *pdev)
                        goto err;
                }
 
-               if (fwnode_property_present(child, "label")) {
-                       fwnode_property_read_string(child, "label", &led.name);
-               } else {
-                       if (IS_ENABLED(CONFIG_OF) && !led.name && np)
-                               led.name = np->name;
-                       if (!led.name) {
-                               ret = -EINVAL;
-                               goto err;
-                       }
+               ret = fwnode_property_read_string(child, "label", &led.name);
+               if (ret && IS_ENABLED(CONFIG_OF) && np)
+                       led.name = np->name;
+               if (!led.name) {
+                       ret = -EINVAL;
+                       goto err;
                }
+
                fwnode_property_read_string(child, "linux,default-trigger",
                                            &led.default_trigger);
 
-- 
2.9.2


Reply via email to