lkml.org 
[lkml]   [2022]   [Oct]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 6.0 494/862] media: meson: vdec: add missing clk_disable_unprepare on error in vdec_hevc_start()
    Date
    From: Xu Qiang <xuqiang36@huawei.com>

    [ Upstream commit 4029372233e13e281f8c387f279f9f064ced3810 ]

    Add the missing clk_disable_unprepare() before return
    from vdec_hevc_start() in the error handling case.

    Fixes: 823a7300340e (“media: meson: vdec: add common HEVC decoder support”)
    Signed-off-by: Xu Qiang <xuqiang36@huawei.com>
    Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/staging/media/meson/vdec/vdec_hevc.c | 6 +++++-
    1 file changed, 5 insertions(+), 1 deletion(-)

    diff --git a/drivers/staging/media/meson/vdec/vdec_hevc.c b/drivers/staging/media/meson/vdec/vdec_hevc.c
    index 9530e580e57a..afced435c907 100644
    --- a/drivers/staging/media/meson/vdec/vdec_hevc.c
    +++ b/drivers/staging/media/meson/vdec/vdec_hevc.c
    @@ -167,8 +167,12 @@ static int vdec_hevc_start(struct amvdec_session *sess)

    clk_set_rate(core->vdec_hevc_clk, 666666666);
    ret = clk_prepare_enable(core->vdec_hevc_clk);
    - if (ret)
    + if (ret) {
    + if (core->platform->revision == VDEC_REVISION_G12A ||
    + core->platform->revision == VDEC_REVISION_SM1)
    + clk_disable_unprepare(core->vdec_hevcf_clk);
    return ret;
    + }

    if (core->platform->revision == VDEC_REVISION_SM1)
    regmap_update_bits(core->regmap_ao, AO_RTI_GEN_PWR_SLEEP0,
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-10-19 12:51    [W:2.166 / U:1.268 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site