]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/base/power/opp/of.c
PM / OPP: Fix memory leak while adding duplicate OPPs
[karo-tx-linux.git] / drivers / base / power / opp / of.c
index 3f7d2591b173f97e87588077fd9ef41bb76ade2b..356c75edd656512246cd61fa2ac8ba74e690af9c 100644 (file)
@@ -327,8 +327,12 @@ static int _opp_add_static_v2(struct device *dev, struct device_node *np)
                goto free_opp;
 
        ret = _opp_add(dev, new_opp, opp_table);
-       if (ret)
+       if (ret) {
+               /* Don't return error for duplicate OPPs */
+               if (ret == -EBUSY)
+                       ret = 0;
                goto free_opp;
+       }
 
        /* OPP to select on device suspend */
        if (of_property_read_bool(np, "opp-suspend")) {