linux/drivers/clk
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
..
actions
analogbits
at91
axis
axs10x
baikal-t1
bcm clk: bcm: rpi: Assign ->num before accessing ->hws 2024-04-29 17:03:20 -07:00
berlin
davinci clk: davinci: da8xx-cfgchip: Initialize clk_init_data before use 2024-07-18 13:33:01 -07:00
hisilicon
imgtec
imx clk: imx: imx8mp: Convert to platform remove callback returning void 2024-05-01 14:40:49 +03:00
ingenic
keystone
mediatek This a large collection of clk driver updates and a handful of new SoC 2024-07-19 12:16:28 -07:00
meson clk: meson: add missing MODULE_DESCRIPTION() macros 2024-06-14 09:29:41 +02:00
microchip clock, reset: microchip: move all mpfs reset code to the reset subsystem 2024-05-07 14:57:46 -07:00
mmp
mstar
mvebu
mxs clk: mxs: Use clamp() in clk_ref_round_rate() and clk_ref_set_rate() 2024-07-10 13:08:59 -07:00
nuvoton
nxp clk: lpc32xx: Constify struct regmap_config 2024-07-08 13:32:47 -07:00
pistachio
pxa
qcom clk: qcom: gcc-sc8280xp: don't use parking clk_ops for QUPs 2024-09-03 13:01:34 -07:00
ralink
renesas clk: renesas: r9a08g045: Add clock, reset and power domain support for I2C 2024-06-27 18:17:13 +02:00
rockchip clk: rockchip: rk3188: Drop CLK_NR_CLKS usage 2024-06-27 21:04:40 +02:00
samsung clk: samsung: fix getting Exynos4 fin_pll rate from external clocks 2024-07-23 11:29:23 -07:00
sifive This a large collection of clk driver updates and a handful of new SoC 2024-07-19 12:16:28 -07:00
socfpga
sophgo clk: sophgo: clk-sg2042-pll: Fix uninitialized variable in debug output 2024-07-18 13:33:15 -07:00
spear
sprd clk: sprd: add missing MODULE_DESCRIPTION() macro 2024-06-03 15:43:16 -07:00
st
starfive clk: starfive: jh7110-sys: Add notifier for PLL0 clock 2024-08-29 12:24:42 -07:00
stm32 clk: stm32mp25: add security clocks 2024-06-03 14:10:46 -07:00
sunxi of: remove internal arguments from of_property_for_each_u32() 2024-07-25 06:53:47 -05:00
sunxi-ng This a large collection of clk driver updates and a handful of new SoC 2024-07-19 12:16:28 -07:00
tegra
thead clk: thead: fix dependency on clk_ignore_unused 2024-07-31 14:51:47 -07:00
ti clk: ti: dpll: fix incorrect #ifdef checks 2024-04-05 14:13:22 -07:00
uniphier
ux500
versatile clk: vexpress-osc: add missing MODULE_DESCRIPTION() macro 2024-07-02 15:56:43 -07:00
visconti
x86
xilinx clk: xilinx: Constify struct regmap_config 2024-07-08 13:32:26 -07:00
zynq
zynqmp
.kunitconfig
Kconfig Merge branches 'clk-qcom', 'clk-rockchip', 'clk-sophgo' and 'clk-thead' into clk-next 2024-07-16 11:24:25 -07:00
Makefile clk: thead: Add support for T-Head TH1520 AP_SUBSYS clocks 2024-07-15 12:15:01 -07:00
clk-apple-nco.c
clk-asm9260.c
clk-aspeed.c
clk-aspeed.h
clk-ast2600.c
clk-axi-clkgen.c
clk-axm5516.c
clk-bd718x7.c
clk-bm1880.c
clk-bulk.c
clk-cdce706.c
clk-cdce925.c
clk-clps711x.c
clk-composite.c
clk-conf.c of: remove internal arguments from of_property_for_each_u32() 2024-07-25 06:53:47 -05:00
clk-cs2000-cp.c
clk-devres.c
clk-divider.c
clk-en7523.c clk: en7523: fix rate divider for slic and spi clocks 2024-07-08 14:43:28 -07:00
clk-fixed-factor.c
clk-fixed-mmio.c
clk-fixed-rate.c
clk-fractional-divider.c
clk-fractional-divider.h
clk-fractional-divider_test.c clk: test: add missing MODULE_DESCRIPTION() macros 2024-06-03 15:46:46 -07:00
clk-fsl-flexspi.c
clk-fsl-sai.c
clk-gate.c
clk-gate_test.c clk: test: add missing MODULE_DESCRIPTION() macros 2024-06-03 15:46:46 -07:00
clk-gemini.c clk: gemini: Remove an unused field in struct clk_gemini_pci 2024-04-19 18:58:36 -07:00
clk-gpio.c
clk-hi655x.c
clk-highbank.c clk: highbank: Remove an unused field in struct hb_clk 2024-04-19 18:57:30 -07:00
clk-hsdk-pll.c
clk-k210.c
clk-lan966x.c
clk-lmk04832.c
clk-lochnagar.c
clk-loongson1.c
clk-loongson2.c clk: clk-loongson2: Add Loongson-2K2000 clock support 2024-04-11 00:30:13 -07:00
clk-max9485.c
clk-max77686.c
clk-milbeaut.c
clk-moxart.c
clk-multiplier.c
clk-mux.c
clk-nomadik.c
clk-npcm7xx.c
clk-nspire.c
clk-palmas.c
clk-plldig.c
clk-pwm.c
clk-qoriq.c
clk-renesas-pcie.c clk: rs9: fix wrong default value for clock amplitude 2024-04-19 19:09:41 -07:00
clk-rk808.c
clk-s2mps11.c
clk-scmi.c clk: scmi: Add support for get/set duty_cycle operations 2024-04-22 17:17:14 -07:00
clk-scpi.c
clk-si514.c
clk-si521xx.c
clk-si544.c
clk-si570.c
clk-si5341.c
clk-si5351.c of: remove internal arguments from of_property_for_each_u32() 2024-07-25 06:53:47 -05:00
clk-si5351.h
clk-sp7021.c
clk-sparx5.c
clk-stm32f4.c
clk-stm32h7.c
clk-tps68470.c
clk-twl.c
clk-twl6040.c
clk-versaclock3.c
clk-versaclock5.c
clk-versaclock7.c
clk-vt8500.c
clk-wm831x.c
clk-xgene.c
clk.c of: remove internal arguments from of_property_for_each_u32() 2024-07-25 06:53:47 -05:00
clk.h
clk_test.c clk: test: add missing MODULE_DESCRIPTION() macros 2024-06-03 15:46:46 -07:00
clkdev.c Merge topic branches 'clkdev' and 'fixes' into for-linus 2024-06-10 12:03:21 +01:00