[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <61ce327121b89ebbf271c72d674f8fb4d164dded.camel@mediatek.com>
Date: Thu, 25 Dec 2025 07:30:23 +0000
From: Kyrie Wu (吴晗) <Kyrie.Wu@...iatek.com>
To: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-mediatek@...ts.infradead.org" <linux-mediatek@...ts.infradead.org>,
George Sun (孙林) <George.Sun@...iatek.com>,
Tiffany Lin (林慧珊) <tiffany.lin@...iatek.com>,
"nhebert@...omium.org" <nhebert@...omium.org>, "linux-media@...r.kernel.org"
<linux-media@...r.kernel.org>, "devicetree@...r.kernel.org"
<devicetree@...r.kernel.org>, "mchehab@...nel.org" <mchehab@...nel.org>,
"nicolas.dufresne@...labora.com" <nicolas.dufresne@...labora.com>,
"hverkuil@...all.nl" <hverkuil@...all.nl>,
Kyrie Wu (吴晗) <Kyrie.Wu@...iatek.com>,
Yunfei Dong (董云飞) <Yunfei.Dong@...iatek.com>,
"conor+dt@...nel.org" <conor+dt@...nel.org>,
Irui Wang (王瑞) <Irui.Wang@...iatek.com>,
"robh@...nel.org" <robh@...nel.org>, "linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>, "matthias.bgg@...il.com"
<matthias.bgg@...il.com>, "krzk+dt@...nel.org" <krzk+dt@...nel.org>,
"arnd@...db.de" <arnd@...db.de>,
Andrew-CT Chen (陳智迪)
<Andrew-CT.Chen@...iatek.com>, AngeloGioacchino Del Regno
<angelogioacchino.delregno@...labora.com>
CC: "kyrie.wu@...iatek.corp-partner.google.com"
<kyrie.wu@...iatek.corp-partner.google.com>, "andrzejtp2010@...il.com"
<andrzejtp2010@...il.com>, "neil.armstrong@...aro.org"
<neil.armstrong@...aro.org>, Yilong Zhou (周易龙)
<Yilong.Zhou@...iatek.com>
Subject: Re: [PATCH v6 06/10] media: mediatek: vcodec: Add 4K prob size
supporting for VP9 decoder
On Thu, 2025-12-11 at 15:31 -0500, Nicolas Dufresne wrote:
> Hi,
>
> Le mardi 02 décembre 2025 à 15:40 +0800, Kyrie Wu a écrit :
> > From: Kyrie Wu <kyrie.wu@...iatek.corp-partner.google.com>
>
> I don't think you meant to commit with your Google partner email ?
>
> >
> > add config to support prob size both 3840 and 2560.
>
> Prob mean probability ? Commit message is the place to you full
> words. Can you
> extend why the difference, and use defines instead of magic number?
>
> >
> > Signed-off-by: Kyrie Wu <kyrie.wu@...iatek.corp-partner.google.com>
>
> Or even sign it ?
>
> Nicolas
>
Dear Nicolas,
Sorry for this mistake, I will fix it. Thanks.
Regards,
Kyrie.
> > ---
> > .../platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.h | 2 ++
> > .../mediatek/vcodec/decoder/mtk_vcodec_dec_stateful.c | 1 +
> > .../mediatek/vcodec/decoder/mtk_vcodec_dec_stateless.c | 7
> > +++++++
> > .../mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c | 4 ++-
> > -
> > 4 files changed, 12 insertions(+), 2 deletions(-)
> >
> > diff --git
> > a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv
> > .h
> > b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv
> > .h
> > index a8baeab98477..ecf0d7ad0d54 100644
> > ---
> > a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv
> > .h
> > +++
> > b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv
> > .h
> > @@ -80,10 +80,12 @@ struct vdec_pic_info {
> > * struct mtk_vcodec_dec_params - decoder supported parameters
> > * @level: decoder supported vcodec level
> > * @profile: decoder supported vcodec profile
> > + * @prob_size: vp9 decoder prob size
> > */
> > struct mtk_vcodec_dec_params {
> > s64 level;
> > s64 profile;
> > + size_t prob_size;
> > };
> >
> > /**
> > diff --git
> > a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_sta
> > teful.c
> > b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_sta
> > teful.c
> > index a47906b9d717..99c252e0a2e1 100644
> > ---
> > a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_sta
> > teful.c
> > +++
> > b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_sta
> > teful.c
> > @@ -630,5 +630,6 @@ const struct mtk_vcodec_dec_pdata
> > mtk_vdec_8173_pdata = {
> > .vp9_params = {
> > .level = V4L2_MPEG_VIDEO_VP9_LEVEL_4_0,
> > .profile = V4L2_MPEG_VIDEO_VP9_PROFILE_1,
> > + .prob_size = 2560,
> > },
> > };
> > diff --git
> > a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_sta
> > teless.c
> > b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_sta
> > teless.c
> > index dc3e9a2ccc2c..f18aafd08c76 100644
> > ---
> > a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_sta
> > teless.c
> > +++
> > b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_sta
> > teless.c
> > @@ -841,6 +841,7 @@ const struct mtk_vcodec_dec_pdata
> > mtk_vdec_8183_pdata = {
> > .vp9_params = {
> > .level = V4L2_MPEG_VIDEO_VP9_LEVEL_4_0,
> > .profile = V4L2_MPEG_VIDEO_VP9_PROFILE_1,
> > + .prob_size = 2560,
> > },
> > };
> >
> > @@ -889,6 +890,7 @@ const struct mtk_vcodec_dec_pdata
> > mtk_vdec_8188_pdata = {
> > .vp9_params = {
> > .level = V4L2_MPEG_VIDEO_VP9_LEVEL_5_1,
> > .profile = V4L2_MPEG_VIDEO_VP9_PROFILE_2,
> > + .prob_size = 2560,
> > },
> > };
> >
> > @@ -919,6 +921,7 @@ const struct mtk_vcodec_dec_pdata
> > mtk_vdec_8192_pdata = {
> > .vp9_params = {
> > .level = V4L2_MPEG_VIDEO_VP9_LEVEL_5_1,
> > .profile = V4L2_MPEG_VIDEO_VP9_PROFILE_1,
> > + .prob_size = 2560,
> > },
> > };
> >
> > @@ -949,6 +952,7 @@ const struct mtk_vcodec_dec_pdata
> > mtk_vdec_8195_pdata = {
> > .vp9_params = {
> > .level = V4L2_MPEG_VIDEO_VP9_LEVEL_5_2,
> > .profile = V4L2_MPEG_VIDEO_VP9_PROFILE_2,
> > + .prob_size = 2560,
> > },
> > };
> >
> > @@ -979,6 +983,7 @@ const struct mtk_vcodec_dec_pdata
> > mtk_vdec_8196_pdata = {
> > .vp9_params = {
> > .level = V4L2_MPEG_VIDEO_VP9_LEVEL_5_2,
> > .profile = V4L2_MPEG_VIDEO_VP9_PROFILE_2,
> > + .prob_size = 3840,
> > },
> > };
> >
> > @@ -1026,6 +1031,7 @@ const struct mtk_vcodec_dec_pdata
> > mtk_vdec_8186_pdata =
> > {
> > .vp9_params = {
> > .level = V4L2_MPEG_VIDEO_VP9_LEVEL_4_1,
> > .profile = V4L2_MPEG_VIDEO_VP9_PROFILE_1,
> > + .prob_size = 2560,
> > },
> > };
> >
> > @@ -1056,5 +1062,6 @@ const struct mtk_vcodec_dec_pdata
> > mtk_vdec_8189_pdata =
> > {
> > .vp9_params = {
> > .level = V4L2_MPEG_VIDEO_VP9_LEVEL_5_2,
> > .profile = V4L2_MPEG_VIDEO_VP9_PROFILE_2,
> > + .prob_size = 3840,
> > },
> > };
> > diff --git
> > a/drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_
> > lat_if.c
> > b/drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_
> > lat_if.c
> > index 9513ddde7c7c..36a87b455d11 100644
> > ---
> > a/drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_
> > lat_if.c
> > +++
> > b/drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_
> > lat_if.c
> > @@ -22,7 +22,6 @@
> > #define VP9_RESET_FRAME_CONTEXT_ALL 3
> >
> > #define VP9_TILE_BUF_SIZE 4096
> > -#define VP9_PROB_BUF_SIZE 2560
> > #define VP9_COUNTS_BUF_SIZE 16384
> >
> > #define HDR_FLAG(x) (!!((hdr)->flags & V4L2_VP9_FRAME_FLAG_##x))
> > @@ -546,6 +545,7 @@ static int
> > vdec_vp9_slice_alloc_working_buffer(struct
> > vdec_vp9_slice_instance *i
> > struct
> > vdec_vp9_slice_vsi
> > *vsi)
> > {
> > struct mtk_vcodec_dec_ctx *ctx = instance->ctx;
> > + struct mtk_vcodec_dec_dev *pdev = ctx->dev;
> > enum vdec_vp9_slice_resolution_level level;
> > /* super blocks */
> > unsigned int max_sb_w;
> > @@ -616,7 +616,7 @@ static int
> > vdec_vp9_slice_alloc_working_buffer(struct
> > vdec_vp9_slice_instance *i
> > }
> >
> > if (!instance->prob.va) {
> > - instance->prob.size = VP9_PROB_BUF_SIZE;
> > + instance->prob.size = pdev->vdec_pdata-
> > >vp9_params.prob_size;
> > if (mtk_vcodec_mem_alloc(ctx, &instance->prob))
> > goto err;
> > }
Powered by blists - more mailing lists