power: avs: qcom-cpr: fix unsigned expression compared with zero
authorNiklas Cassel <nks@flawful.org>
Mon, 23 Dec 2019 14:19:31 +0000 (15:19 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Sun, 29 Dec 2019 21:11:22 +0000 (22:11 +0100)
drivers/power/avs/qcom-cpr.c:1539:5-21:
warning: unsigned expression compared with zero: drv->num_corners < 0

Reported-by: kbuild test robot <lkp@intel.com>
Reported-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: Niklas Cassel <nks@flawful.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/power/avs/qcom-cpr.c

index a52d2ce..232836a 100644 (file)
@@ -1535,11 +1535,13 @@ static int cpr_pd_attach_dev(struct generic_pm_domain *domain,
         * The reason for this is that we need to know the highest
         * frequency associated with each fuse corner.
         */
-       drv->num_corners = dev_pm_opp_get_opp_count(&drv->pd.dev);
-       if (drv->num_corners < 0) {
-               ret = drv->num_corners;
+       ret = dev_pm_opp_get_opp_count(&drv->pd.dev);
+       if (ret < 0) {
+               dev_err(drv->dev, "could not get OPP count\n");
                goto unlock;
        }
+       drv->num_corners = ret;
+
        if (drv->num_corners < 2) {
                dev_err(drv->dev, "need at least 2 OPPs to use CPR\n");
                ret = -EINVAL;