summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2024-08-21 21:36:54 +0300
committerKalle Valo <kvalo@kernel.org>2024-09-03 21:31:01 +0300
commit0c896eceb5f348b5e314f5cd5faad966f09a56ff (patch)
treea3f416423c60e63b64150c7e47630f1462df1d56
parentb0dc7018477e8fbb7e40c908c29cf663d06b17a7 (diff)
downloadlinux-0c896eceb5f348b5e314f5cd5faad966f09a56ff.tar.xz
wifi: wilc1000: Re-enable RTC clock on resume
The wilc_sdio_suspend() does clk_disable_unprepare() on rtc_clk clock, make sure wilc_sdio_resume() does matching clk_prepare_enable(), else any suspend/resume cycle leads to clock disable/enable imbalance. Fix the imbalance. Signed-off-by: Marek Vasut <marex@denx.de> Reviewed-by: Alexis Lothoré <alexis.lothore@bootlin.com> Signed-off-by: Kalle Valo <kvalo@kernel.org> Link: https://patch.msgid.link/20240821183717.163235-1-marex@denx.de
-rw-r--r--drivers/net/wireless/microchip/wilc1000/sdio.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/microchip/wilc1000/sdio.c b/drivers/net/wireless/microchip/wilc1000/sdio.c
index 7999aeb76901..683a35c682a8 100644
--- a/drivers/net/wireless/microchip/wilc1000/sdio.c
+++ b/drivers/net/wireless/microchip/wilc1000/sdio.c
@@ -1006,6 +1006,9 @@ static int wilc_sdio_resume(struct device *dev)
if (!wilc->initialized)
return 0;
+ if (!IS_ERR(wilc->rtc_clk))
+ clk_prepare_enable(wilc->rtc_clk);
+
wilc_sdio_init(wilc, true);
wilc_sdio_enable_interrupt(wilc);