OpenCloudOS-Kernel/drivers/clk
Stephen Boyd 7c391eaf2c clk: qcom: gcc-sm8550: Don't park the USB RCG at registration time
[ Upstream commit 7b6dfa1bbe7f727315d2e05a2fc8e4cfeb779156 ]

Amit Pundir reports that audio and USB-C host mode stops working if the
gcc_usb30_prim_master_clk_src clk is registered and
clk_rcg2_shared_init() parks it on XO. Skip parking this clk at
registration time to fix those issues.

Partially revert commit 01a0a6cc8cfd ("clk: qcom: Park shared RCGs upon
registration") by skipping the parking bit for this clk, but keep the
part where we cache the config register. That's still necessary to
figure out the true parent of the clk at registration time.

Fixes: 01a0a6cc8cfd ("clk: qcom: Park shared RCGs upon registration")
Fixes: 929c75d57566 ("clk: qcom: gcc-sm8550: Mark RCGs shared where applicable")
Cc: Konrad Dybcio <konradybcio@kernel.org>
Cc: Bjorn Andersson <andersson@kernel.org>
Cc: Taniya Das <quic_tdas@quicinc.com>
Reported-by: Amit Pundir <amit.pundir@linaro.org>
Closes: https://lore.kernel.org/CAMi1Hd1KQBE4kKUdAn8E5FV+BiKzuv+8FoyWQrrTHPDoYTuhgA@mail.gmail.com
Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/20240819233628.2074654-3-swboyd@chromium.org
Tested-by: Amit Pundir <amit.pundir@linaro.org>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-09-12 11:11:44 +02:00
..
actions clk: actions: Convert to devm_platform_ioremap_resource() 2023-08-22 14:28:03 -07:00
analogbits
at91 Merge branches 'clk-qcom' and 'clk-microchip' into clk-next 2023-06-26 16:36:14 -07:00
axis
axs10x clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
baikal-t1 clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
bcm clk: bcm: rpi: Assign ->num before accessing ->hws 2024-06-16 13:47:39 +02:00
berlin clk: berlin: div: Add a determine_rate hook 2023-06-08 18:39:26 -07:00
davinci clk: davinci: da8xx-cfgchip: Initialize clk_init_data before use 2024-08-03 08:54:23 +02:00
hisilicon clk: hisilicon: hi3559a: Fix an erroneous devm_kfree() 2024-03-26 18:19:50 -04:00
imgtec
imx clk: imx: imx8mp: Fix SAI_MCLK_SEL definition 2024-03-26 18:19:52 -04:00
ingenic clk: ingenic: tcu: Switch to determine_rate 2023-06-08 18:39:34 -07:00
keystone clk: keystone: pll: fix a couple NULL vs IS_ERR() checks 2023-11-20 11:59:06 +01:00
mediatek clk: mediatek: mt8183: Only enable runtime PM on mt8183-mfgcfg 2024-07-11 12:49:19 +02:00
meson clk: meson: Add missing clocks to axg_clk_regmaps 2024-03-26 18:19:45 -04:00
microchip clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
mmp clk: mmp: pxa168: Fix memory leak in pxa168_clk_init() 2024-02-05 20:14:29 +00:00
mstar clk: mstar: msc313 cpupll clk driver 2022-10-27 11:44:27 -07:00
mvebu Merge branches 'clk-imx', 'clk-samsung', 'clk-annotate', 'clk-marvell' and 'clk-lmk' into clk-next 2023-08-30 14:39:19 -07:00
mxs
nuvoton clk: nuvoton: Convert to devm_platform_ioremap_resource() 2023-08-22 14:52:11 -07:00
nxp clk: nxp: fix typo in comment 2022-10-03 12:34:32 -07:00
pistachio clk: pistachio: Fix initconst confusion 2022-09-28 18:35:45 -07:00
pxa ARM: SoC changes for 6.5 2023-06-29 15:28:33 -07:00
qcom clk: qcom: gcc-sm8550: Don't park the USB RCG at registration time 2024-09-12 11:11:44 +02:00
ralink clk: ralink: mtmips: quiet unused variable warning 2023-11-20 11:59:06 +01:00
renesas clk: renesas: r9a07g043: Add clock and reset entry for PLIC 2024-06-12 11:12:08 +02:00
rockchip clk: rockchip: rk3128: Fix HCLK_OTG gate register 2024-01-20 11:51:42 +01:00
samsung clk: samsung: exynosautov9: fix wrong pll clock id value 2024-06-12 11:12:05 +02:00
sifive clk: sifive: Do not register clkdevs for PRCI clocks 2024-06-21 14:38:28 +02:00
socfpga clk: socfpga: Fix undefined behavior bug in struct stratix10_clock_data 2023-11-28 17:20:00 +00:00
spear clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
sprd clk: sprd: Fix thm_parents incorrect configuration 2023-09-11 13:50:49 -07:00
st clk: st: flexgen: Switch to determine_rate 2023-06-08 18:39:35 -07:00
starfive clk: starfive: jh7110-sys: Add notifier for PLL0 clock 2024-09-12 11:11:26 +02:00
stm32 clk: stm32: Fix a signedness issue in clk_stm32_composite_determine_rate() 2023-10-12 17:30:54 -07:00
sunxi Merge branches 'clk-versa', 'clk-strdup', 'clk-amlogic', 'clk-allwinner' and 'clk-rockchip' into clk-next 2023-08-30 14:38:19 -07:00
sunxi-ng clk: sunxi-ng: common: Don't call hw_to_ccu_common on hw without common 2024-07-11 12:49:17 +02:00
tegra clk: tegra: fix error return case for recalc_rate 2023-09-12 10:56:05 -07:00
ti clk: ti: fix double free in of_ti_divider_clk_setup() 2023-11-20 11:59:06 +01:00
uniphier clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
ux500 clk: ux500: sysctrl: Add a determine_rate hook 2023-06-08 18:39:30 -07:00
versatile clk: versatile: sp810: Add a determine_rate hook 2023-06-08 18:39:31 -07:00
visconti clk: visconti: Add bounds-checking coverage for struct visconti_pll_provider 2024-08-29 17:33:29 +02:00
x86 clk: x86: Convert to platform remove callback returning void 2023-03-28 19:31:45 -07:00
xilinx clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
zynq clk: zynq: Prevent null pointer dereference caused by kmalloc failure 2024-03-26 18:19:56 -04:00
zynqmp drivers: clk: zynqmp: update divider round rate logic 2024-01-25 15:35:37 -08:00
.kunitconfig clk: explicitly disable CONFIG_UML_PCI_OVER_VIRTIO in .kunitconfig 2022-07-14 10:35:44 -06:00
Kconfig This pull request is full of clk driver changes. In fact, there aren't any 2023-08-30 19:53:39 -07:00
Makefile Merge branches 'clk-versa', 'clk-strdup', 'clk-amlogic', 'clk-allwinner' and 'clk-rockchip' into clk-next 2023-08-30 14:38:19 -07:00
clk-apple-nco.c
clk-asm9260.c clk: asm9260: use parent index to link the reference clock 2022-09-29 17:55:26 -07:00
clk-aspeed.c Merge branches 'clk-imx', 'clk-samsung', 'clk-annotate', 'clk-marvell' and 'clk-lmk' into clk-next 2023-08-30 14:39:19 -07:00
clk-aspeed.h
clk-ast2600.c Merge branches 'clk-imx', 'clk-samsung', 'clk-annotate', 'clk-marvell' and 'clk-lmk' into clk-next 2023-08-30 14:39:19 -07:00
clk-axi-clkgen.c clk: axi-clkgen: Switch to determine_rate 2023-06-08 18:39:33 -07:00
clk-axm5516.c clk: axm5516: Convert to devm_platform_ioremap_resource() 2023-08-22 14:28:05 -07:00
clk-bd718x7.c
clk-bm1880.c clk: bm1880: Convert to devm_platform_ioremap_resource() 2023-08-22 14:28:11 -07:00
clk-bulk.c clk: bulk: Use dev_err_probe() helper in __clk_bulk_get() 2022-10-17 16:07:51 -07:00
clk-cdce706.c Merge branches 'clk-renesas', 'clk-determine-rate', 'clk-allwinner', 'clk-samsung' and 'clk-amlogic' into clk-next 2023-06-26 08:55:04 -07:00
clk-cdce925.c clk: cdce925: Remove redundant of_match_ptr() 2023-08-22 14:16:53 -07:00
clk-clps711x.c
clk-composite.c clk: composite: Fix handling of high clock rates 2023-06-12 17:42:10 -07:00
clk-conf.c clk: add missing of_node_put() in "assigned-clocks" property parsing 2023-03-29 13:53:28 -07:00
clk-cs2000-cp.c clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
clk-devres.c clk: Fix slab-out-of-bounds error in devm_clk_release() 2023-08-22 15:25:18 -07:00
clk-divider.c clk: Introduce clk_hw_init_rate_request() 2022-09-15 09:31:40 -07:00
clk-en7523.c clk: en7523: fix rate divider for slic and spi clocks 2024-08-03 08:54:02 +02:00
clk-fixed-factor.c clk: fixed-factor: Convert to platform remove callback returning void 2023-03-28 19:23:36 -07:00
clk-fixed-mmio.c Nothing looks out of the ordinary in this batch of clk driver updates. There 2023-04-29 17:29:39 -07:00
clk-fixed-rate.c clk: fixed-rate: Convert to platform remove callback returning void 2023-03-28 19:23:36 -07:00
clk-fractional-divider.c clk: Compute masks for fractional_divider clk when needed. 2023-04-05 12:09:26 -07:00
clk-fractional-divider.h
clk-fsl-flexspi.c
clk-fsl-sai.c clk: fsl-sai: Convert to devm_platform_ioremap_resource() 2023-08-22 14:28:15 -07:00
clk-gate.c
clk-gate_test.c
clk-gemini.c Merge branches 'clk-imx', 'clk-samsung', 'clk-annotate', 'clk-marvell' and 'clk-lmk' into clk-next 2023-08-30 14:39:19 -07:00
clk-gpio.c clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
clk-hi655x.c
clk-highbank.c
clk-hsdk-pll.c clk: hsdk-pll: Convert to devm_platform_ioremap_resource() 2023-08-22 14:28:20 -07:00
clk-k210.c clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
clk-lan966x.c clk: lan966x: Remove unused round_rate hook 2023-06-08 18:39:25 -07:00
clk-lmk04832.c clk: lmk04832: Support using PLL1_LD as SPI readback pin 2023-08-23 15:47:35 -07:00
clk-lochnagar.c clk: lochnagar: Add a determine_rate hook 2023-06-08 18:39:27 -07:00
clk-loongson1.c clk: loongson1: Re-implement the clock driver 2023-03-21 16:34:23 -07:00
clk-loongson2.c clk: clk-loongson2: Zero init clk_init_data 2023-06-12 18:30:46 -07:00
clk-max9485.c clk: Switch i2c drivers back to use .probe() 2023-05-10 14:05:34 -07:00
clk-max77686.c
clk-milbeaut.c clk: Annotate struct clk_hw_onecell_data with __counted_by 2023-08-22 13:51:26 -07:00
clk-moxart.c treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_56.RULE (part 2) 2022-06-10 14:51:35 +02:00
clk-multiplier.c
clk-mux.c
clk-nomadik.c clk: nomadik: correct struct name kernel-doc warning 2022-12-09 10:26:25 -08:00
clk-npcm7xx.c clk: npcm7xx: Fix incorrect kfree 2023-11-20 11:59:06 +01:00
clk-nspire.c
clk-palmas.c clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
clk-plldig.c clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
clk-pwm.c clk: pwm: Convert to platform remove callback returning void 2023-03-28 19:23:37 -07:00
clk-qoriq.c clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
clk-renesas-pcie.c clk: rs9: fix wrong default value for clock amplitude 2024-06-12 11:12:07 +02:00
clk-rk808.c clk: RK808: Reduce 'struct rk808' usage 2023-05-15 16:13:56 +01:00
clk-s2mps11.c clk: s2mps11: Convert to platform remove callback returning void 2023-03-28 19:23:37 -07:00
clk-scmi.c clk: scmi: Free scmi_clk allocated when the clocks with invalid info are skipped 2023-11-20 11:59:16 +01:00
clk-scpi.c clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
clk-si514.c clk: Switch i2c drivers back to use .probe() 2023-05-10 14:05:34 -07:00
clk-si521xx.c clk: si521xx: Increase stack based print buffer size in probe 2024-01-10 17:16:55 +01:00
clk-si544.c clk: Switch i2c drivers back to use .probe() 2023-05-10 14:05:34 -07:00
clk-si570.c clk: Switch i2c drivers back to use .probe() 2023-05-10 14:05:34 -07:00
clk-si5341.c clk: si5341: fix an error code problem in si5341_output_clk_set_rate 2024-01-25 15:35:38 -08:00
clk-si5351.c clk: Explicitly include correct DT includes 2023-07-19 13:13:16 -07:00
clk-si5351.h
clk-sp7021.c clk: sp7021: fix return value check in sp7021_clk_probe() 2024-01-25 15:35:37 -08:00
clk-sparx5.c
clk-stm32f4.c clk: stm32f4: mux: Add a determine_rate hook 2023-06-08 18:39:27 -07:00
clk-stm32h7.c clk: stm32h7: Remove an unused field in struct stm32_fractional_divider 2023-04-03 14:10:42 -07:00
clk-stm32mp1.c clk: stm32mp1: Convert to platform remove callback returning void 2023-03-28 19:23:37 -07:00
clk-tps68470.c platform/x86: int3472: Support multiple clock consumers 2022-09-24 19:12:32 +02:00
clk-twl6040.c
clk-versaclock3.c clk: vc3: Make vc3_clk_mux enum values based on vc3_clk enum values 2023-09-11 13:50:43 -07:00
clk-versaclock5.c Merge branches 'clk-versa', 'clk-strdup', 'clk-amlogic', 'clk-allwinner' and 'clk-rockchip' into clk-next 2023-08-30 14:38:19 -07:00
clk-versaclock7.c Merge branches 'clk-versa', 'clk-strdup', 'clk-amlogic', 'clk-allwinner' and 'clk-rockchip' into clk-next 2023-08-30 14:38:19 -07:00
clk-vt8500.c
clk-wm831x.c clk: wm831x: clkout: Add a determine_rate hook 2023-06-08 18:39:28 -07:00
clk-xgene.c clk: clk-xgene: simplify if-if to if-else 2022-10-03 14:13:29 -07:00
clk.c clk: Don't hold prepare_lock when calling kref_put() 2024-05-17 12:02:19 +02:00
clk.h
clk_test.c clk: test: Add a determine_rate hook 2023-06-08 18:39:25 -07:00
clkdev.c clkdev: Update clkdev id usage to allow for longer names 2024-06-21 14:38:38 +02:00