return host->caps & UFS_MTK_CAP_ALLOW_VCCQX_LPM;
 }
 
+static bool ufs_mtk_is_clk_scale_ready(struct ufs_hba *hba)
+{
+       struct ufs_mtk_host *host = ufshcd_get_variant(hba);
+       struct ufs_mtk_clk *mclk = &host->mclk;
+
+       return mclk->ufs_sel_clki &&
+               mclk->ufs_sel_max_clki &&
+               mclk->ufs_sel_min_clki;
+}
+
 static void ufs_mtk_cfg_unipro_cg(struct ufs_hba *hba, bool enable)
 {
        u32 tmp;
 {
        struct ufs_mtk_host *host = ufshcd_get_variant(hba);
        struct list_head *head = &hba->clk_list_head;
-       struct ufs_mtk_clk *mclk = &host->mclk;
        struct ufs_clk_info *clki, *clki_tmp;
 
        /*
                }
        }
 
-       if (!mclk->ufs_sel_clki || !mclk->ufs_sel_max_clki ||
-           !mclk->ufs_sel_min_clki) {
+       if (!ufs_mtk_is_clk_scale_ready(hba)) {
                hba->caps &= ~UFSHCD_CAP_CLK_SCALING;
                dev_info(hba->dev,
                         "%s: Clk-scaling not ready. Feature disabled.",