[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20191109200430.30367d27@collabora.com>
Date: Sat, 9 Nov 2019 20:04:30 +0100
From: Boris Brezillon <boris.brezillon@...labora.com>
To: Jonas Karlman <jonas@...boo.se>
Cc: Mauro Carvalho Chehab <mchehab+samsung@...nel.org>,
Ezequiel Garcia <ezequiel@...labora.com>,
Hans Verkuil <hverkuil@...all.nl>,
Tomasz Figa <tfiga@...omium.org>,
Philipp Zabel <p.zabel@...gutronix.de>,
"linux-media@...r.kernel.org" <linux-media@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v3 3/5] media: hantro: Use output buffer width and
height for H264 decoding
On Wed, 6 Nov 2019 22:34:22 +0000
Jonas Karlman <jonas@...boo.se> wrote:
> Calculations for motion vector buffer offset is based on width and height
> from the configured output format, lets use the same values for macroblock
> width and height hw regs.
Still don't see what was the problem with
sps->pic_{width,height}_in_mbs_minus1, but okay.
Reviewed-by: Boris Brezillon <boris.brezillon@...labora.com>
>
> Fixes: dea0a82f3d22 ("media: hantro: Add support for H264 decoding on G1")
Is this really fixing a bug? Do you have cases where
->pic_{width,height}_in_mbs_minus1 and
MB_{WIDTH,HEIGHT}(src_fmt.{width,height}) do not match?
> Signed-off-by: Jonas Karlman <jonas@...boo.se>
> ---
> Changes in v3:
> - change to use src_fmt instead of dst_fmt (Boris)
> Changes in v2:
> - new patch split from "media: hantro: Fix H264 motion vector buffer offset"
> ---
> drivers/staging/media/hantro/hantro_g1_h264_dec.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/media/hantro/hantro_g1_h264_dec.c b/drivers/staging/media/hantro/hantro_g1_h264_dec.c
> index 30d977c3d529..27d40d8d3728 100644
> --- a/drivers/staging/media/hantro/hantro_g1_h264_dec.c
> +++ b/drivers/staging/media/hantro/hantro_g1_h264_dec.c
> @@ -51,8 +51,8 @@ static void set_params(struct hantro_ctx *ctx)
> vdpu_write_relaxed(vpu, reg, G1_REG_DEC_CTRL0);
>
> /* Decoder control register 1. */
> - reg = G1_REG_DEC_CTRL1_PIC_MB_WIDTH(sps->pic_width_in_mbs_minus1 + 1) |
> - G1_REG_DEC_CTRL1_PIC_MB_HEIGHT_P(sps->pic_height_in_map_units_minus1 + 1) |
> + reg = G1_REG_DEC_CTRL1_PIC_MB_WIDTH(MB_WIDTH(ctx->src_fmt.width)) |
> + G1_REG_DEC_CTRL1_PIC_MB_HEIGHT_P(MB_HEIGHT(ctx->src_fmt.height)) |
> G1_REG_DEC_CTRL1_REF_FRAMES(sps->max_num_ref_frames);
> vdpu_write_relaxed(vpu, reg, G1_REG_DEC_CTRL1);
>
Powered by blists - more mailing lists