From affd6e891b5008aecb9079de508458e088d21bb0 Mon Sep 17 00:00:00 2001 From: Finley Xiao Date: Fri, 3 Mar 2023 14:54:36 +0800 Subject: [PATCH] PM / devfreq: rockchip_dmc: Don't do suspend and resume when devfreq is null Signed-off-by: Finley Xiao Change-Id: I2d1c87024507ae1670f1e5eae8c4c3872e1a3f91 --- drivers/devfreq/rockchip_dmc.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/drivers/devfreq/rockchip_dmc.c b/drivers/devfreq/rockchip_dmc.c index 9ddc74bd500d..a8abc1c62736 100644 --- a/drivers/devfreq/rockchip_dmc.c +++ b/drivers/devfreq/rockchip_dmc.c @@ -3362,10 +3362,12 @@ static __maybe_unused int rockchip_dmcfreq_suspend(struct device *dev) if (ret) return ret; - ret = devfreq_suspend_device(dmcfreq->info.devfreq); - if (ret < 0) { - dev_err(dev, "failed to suspend the devfreq devices\n"); - return ret; + if (dmcfreq->info.devfreq) { + ret = devfreq_suspend_device(dmcfreq->info.devfreq); + if (ret < 0) { + dev_err(dev, "failed to suspend the devfreq devices\n"); + return ret; + } } /* set voltage to sleep_volt if need */ @@ -3425,11 +3427,14 @@ static __maybe_unused int rockchip_dmcfreq_resume(struct device *dev) if (ret) return ret; - ret = devfreq_resume_device(dmcfreq->info.devfreq); - if (ret < 0) { - dev_err(dev, "failed to resume the devfreq devices\n"); - return ret; + if (dmcfreq->info.devfreq) { + ret = devfreq_resume_device(dmcfreq->info.devfreq); + if (ret < 0) { + dev_err(dev, "failed to resume the devfreq devices\n"); + return ret; + } } + return ret; }