Re: [RESEND v2 4/4] venus: put dummy vote on video-mem path after last session release
From: Stephen Boyd
Date: Thu Sep 17 2020 - 03:27:10 EST
Quoting Mansur Alisha Shaik (2020-09-16 18:26:03)
> As per current implementation, we are unvoting "videom-mem" path
> for last video session during vdec_session_release().
> While video playback when we try to suspend device, we see video clock
> warnings since votes are already removed during vdec_session_release().
> corrected this by putting dummy vote on "video-mem" after last video
> session release and unvoting it during suspend.
> Signed-off-by: Mansur Alisha Shaik <mansur@xxxxxxxxxxxxxx>
Fixes tag? Should this be combined with an earlier change?
> drivers/media/platform/qcom/venus/pm_helpers.c | 3 +++
> 1 file changed, 3 insertions(+)
> diff --git a/drivers/media/platform/qcom/venus/pm_helpers.c b/drivers/media/platform/qcom/venus/pm_helpers.c
> index 57877ea..c0a3524 100644
> --- a/drivers/media/platform/qcom/venus/pm_helpers.c
> +++ b/drivers/media/platform/qcom/venus/pm_helpers.c
> @@ -212,6 +212,9 @@ static int load_scale_bw(struct venus_core *core)
> + if (!total_avg && !total_peak)
> + total_avg = kbps_to_icc(1000);
Can you add a comment in the code here? Just guessing but something
* Keep bandwidth enabled here so that vdec_session_release()
* can disable clks without clks getting stuck. We'll drop the
* bandwidth request when this device is suspended so this is a
* low value to keep things on but not high power until the
* device is powered down.
> dev_dbg(core->dev, VDBGL "total: avg_bw: %u, peak_bw: %u\n",
> total_avg, total_peak);