linux-stable/drivers/clk/qcom
Taniya Das 25708f73ff clk: qcom: gdsc: Set retain_ff before moving to HW CTRL
Enable the retain_ff_enable bit of GDSCR only if the GDSC is already ON.
Once the GDSCR moves to HW control, SW no longer can determine the state
of the GDSCR and setting the retain_ff bit could destroy all the register
contents we intended to save.
Therefore, move the retain_ff configuration before switching the GDSC to
HW trigger mode.

Cc: stable@vger.kernel.org
Fixes: 173722995c ("clk: qcom: gdsc: Add support to enable retention of GSDCR")
Signed-off-by: Taniya Das <quic_tdas@quicinc.com>
Reviewed-by: Imran Shaik <quic_imrashai@quicinc.com>
Tested-by: Imran Shaik <quic_imrashai@quicinc.com> # on QCS8300
Link: https://lore.kernel.org/r/20250214-gdsc_fixes-v1-1-73e56d68a80f@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-13 16:39:06 -05:00
..
a7-pll.c
a53-pll.c clk: qcom: a53-pll: Add MSM8226 a7pll support 2024-08-15 14:14:54 -05:00
apcs-msm8916.c clk: Switch back to struct platform_driver::remove() 2024-09-21 14:12:05 -07:00
apcs-msm8996.c
apcs-sdx55.c clk: Switch back to struct platform_driver::remove() 2024-09-21 14:12:05 -07:00
apss-ipq6018.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
apss-ipq-pll.c clk: qcom: apps-ipq-pll: drop 'alpha_en_mask' from IPQ5332 PLL config 2024-12-26 16:43:03 -06:00
camcc-sa8775p.c clk: qcom: camcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
camcc-sc7180.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
camcc-sc7280.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
camcc-sc8280xp.c clk: qcom: camcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
camcc-sdm845.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
camcc-sm4450.c clk: qcom: camcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
camcc-sm6350.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
camcc-sm7150.c clk: qcom: Drop unused header includes 2025-02-14 09:15:27 -06:00
camcc-sm8150.c clk: qcom: camcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
camcc-sm8250.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
camcc-sm8450.c clk: qcom: camcc-sm8450: Add SM8475 support 2024-10-05 22:09:49 -05:00
camcc-sm8550.c clk: qcom: camcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
camcc-sm8650.c clk: qcom: camcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
camcc-x1e80100.c clk: qcom: camcc-x1e80100: Set titan_top_gdsc as the parent GDSC of subordinate GDSCs 2024-12-27 10:43:13 -06:00
clk-alpha-pll.c clk: qcom: clk-alpha-pll: Do not use random stack value for recalc rate 2025-02-14 09:15:27 -06:00
clk-alpha-pll.h clk: qcom: clk-alpha-pll: Add Pongo PLL 2025-01-06 10:31:39 -06:00
clk-branch.c clk: qcom: clk-branch: Fix invert halt status bit check for votable clocks 2025-02-14 11:08:22 -06:00
clk-branch.h clk: qcom: branch: Add clk_branch2_prepare_ops 2024-06-12 23:04:26 -05:00
clk-cbf-8996.c clk: Switch back to struct platform_driver::remove() 2024-09-21 14:12:05 -07:00
clk-cpu-8996.c
clk-hfpll.c
clk-hfpll.h
clk-krait.c
clk-krait.h
clk-pll.c
clk-pll.h
clk-rcg2.c clk: qcom: gcc-sdm845: Add general purpose clock ops 2025-01-07 11:16:27 -06:00
clk-rcg.c clk: qcom: rcg: add 1/1 pixel clock ratio 2025-01-06 18:05:27 -06:00
clk-rcg.h clk: qcom: gcc-sdm845: Add general purpose clock ops 2025-01-07 11:16:27 -06:00
clk-regmap-divider.c
clk-regmap-divider.h
clk-regmap-mux-div.c
clk-regmap-mux-div.h
clk-regmap-mux.c
clk-regmap-mux.h
clk-regmap-phy-mux.c
clk-regmap-phy-mux.h
clk-regmap.c
clk-regmap.h
clk-rpm.c clk: qcom: rpm: simplify locking with guard() 2024-12-25 22:14:28 -06:00
clk-rpmh.c Merge branches 'clk-microchip', 'clk-xilinx', 'clk-allwinner', 'clk-imx' and 'clk-qcom' into clk-next 2025-01-21 11:22:19 -08:00
clk-smd-rpm.c clk: qcom: smd-rpm: Add clocks for SDM429 2025-02-14 11:02:50 -06:00
clk-spmi-pmic-div.c clk: qcom: spmi-pmic-div: simplify locking with guard() 2024-12-25 22:14:28 -06:00
common.c clk: qcom: Support attaching GDSCs to multiple parents 2025-02-07 23:20:55 -06:00
common.h clk: qcom: constify static 'struct qcom_icc_hws_data' 2024-10-05 22:18:22 -05:00
dispcc0-sa8775p.c clk: qcom: dispcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
dispcc1-sa8775p.c clk: qcom: dispcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
dispcc-qcm2290.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
dispcc-sc7180.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
dispcc-sc7280.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
dispcc-sc8280xp.c clk: qcom: dispcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
dispcc-sdm845.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
dispcc-sm4450.c clk: qcom: dispcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
dispcc-sm6115.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
dispcc-sm6125.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
dispcc-sm6350.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
dispcc-sm6375.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
dispcc-sm7150.c clk: qcom: Drop unused header includes 2025-02-14 09:15:27 -06:00
dispcc-sm8250.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
dispcc-sm8450.c clk: qcom: dispcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
dispcc-sm8550.c clk: qcom: dispcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
dispcc-sm8750.c clk: qcom: dispcc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
dispcc-x1e80100.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
ecpricc-qdu1000.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-apq8084.c
gcc-ipq806x.c clk: qcom: Constify struct freq_tbl 2024-07-28 21:41:48 -05:00
gcc-ipq4019.c
gcc-ipq5018.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-ipq5332.c clk: qcom: ipq5332: remove q6 bring up clocks 2024-10-23 11:31:10 -05:00
gcc-ipq5424.c clk: qcom: ipq5424: fix software and hardware flow control error of UART 2025-02-14 11:08:49 -06:00
gcc-ipq6018.c clk: qcom: gcc-ipq6018: remove alpha values from NSS Crypto PLL's config 2024-12-26 16:43:04 -06:00
gcc-ipq8074.c clk: qcom: Constify struct freq_tbl 2024-07-28 21:41:48 -05:00
gcc-ipq9574.c clk: qcom: ipq9574: remove q6 bring up clocks 2024-10-23 11:31:10 -05:00
gcc-mdm9607.c clk: qcom: gcc-mdm9607: Fix cmd_rcgr offset for blsp1_uart6 rcg 2025-01-02 20:34:24 -06:00
gcc-mdm9615.c clk: qcom: Constify struct freq_tbl 2024-07-28 21:41:48 -05:00
gcc-msm8660.c clk: qcom: Constify struct freq_tbl 2024-07-28 21:41:48 -05:00
gcc-msm8909.c
gcc-msm8916.c
gcc-msm8917.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-msm8939.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-msm8953.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-msm8960.c clk: qcom: Drop unused header includes 2025-02-14 09:15:27 -06:00
gcc-msm8974.c clk: qcom: Drop unused header includes 2025-02-14 09:15:27 -06:00
gcc-msm8976.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-msm8994.c clk: qcom: Constify struct freq_tbl 2024-07-28 21:41:48 -05:00
gcc-msm8996.c clk: qcom: Constify struct freq_tbl 2024-07-28 21:41:48 -05:00
gcc-msm8998.c clk: qcom: gcc-msm8998: Add Q6 BIMC and LPASS core, ADSP SMMU clocks 2024-08-15 16:11:42 -05:00
gcc-qcm2290.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-qcs404.c clk: qcom: gcc-qcs404: fix initial rate of GPLL3 2024-10-22 21:00:45 -05:00
gcc-qcs615.c clk: qcom: gcc: Add support for QCS615 GCC clocks 2024-12-25 22:54:33 -06:00
gcc-qcs8300.c clk: qcom: Add support for Global Clock Controller on QCS8300 2024-11-05 17:00:14 -08:00
gcc-qdu1000.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sa8775p.c clk: qcom: gcc-sa8775p: Set FORCE_MEM_CORE_ON for gcc_ufs_phy_ice_core_clk 2024-06-23 17:14:04 -05:00
gcc-sar2130p.c clk: qcom: add support for GCC on SAR2130P 2024-11-05 16:22:29 -08:00
gcc-sc7180.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sc7280.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sc8180x.c clk: qcom: gcc-sm8150: De-register gcc_cpuss_ahb_clk_src 2024-08-15 14:14:55 -05:00
gcc-sc8280xp.c clk: qcom: gcc-sc8280xp: don't use parking clk_ops for QUPs 2024-09-03 13:01:34 -07:00
gcc-sdm660.c clk: qcom: gcc-sdm660: Add missing SDCC block resets 2025-02-14 11:06:42 -06:00
gcc-sdm845.c clk: qcom: gcc-sdm845: Do not use shared clk_ops for QUPs 2025-01-07 19:33:46 -06:00
gcc-sdx55.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sdx65.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sdx75.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sm4450.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sm6115.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sm6125.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sm6350.c clk: qcom: gcc-sm6350: Add missing parent_map for two clocks 2024-12-26 15:54:06 -06:00
gcc-sm6375.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sm7150.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sm8150.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sm8250.c clk: qcom: gcc-sm8250: Do not turn off PCIe GDSCs during gdsc_disable() 2024-07-28 22:15:22 -05:00
gcc-sm8350.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sm8450.c clk: qcom: gcc-sm8450: Add SM8475 support 2024-10-05 22:09:48 -05:00
gcc-sm8550.c clk: qcom: gcc-sm8550: Do not turn off PCIe GDSCs during gdsc_disable() 2024-12-25 22:03:18 -06:00
gcc-sm8650.c clk: qcom: gcc-sm8650: Do not turn off USB GDSCs during gdsc_disable() 2025-03-05 16:13:01 -06:00
gcc-sm8750.c clk: qcom: Add support for GCC on SM8750 2025-01-06 10:29:27 -06:00
gcc-x1e80100.c clk: qcom: gcc-x1e80100: Unregister GCC_GPU_CFG_AHB_CLK/GCC_DISP_XO_CLK 2025-02-04 21:15:21 -06:00
gdsc.c clk: qcom: gdsc: Set retain_ff before moving to HW CTRL 2025-03-13 16:39:06 -05:00
gdsc.h clk: qcom: Support attaching GDSCs to multiple parents 2025-02-07 23:20:55 -06:00
gpucc-msm8998.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
gpucc-qcm2290.c clk: qcom: Add QCM2290 GPU clock controller driver 2024-06-13 18:03:02 -05:00
gpucc-sa8775p.c clk: qcom: Add support for GPU Clock Controller on QCS8300 2025-02-14 11:34:50 -06:00
gpucc-sar2130p.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
gpucc-sc7180.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
gpucc-sc7280.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
gpucc-sc8280xp.c clk: qcom: gpucc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
gpucc-sdm660.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
gpucc-sdm845.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
gpucc-sm4450.c clk: qcom: Drop unused header includes 2025-02-14 09:15:27 -06:00
gpucc-sm6115.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-sm6125.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-sm6350.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
gpucc-sm6375.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-sm8150.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
gpucc-sm8250.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
gpucc-sm8350.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
gpucc-sm8450.c clk: qcom: gpucc-sm8450: Add SM8475 support 2024-10-05 22:09:48 -05:00
gpucc-sm8550.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-sm8650.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-x1e80100.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-x1p42100.c clk: qcom: gpucc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
hfpll.c
ipq-cmn-pll.c clk: qcom: Add CMN PLL clock controller driver for IPQ SoC 2025-01-06 17:44:47 -06:00
Kconfig clk: qcom: ipq5018: allow it to be bulid on arm32 2025-02-14 11:31:22 -06:00
kpss-xcc.c clk: qcom: Drop unused header includes 2025-02-14 09:15:27 -06:00
krait-cc.c clk: qcom: Drop unused header includes 2025-02-14 09:15:27 -06:00
lcc-ipq806x.c clk: qcom: Constify struct freq_tbl 2024-07-28 21:41:48 -05:00
lcc-msm8960.c clk: qcom: Constify struct freq_tbl 2024-07-28 21:41:48 -05:00
lpass-gfm-sm8250.c clk: qcom: add missing MODULE_DESCRIPTION() macros 2024-05-26 22:13:01 -05:00
lpassaudiocc-sc7280.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
lpasscc-sc7280.c
lpasscc-sc8280xp.c clk: qcom: lpasscc-sc8280xp: Constify struct regmap_config 2024-07-06 12:57:13 -05:00
lpasscc-sdm845.c clk: qcom: Drop unused header includes 2025-02-14 09:15:27 -06:00
lpasscc-sm6115.c clk: qcom: Add SM6115 LPASSCC 2025-01-07 20:29:39 -06:00
lpasscorecc-sc7180.c clk: qcom: Drop unused header includes 2025-02-14 09:15:27 -06:00
lpasscorecc-sc7280.c clk: qcom: Drop unused header includes 2025-02-14 09:15:27 -06:00
Makefile clk: qcom: Add SM6115 LPASSCC 2025-01-07 20:29:39 -06:00
mmcc-apq8084.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
mmcc-msm8960.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
mmcc-msm8974.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
mmcc-msm8994.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
mmcc-msm8996.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
mmcc-msm8998.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
mmcc-sdm660.c clk: qcom: Add missing header includes 2025-02-14 09:15:28 -06:00
nsscc-qca8k.c clk: qcom: add clock controller driver for qca8386/qca8084 2024-06-12 23:04:26 -05:00
q6sstop-qcs404.c
reset.c
reset.h
tcsrcc-sm8550.c clk: qcom: tcsrcc-sm8550: add SAR2130P support 2024-11-05 16:22:29 -08:00
tcsrcc-sm8650.c
tcsrcc-sm8750.c clk: qcom: Add TCSR clock driver for SM8750 2025-01-06 10:29:27 -06:00
tcsrcc-x1e80100.c
turingcc-qcs404.c
videocc-sa8775p.c clk: qcom: videocc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
videocc-sc7180.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
videocc-sc7280.c This a large collection of clk driver updates and a handful of new SoC 2024-07-19 12:16:28 -07:00
videocc-sdm845.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
videocc-sm7150.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
videocc-sm8150.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
videocc-sm8250.c This a large collection of clk driver updates and a handful of new SoC 2024-07-19 12:16:28 -07:00
videocc-sm8350.c clk: qcom: videocc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
videocc-sm8450.c clk: qcom: videocc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00
videocc-sm8550.c clk: qcom: videocc: Constify 'struct qcom_cc_desc' 2025-03-03 22:29:38 -06:00