linux-stable/drivers/clk
Konrad Dybcio 6814dc592d clk: qcom: reset: Ensure write completion on reset de/assertion
[ Upstream commit 2f8cf2c3f3 ]

Trying to toggle the resets in a rapid fashion can lead to the changes
not actually arriving at the clock controller block when we expect them
to. This was observed at least on SM8250.

Read back the value after regmap_update_bits to ensure write completion.

Fixes: b36ba30c8a ("clk: qcom: Add reset controller support")
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Link: https://lore.kernel.org/r/20240105-topic-venus_reset-v2-3-c37eba13b5ce@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-03-26 18:20:47 -04:00
..
actions
analogbits
at91 clk: at91: clk-sam9x60-pll: fix return value check 2023-05-11 23:03:32 +09:00
axis
axs10x treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_56.RULE (part 2) 2022-06-10 14:51:35 +02:00
baikal-t1 clk: baikal-t1: Convert to platform device driver 2022-09-30 14:20:56 -07:00
bcm clk: bcm: rpi: Fix off by one in raspberrypi_discover_clocks() 2023-07-19 16:21:30 +02:00
berlin clk: berlin: Add of_node_put() for of_get_parent() 2022-08-19 14:50:24 -07:00
davinci Merge branches 'clk-fixed-rate', 'clk-spreadtrum', 'clk-pxa' and 'clk-ti' into clk-next 2022-10-04 10:54:14 -07:00
hisilicon clk: hi3620: Fix memory leak in hi3620_mmc_clk_init() 2024-02-05 20:12:56 +00:00
imgtec
imx clk: imx: clk-imx8qxp: fix LVDS bypass, pixel and phy clocks 2024-02-05 20:12:57 +00:00
ingenic clk: ingenic: jz4760: Update M/N/OD calculation algorithm 2023-02-14 19:11:52 +01:00
keystone clk: keystone: pll: fix a couple NULL vs IS_ERR() checks 2023-11-20 11:51:56 +01:00
loongson1
mediatek clk: mediatek: clk-mt2701: Add check for mtk_alloc_clk_data 2023-11-20 11:51:57 +01:00
meson clk: meson: Add missing clocks to axg_clk_regmaps 2024-03-26 18:20:46 -04:00
microchip clk: microchip: fix potential UAF in auxdev release callback 2023-05-11 23:03:40 +09:00
mmp clk: mmp: pxa168: Fix memory leak in pxa168_clk_init() 2024-02-05 20:12:56 +00:00
mstar
mvebu clk: mvebu: armada-37xx-tbg: Remove the unneeded result variable 2022-09-30 17:46:30 -07:00
mxs
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 clk: pxa: fix NULL pointer dereference in pxa3xx_clk_update_accr 2023-06-21 16:00:57 +02:00
qcom clk: qcom: reset: Ensure write completion on reset de/assertion 2024-03-26 18:20:47 -04:00
ralink
renesas clk: renesas: rzg2l: Check reset monitor registers 2024-01-25 15:27:35 -08:00
rockchip clk: rockchip: rk3128: Fix HCLK_OTG gate register 2024-01-20 11:50:06 +01:00
samsung clk: samsung: exynos850: Propagate SPI IPCLK rate change 2024-03-26 18:20:46 -04:00
sifive clk: sifive: select by default if SOC_SIFIVE 2022-10-17 14:07:11 -07:00
socfpga clk: socfpga: Fix undefined behavior bug in struct stratix10_clock_data 2023-11-28 17:07:10 +00:00
spear clk: spear: Move prototype to accessible header 2022-10-10 10:37:58 +02:00
sprd clk: sprd: Fix thm_parents incorrect configuration 2023-10-06 14:56:47 +02:00
st clk: st: Fix memory leak in st_of_quadfs_setup() 2022-12-31 13:33:04 +01:00
starfive
stm32 clk: stm32: rcc_reset: Fix missing spin_lock_init() 2022-06-09 15:34:08 -07:00
sunxi clk: sunxi: Do not select the PRCM MFD 2022-07-04 21:59:30 +02:00
sunxi-ng clk: sunxi-ng: Modify mismatched function name 2023-09-13 09:42:45 +02:00
tegra clk: tegra20: fix gcc-7 constant overflow warning 2024-03-06 14:45:05 +00:00
ti clk: ti: fix double free in of_ti_divider_clk_setup() 2023-11-20 11:51:57 +01:00
uniphier
ux500
versatile
visconti clk: visconti: Fix undefined behavior bug in struct visconti_pll_provider 2023-11-28 17:07:16 +00:00
x86 clk: mxl: syscon_node_to_regmap() returns error pointers 2023-02-25 11:25:39 +01:00
xilinx clk: clocking-wizard: Fix Oops in clk_wzrd_register_divider() 2023-07-19 16:21:30 +02:00
zynq
zynqmp drivers: clk: zynqmp: update divider round rate logic 2024-01-25 15:27:36 -08:00
.kunitconfig clk: explicitly disable CONFIG_UML_PCI_OVER_VIRTIO in .kunitconfig 2022-07-14 10:35:44 -06: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
clk-aspeed.h
clk-ast2600.c clk: ast2600: BCLK comes from EPLL 2022-10-03 14:12:15 -07:00
clk-axi-clkgen.c
clk-axm5516.c
clk-bd718x7.c
clk-bm1880.c
clk-bulk.c
clk-cdce706.c i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
clk-cdce925.c clk: cdce925: check return value of kasprintf() 2023-07-19 16:21:32 +02:00
clk-clps711x.c
clk-composite.c clk: Stop forwarding clk_rate_requests to the parent 2022-09-15 09:32:11 -07:00
clk-conf.c clk: add missing of_node_put() in "assigned-clocks" property parsing 2023-05-11 23:03:33 +09:00
clk-cs2000-cp.c i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
clk-devres.c clk: Fix slab-out-of-bounds error in devm_clk_release() 2023-08-30 16:11:06 +02:00
clk-divider.c clk: Introduce clk_hw_init_rate_request() 2022-09-15 09:31:40 -07:00
clk-en7523.c
clk-fixed-factor.c clk: fixed-factor: Introduce *clk_hw_register_fixed_factor_parent_hw() 2022-07-29 16:44:08 -07:00
clk-fixed-mmio.c
clk-fixed-rate.c clk: fixed-rate: add devm_clk_hw_register_fixed_rate 2022-09-29 17:55:29 -07:00
clk-fractional-divider.c
clk-fractional-divider.h
clk-fsl-flexspi.c
clk-fsl-sai.c
clk-gate.c
clk-gate_test.c
clk-gemini.c
clk-gpio.c
clk-hi655x.c
clk-highbank.c
clk-hsdk-pll.c treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_56.RULE (part 2) 2022-06-10 14:51:35 +02:00
clk-k210.c
clk-lan966x.c clk: allow building lan966x as a module 2022-10-03 14:14:02 -07:00
clk-lmk04832.c
clk-lochnagar.c dt-bindings: clock: Move lochnagar.h to dt-bindings/clock 2022-08-22 16:04:00 -07:00
clk-max9485.c
clk-max77686.c
clk-milbeaut.c
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: Add missing of_node_put() 2022-08-19 14:24:27 -07:00
clk-npcm7xx.c clk: npcm7xx: Fix incorrect kfree 2023-11-20 11:51:57 +01:00
clk-nspire.c
clk-oxnas.c clk: oxnas: Hold reference returned by of_get_parent() 2022-08-19 14:35:43 -07:00
clk-palmas.c
clk-plldig.c
clk-pwm.c
clk-qoriq.c clk: qoriq: Hold reference returned by of_get_parent() 2022-08-19 14:41:47 -07:00
clk-renesas-pcie.c clk: rs9: Fix .driver_data content in i2c_device_id 2023-07-19 16:21:17 +02:00
clk-rk808.c
clk-s2mps11.c
clk-scmi.c clk: scmi: Free scmi_clk allocated when the clocks with invalid info are skipped 2023-11-20 11:52:03 +01:00
clk-scpi.c
clk-si514.c i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
clk-si544.c
clk-si570.c i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
clk-si5341.c clk: si5341: fix an error code problem in si5341_output_clk_set_rate 2024-01-25 15:27:36 -08:00
clk-si5351.c i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
clk-si5351.h
clk-sparx5.c
clk-stm32f4.c
clk-stm32h7.c
clk-stm32mp1.c
clk-tps68470.c platform/x86: int3472: Support multiple clock consumers 2022-09-24 19:12:32 +02:00
clk-twl6040.c
clk-versaclock5.c clk: vc5: check memory returned by kasprintf() 2023-07-19 16:21:32 +02:00
clk-versaclock7.c clk: vc7: Fix .driver_data content in i2c_device_id 2023-07-19 16:21:17 +02:00
clk-vt8500.c
clk-wm831x.c
clk-xgene.c clk: clk-xgene: simplify if-if to if-else 2022-10-03 14:13:29 -07:00
clk.c clk: Sanitize possible_parent_show to Handle Return Value of of_clk_get_parent_name 2023-11-02 09:35:32 +01:00
clk.h
clk_test.c clk: tests: Add tests for notifiers 2022-10-10 20:37:50 -07:00
clkdev.c clkdev: Simplify devm_clk_hw_register_clkdev() function 2022-09-30 14:50:11 -07:00
Kconfig clk: fixed-mmio: make COMMON_CLK_FIXED_MMIO depend on HAS_IOMEM 2023-09-13 09:42:23 +02:00
Makefile clk: Renesas versaclock7 ccf device driver 2022-09-30 17:34:35 -07:00