mirror-linux/drivers/clk/qcom
Johan Hovold 71c03a8cb2 clk: qcom: gcc-sc8280xp: don't use parking clk_ops for QUPs
A recent change started parking the RCG at an always on parent during
registration, something which specifically breaks handover from an early
serial console.

Quoting Stephen Boyd who fixed this issue for SM8550 [1]:

	The QUPs aren't shared in a way that requires parking the RCG at
	an always on parent in case some other entity turns on the clk.
	The hardware is capable of setting a new frequency itself with
	the DFS mode, so parking is unnecessary. Furthermore, there
	aren't any GDSCs for these devices, so there isn't a possibility
	of the GDSC turning on the clks for housekeeping purposes.

	This wasn't a problem to mark these clks shared until we started
	parking shared RCGs at clk registration time in commit
	01a0a6cc8c ("clk: qcom: Park shared RCGs upon registration").
	Parking at init is actually harmful to the UART when earlycon is
	used. If the device is pumping out data while the frequency
	changes you'll see garbage on the serial console until the
	driver can probe and actually set a proper frequency.

Fixes: 01a0a6cc8c ("clk: qcom: Park shared RCGs upon registration")
Fixes: d65d005f9a ("clk: qcom: add sc8280xp GCC driver")
Link: https://lore.kernel.org/all/20240819233628.2074654-2-swboyd@chromium.org/ [1]
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20240902070830.8535-1-johan+linaro@kernel.org
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2024-09-03 13:01:34 -07:00
..
Kconfig clk: qcom: ipq9574: Use icc-clk for enabling NoC related clocks 2024-07-08 11:40:57 -05:00
Makefile Merge branch '20240602114439.1611-1-quic_jkona@quicinc.com' into clk-for-6.11 2024-06-25 21:49:46 -05:00
a7-pll.c
a53-pll.c
apcs-msm8916.c
apcs-msm8996.c
apcs-sdx55.c
apss-ipq-pll.c clk: qcom: apss-ipq-pll: remove 'config_ctl_hi_val' from Stromer pll configs 2024-05-28 16:31:16 -05:00
apss-ipq6018.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
camcc-sc7180.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
camcc-sc7280.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
camcc-sc8280xp.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
camcc-sdm845.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
camcc-sm6350.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
camcc-sm7150.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
camcc-sm8250.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
camcc-sm8450.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
camcc-sm8550.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
camcc-sm8650.c soc: dt updates for 6.11 2024-07-16 11:43:51 -07:00
camcc-x1e80100.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
clk-alpha-pll.c clk: qcom: clk-alpha-pll: Update set_rate for Zonda PLL 2024-07-31 21:56:09 -05:00
clk-alpha-pll.h clk: qcom: clk-alpha-pll: Add HUAYRA_2290 support 2024-06-12 23:06:52 -05:00
clk-branch.c clk: qcom: branch: Add clk_branch2_prepare_ops 2024-06-12 23:04:26 -05:00
clk-branch.h clk: qcom: branch: Add clk_branch2_prepare_ops 2024-06-12 23:04:26 -05:00
clk-cbf-8996.c interconnect: icc-clk: Specify master/slave ids 2024-07-08 11:40:57 -05:00
clk-cpu-8996.c
clk-hfpll.c clk: qcom: clk-hfpll: Configure l_val in init when required 2023-09-13 12:07:58 -07:00
clk-hfpll.h clk: qcom: clk-hfpll: Configure l_val in init when required 2023-09-13 12:07:58 -07:00
clk-krait.c
clk-krait.h
clk-pll.c
clk-pll.h
clk-rcg.c
clk-rcg.h clk: qcom: gcc-sm8550: Don't park the USB RCG at registration time 2024-08-29 10:48:09 -07:00
clk-rcg2.c clk: qcom: gcc-sm8550: Don't park the USB RCG at registration time 2024-08-29 10:48:09 -07: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: Remove an unused field in struct rpm_cc 2024-04-20 12:56:58 -05:00
clk-rpmh.c clk: qcom: rpmh: Add support for X1E80100 rpmh clocks 2023-12-07 20:21:13 -08:00
clk-smd-rpm.c clk: qcom: smd-rpm: Restore msm8976 num_clk 2024-04-02 22:49:07 -05:00
clk-spmi-pmic-div.c
common.c of: remove internal arguments from of_property_for_each_u32() 2024-07-25 06:53:47 -05:00
common.h clk: qcom: common: Add interconnect clocks support 2024-07-08 11:40:57 -05:00
dispcc-qcm2290.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sc7180.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sc7280.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sc8280xp.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sdm845.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sm6115.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sm6125.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sm6350.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sm6375.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sm7150.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sm8250.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sm8450.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sm8550.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
dispcc-sm8650.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05: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
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: drop the CLK_SET_RATE_PARENT flag from GPLL clocks 2023-10-21 12:59:13 -07:00
gcc-ipq6018.c clk: qcom: gcc-ipq6018: update sdcc max clock frequency 2024-06-25 23:03:47 -05:00
gcc-ipq8074.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-ipq9574.c clk: qcom: ipq9574: Update the alpha PLL type for GPLLs 2024-08-14 21:56:45 -05:00
gcc-mdm9607.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-mdm9615.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-msm8660.c
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: Use device_get_match_data() 2023-10-23 20:16:21 -07:00
gcc-msm8974.c clk: Use device_get_match_data() 2023-10-23 20:16:21 -07:00
gcc-msm8976.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-msm8994.c
gcc-msm8996.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-msm8998.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -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: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05: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-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: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -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: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sdm845.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05: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 This a large collection of clk driver updates and a handful of new SoC 2024-07-19 12:16:28 -07: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: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -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: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gcc-sm8550.c clk: qcom: gcc-sm8550: Don't park the USB RCG at registration time 2024-08-29 10:48:09 -07:00
gcc-sm8650.c clk: qcom: gcc-sm8650: Don't use shared clk_ops for QUPs 2024-08-29 10:48:28 -07:00
gcc-x1e80100.c clk: qcom: gcc-x1e80100: Don't use parking clk_ops for QUPs 2024-08-27 11:02:18 -07:00
gdsc.c clk: qcom: gdsc: Add set and get hwmode callbacks to switch GDSC mode 2024-07-09 12:59:58 +02:00
gdsc.h clk: qcom: gdsc: Add set and get hwmode callbacks to switch GDSC mode 2024-07-09 12:59:58 +02:00
gpucc-msm8998.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05: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: gpucc-sa8775p: Update wait_val fields for GPU GDSC's 2024-06-23 17:14:05 -05:00
gpucc-sc7180.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-sc7280.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-sc8280xp.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-sdm660.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-sdm845.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05: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: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05: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: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-sm8250.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
gpucc-sm8350.c clk: qcom: gpucc-sm8350: Park RCG's clk source at XO during disable 2024-06-23 15:52:56 -05:00
gpucc-sm8450.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -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
hfpll.c clk: qcom: hfpll: Add QCS404-specific compatible 2024-04-23 14:14:47 -05:00
kpss-xcc.c clk: qcom: kpss-xcc: Return of_clk_add_hw_provider to transfer the error 2024-07-06 12:58:02 -05:00
krait-cc.c clk: Use device_get_match_data() 2023-10-23 20:16:21 -07:00
lcc-ipq806x.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
lcc-msm8960.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -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
lpasscorecc-sc7180.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
lpasscorecc-sc7280.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
mmcc-apq8084.c clk: qcom: mmcc-apq8084: fix terminating of frequency table arrays 2024-03-02 12:40:42 -06:00
mmcc-msm8960.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
mmcc-msm8974.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
mmcc-msm8994.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
mmcc-msm8996.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
mmcc-msm8998.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
mmcc-sdm660.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05: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 clk: qcom: reset: Ensure write completion on reset de/assertion 2024-02-07 12:14:19 -06:00
reset.h clk: qcom: reset: Increase max reset delay 2024-02-06 14:53:26 -06:00
tcsrcc-sm8550.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
tcsrcc-sm8650.c clk: qcom: add the SM8650 TCSR Clock Controller driver 2023-12-07 08:11:29 -08:00
tcsrcc-x1e80100.c clk: qcom: Add TCSR clock driver for x1e80100 2024-02-06 11:13:19 -06:00
turingcc-qcs404.c
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: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
videocc-sm8450.c clk: qcom: common: commonize qcom_cc_really_probe 2024-06-12 23:04:26 -05:00
videocc-sm8550.c Merge branch '20240602114439.1611-1-quic_jkona@quicinc.com' into clk-for-6.11 2024-06-25 21:49:46 -05:00