]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
phy: phy-snps-eusb2: fix clock imbalance on phy_exit()
authorJohan Hovold <johan+linaro@kernel.org>
Fri, 23 May 2025 08:48:33 +0000 (10:48 +0200)
committerVinod Koul <vkoul@kernel.org>
Sun, 15 Jun 2025 16:32:41 +0000 (22:02 +0530)
Make sure to disable all clocks enabled at phy_init() also on
phy_exit().

Fixes: c4098f3e6134 ("phy: phy-snps-eusb2: add support for exynos2200")
Cc: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Acked-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
Reviewed-by: Abel Vesa <abel.vesa@linaro.org>
Link: https://lore.kernel.org/r/20250523084839.11015-2-johan+linaro@kernel.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/phy/phy-snps-eusb2.c

index b73a1d7e57b32cfdfbe314ab938ec54746ed53be..19af3f99692c73f3b9c1f86dd0d9f07d4b38f297 100644 (file)
@@ -504,7 +504,7 @@ static int snps_eusb2_hsphy_exit(struct phy *p)
 {
        struct snps_eusb2_hsphy *phy = phy_get_drvdata(p);
 
-       clk_disable_unprepare(phy->ref_clk);
+       clk_bulk_disable_unprepare(phy->data->num_clks, phy->clks);
 
        regulator_bulk_disable(ARRAY_SIZE(phy->vregs), phy->vregs);