The patch below does not apply to the 5.10-stable tree. If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to stable@vger.kernel.org.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-5.10.y git checkout FETCH_HEAD git cherry-pick -x a9f71a033587c9074059132d34c74eabbe95ef26 # <resolve conflicts, build, test, etc.> git commit -s git send-email --to 'stable@vger.kernel.org' --in-reply-to '2023091334-skillful-sauciness-f573@gregkh' --subject-prefix 'PATCH 5.10.y' HEAD^..
Possible dependencies:
a9f71a033587 ("clk: qcom: turingcc-qcs404: fix missing resume during probe") 72cfc73f4663 ("clk: qcom: use devm_pm_runtime_enable and devm_pm_clk_create") ce8c195e652f ("clk: qcom: lpasscc: Introduce pm autosuspend for SC7180") 8d4025943e13 ("clk: qcom: camcc-sc7180: Use runtime PM ops instead of clk ones") a2d8f507803e ("clk: qcom: Add support to LPASS AUDIO_CC Glitch Free Mux clocks") 4ee9fe3e292b ("clk: qcom: lpass-sc7180: Disentangle the two clock devices") 7635622b77b5 ("clk: qcom: lpasscc-sc7810: Use devm in probe") 15d09e830bbc ("clk: qcom: camcc: Add camera clock controller driver for SC7180")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From a9f71a033587c9074059132d34c74eabbe95ef26 Mon Sep 17 00:00:00 2001 From: Johan Hovold johan+linaro@kernel.org Date: Tue, 18 Jul 2023 15:29:02 +0200 Subject: [PATCH] clk: qcom: turingcc-qcs404: fix missing resume during probe
Drivers that enable runtime PM must make sure that the controller is runtime resumed before accessing its registers to prevent the power domain from being disabled.
Fixes: 892df0191b29 ("clk: qcom: Add QCS404 TuringCC") Cc: stable@vger.kernel.org # 5.2 Cc: Bjorn Andersson andersson@kernel.org Signed-off-by: Johan Hovold johan+linaro@kernel.org Link: https://lore.kernel.org/r/20230718132902.21430-9-johan+linaro@kernel.org Signed-off-by: Bjorn Andersson andersson@kernel.org
diff --git a/drivers/clk/qcom/turingcc-qcs404.c b/drivers/clk/qcom/turingcc-qcs404.c index 43184459228f..2cd288d6c3e4 100644 --- a/drivers/clk/qcom/turingcc-qcs404.c +++ b/drivers/clk/qcom/turingcc-qcs404.c @@ -125,11 +125,22 @@ static int turingcc_probe(struct platform_device *pdev) return ret; }
+ ret = pm_runtime_resume_and_get(&pdev->dev); + if (ret) + return ret; + ret = qcom_cc_probe(pdev, &turingcc_desc); if (ret < 0) - return ret; + goto err_put_rpm; + + pm_runtime_put(&pdev->dev);
return 0; + +err_put_rpm: + pm_runtime_put_sync(&pdev->dev); + + return ret; }
static const struct dev_pm_ops turingcc_pm_ops = {
linux-stable-mirror@lists.linaro.org