From: Julien Stephan Date: Wed, 18 Mar 2026 16:50:59 +0000 (+0100) Subject: drivers: ufs: ufs-mediatek: implement clocking X-Git-Tag: v2026.07-rc1~36^2~11 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a694f49c4940cf9faa93caa931a37cfaf63a7eaa;p=thirdparty%2Fu-boot.git drivers: ufs: ufs-mediatek: implement clocking Implement clocking. Reviewed-by: Neil Armstrong Signed-off-by: Julien Stephan Link: https://patch.msgid.link/20260318-mt8195-add-ufs-support-v2-7-f18eeeeb0e72@baylibre.com Signed-off-by: David Lechner --- diff --git a/drivers/ufs/ufs-mediatek.c b/drivers/ufs/ufs-mediatek.c index 5d882904c84..c65be5c2df1 100644 --- a/drivers/ufs/ufs-mediatek.c +++ b/drivers/ufs/ufs-mediatek.c @@ -317,19 +317,35 @@ static int ufs_mtk_init(struct ufs_hba *hba) ufs_mtk_init_reset(hba); - // TODO: Clocking + err = clk_get_bulk(hba->dev, &priv->clks); + if (err) { + dev_err(hba->dev, "failed to initialize clocks, err:%d\n", err); + return err; + } + + err = clk_enable_bulk(&priv->clks); + if (err) { + dev_err(hba->dev, "failed to enable clocks, err:%d\n", err); + goto err_clk_enable; + } err = generic_phy_power_on(&priv->mphy); if (err) { dev_err(hba->dev, "%s: phy init failed, err = %d\n", __func__, err); - return err; + goto err_phy_power_on; } ufs_mtk_setup_ref_clk(hba, true); ufs_mtk_get_hw_ip_version(hba); return 0; + +err_phy_power_on: + clk_disable_bulk(&priv->clks); +err_clk_enable: + clk_release_bulk(&priv->clks); + return err; } static int ufs_mtk_device_reset(struct ufs_hba *hba)