lkml.org 
[lkml]   [2020]   [Dec]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 136/717] media: venus: put dummy vote on video-mem path after last session release
    Date
    From: Mansur Alisha Shaik <mansur@codeaurora.org>

    [ Upstream commit eff5ce02e170125936c43ca96c7dc701a86681ed ]

    As per current implementation, video driver is 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.

    suspend")

    Fixes: 07f8f22a33a9e ("media: venus: core: remove CNOC voting while device
    Signed-off-by: Mansur Alisha Shaik <mansur@codeaurora.org>
    Reviewed-by: Stephen Boyd <swboyd@chromium.org>
    Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/media/platform/qcom/venus/pm_helpers.c | 10 ++++++++++
    1 file changed, 10 insertions(+)

    diff --git a/drivers/media/platform/qcom/venus/pm_helpers.c b/drivers/media/platform/qcom/venus/pm_helpers.c
    index a9538c2cc3c9d..2946547a0df4a 100644
    --- a/drivers/media/platform/qcom/venus/pm_helpers.c
    +++ b/drivers/media/platform/qcom/venus/pm_helpers.c
    @@ -212,6 +212,16 @@ static int load_scale_bw(struct venus_core *core)
    }
    mutex_unlock(&core->lock);

    + /*
    + * keep minimum bandwidth vote for "video-mem" path,
    + * so that clks can be disabled during vdec_session_release().
    + * Actual bandwidth drop will be done during device supend
    + * so that device can power down without any warnings.
    + */
    +
    + if (!total_avg && !total_peak)
    + total_avg = kbps_to_icc(1000);
    +
    dev_dbg(core->dev, VDBGL "total: avg_bw: %u, peak_bw: %u\n",
    total_avg, total_peak);

    --
    2.27.0


    \
     
     \ /
      Last update: 2020-12-28 15:10    [W:4.017 / U:0.028 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site