[PATCH 09/11] drivers: ufs: ufs-mediatek: implement clocking

David Lechner dlechner at baylibre.com
Tue Mar 17 23:15:22 CET 2026


On 3/17/26 9:24 AM, Julien Stephan wrote:
> Implement clocking.
> 
> Signed-off-by: Julien Stephan <jstephan at baylibre.com>
> ---
>  drivers/ufs/ufs-mediatek.c | 18 +++++++++++++++++-
>  1 file changed, 17 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/ufs/ufs-mediatek.c b/drivers/ufs/ufs-mediatek.c
> index 5d882904c84..31916f72c86 100644
> --- a/drivers/ufs/ufs-mediatek.c
> +++ b/drivers/ufs/ufs-mediatek.c
> @@ -177,6 +177,18 @@ static int ufs_mtk_link_startup_notify(struct ufs_hba *hba,
>  	return ret;
>  }
>  
> +static int ufs_mtk_get_clk(struct ufs_hba *hba)
> +{
> +	struct ufs_mtk_host *host = dev_get_priv(hba->dev);
> +	int err;
> +
> +	err = clk_get_bulk(hba->dev, &host->clks);
> +	if (err)
> +		return err;
> +
> +	return 0;
> +}

Why a wrapper function to call a single function?

> +
>  static int ufs_mtk_bind_mphy(struct ufs_hba *hba)
>  {
>  	struct ufs_mtk_host *host = dev_get_priv(hba->dev);
> @@ -317,7 +329,11 @@ static int ufs_mtk_init(struct ufs_hba *hba)
>  
>  	ufs_mtk_init_reset(hba);
>  
> -	// TODO: Clocking
> +	err = ufs_mtk_get_clk(hba);

	err = clk_get_bulk(hba->dev, &priv->clks);

Couldn't we just do this instead?

Or do we need clk_enable_bulk() too and that is missing from the
helper function?

> +	if (err) {
> +		dev_err(hba->dev, "failed to initialize clocks, err:%d\n", err);
> +		return err;
> +	}
>  
>  	err = generic_phy_power_on(&priv->mphy);
>  	if (err) {
> 



More information about the U-Boot mailing list