Re: [PATCH] media: verisilicon: Fix auxiliary buffers allocation size
From: Nicolas Dufresne
Date: Mon May 13 2024 - 10:52:41 EST
Le jeudi 28 mars 2024 à 10:34 +0100, Benjamin Gaignard a écrit :
> Use v4l2_av1_tile_info->tile_cols to know the number of colons
> in the frame. This made auxiliary buffers meory size computation
> more accurate.
>
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx>
> Fixes: 727a400686a2 ("media: verisilicon: Add Rockchip AV1 decoder")
Reviewed-by: Nicolas Dufresne <nicolas.dufresne@xxxxxxxxxxxxx>
> ---
> .../media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c b/drivers/media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c
> index cc4483857489..65e8f2d07400 100644
> --- a/drivers/media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c
> +++ b/drivers/media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c
> @@ -257,7 +257,8 @@ static int rockchip_vpu981_av1_dec_tiles_reallocate(struct hantro_ctx *ctx)
> struct hantro_dev *vpu = ctx->dev;
> struct hantro_av1_dec_hw_ctx *av1_dec = &ctx->av1_dec;
> struct hantro_av1_dec_ctrls *ctrls = &av1_dec->ctrls;
> - unsigned int num_tile_cols = 1 << ctrls->tile_group_entry->tile_col;
> + const struct v4l2_av1_tile_info *tile_info = &ctrls->frame->tile_info;
> + unsigned int num_tile_cols = tile_info->tile_cols;
> unsigned int height = ALIGN(ctrls->frame->frame_height_minus_1 + 1, 64);
> unsigned int height_in_sb = height / 64;
> unsigned int stripe_num = ((height + 8) + 63) / 64;