This is an alternative approach to the issue that Bjorn proposed in https://lore.kernel.org/linux-arm-msm/20211203035436.3505743-1-bjorn.andersson@xxxxxxxxxx/ The disp_cc_mdss_mdp_clk_src clock can become stuck during the boot process for reasons other than just disabling the clocks in clock_disable_unused phase. For example other drivers during the boot procedure can toggle parent of the clock, disabling it for some reason. So instead of enforcing clock parking during the clock_disable_unused, park them during the driver probe. This can break the splash screen display, however loosing the splash screen for few seconds is considered to be lesser evil compared to possibly loosing the display at all (because the RCG gets stuck). ---------------------------------------------------------------- Dmitry Baryshkov (2): clk: qcom: add API to safely park RCG2 sources clk: qcom: dispcc-sdm845: park disp_cc_mdss_mdp_clk_src drivers/clk/qcom/clk-rcg.h | 2 ++ drivers/clk/qcom/clk-rcg2.c | 34 ++++++++++++++++++++++++++++++++++ drivers/clk/qcom/dispcc-sdm845.c | 3 +++ 3 files changed, 39 insertions(+)