ufs_mtk_sram_pwr_ctrl(false, res);
- /* Release pm_qos if in scale-up mode during suspend */
- if (ufshcd_is_clkscaling_supported(hba) && (host->clk_scale_up))
+ /* Release pm_qos/clk if in scale-up mode during suspend */
+ if (ufshcd_is_clkscaling_supported(hba) && (host->clk_scale_up)) {
ufshcd_pm_qos_update(hba, false);
+ _ufs_mtk_clk_scale(hba, false);
+ }
return 0;
fail:
if (err)
goto fail;
- /* Request pm_qos if in scale-up mode after resume */
- if (ufshcd_is_clkscaling_supported(hba) && (host->clk_scale_up))
+ /* Request pm_qos/clk if in scale-up mode after resume */
+ if (ufshcd_is_clkscaling_supported(hba) && (host->clk_scale_up)) {
ufshcd_pm_qos_update(hba, true);
+ _ufs_mtk_clk_scale(hba, true);
+ }
if (ufshcd_is_link_hibern8(hba)) {
err = ufs_mtk_link_set_hpm(hba);