From: Yunfei Dong <yunfei.dong@mediatek.com>
To: "Nícolas F . R . A . Prado" <nfraprado@collabora.com>,
"Sebastian Fricke" <sebastian.fricke@collabora.com>,
"Nicolas Dufresne" <nicolas.dufresne@collabora.com>,
"Hans Verkuil" <hverkuil-cisco@xs4all.nl>,
"AngeloGioacchino Del Regno"
<angelogioacchino.delregno@collabora.com>,
"Benjamin Gaignard" <benjamin.gaignard@collabora.com>,
"Nathan Hebert" <nhebert@chromium.org>,
"Daniel Almeida" <daniel.almeida@collabora.com>
Cc: Hsin-Yi Wang <hsinyi@chromium.org>,
Fritz Koenig <frkoenig@chromium.org>,
Daniel Vetter <daniel@ffwll.ch>,
Steve Cho <stevecho@chromium.org>,
Yunfei Dong <yunfei.dong@mediatek.com>,
<linux-media@vger.kernel.org>, <devicetree@vger.kernel.org>,
<linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-mediatek@lists.infradead.org>,
<Project_Global_Chrome_Upstream_Group@mediatek.com>
Subject: [PATCH v4 00/14] media: mediatek: vcodec: support video decoder in mt8196
Date: Sat, 28 Mar 2026 13:16:10 +0800 [thread overview]
Message-ID: <20260328051630.7937-1-yunfei.dong@mediatek.com> (raw)
This patch set adds support for the video decoder on the MediaTek MT8196
platform, leveraging the VCP microprocessor for enhanced performance. It
introduces new firmware interfaces for kernel-side communication with VCP,
adds MT8196 compatible, codec levels/profiles, and private data. Rewrites
the AV1 driver to support extended VSI structures, then change irq table
and cdf table size.
This patch set depends on "Add VCP support for mt8196"[1]
[1] https://patchwork.kernel.org/project/linux-remoteproc/patch/20250402092134.12293-2-xiangzhi.tang@mediatek.com/
Compliance Test Result:
- v4l2-compliance: 48/49 tests passed, 1 failed (known issue)
- fail: v4l2-test-controls.cpp(981): ret (got 13)
- test VIDIOC_G/S/TRY_EXT_CTRLS: FAIL
Fluster Test Result:
- H264:
- Ran 95/135 tests successfully in 73.540 secs
- H265:
- Ran 142/147 tests successfully in 100.168 secs
- VP9:
- Ran 276/305 tests successfully in 106.804 secs
- AV1:
- Ran 240/242 tests successfully in 23.991 secs
---
Changed in v4:
- Rebase to latest codebase
- Move dt-bindings and compatible to the after of vcp driver ready
- MT8189 base on MT8196 patch set
Changed in v3:
- Depends on change no update
- Add Compliance and Fluster test result
- Re-write the commit message for patch 12
- Change the patches according to review suggestion for patch: 3/4/5/6/14
Changed in v2:
- re-write the commit message for patch 1
---
Yunfei Dong (14):
media: mediatek: vcodec: add driver to support vcp
media: mediatek: vcodec: add driver to support vcp encoder
media: mediatek: vcodec: get different firmware ipi id
media: mediatek: vcodec: get share memory address
media: mediatek: vcodec: define MT8196 vcodec levels.
media: mediatek: vcodec: support vcp architecture
media: mediatek: vcodec: support 36bit iova address
media: mediatek: vcodec: clean xpc status
media: mediatek: vcodec: add debug information
media: mediatek: vcodec: send share memory address to vcp
dt-bindings: media: mediatek: vcodec: add decoder dt-bindings for
mt8196
media: mediatek: vcodec: add decoder compatible to support mt8196
media: mediatek: decoder: fill av1 buffer size with picinfo
media: mediatek: decoder: support av1 extend vsi
.../media/mediatek,vcodec-subdev-decoder.yaml | 1 +
.../media/platform/mediatek/vcodec/Kconfig | 4 +
.../platform/mediatek/vcodec/common/Makefile | 4 +
.../mediatek/vcodec/common/mtk_vcodec_dbgfs.c | 21 +-
.../mediatek/vcodec/common/mtk_vcodec_fw.c | 16 +
.../mediatek/vcodec/common/mtk_vcodec_fw.h | 2 +
.../vcodec/common/mtk_vcodec_fw_priv.h | 12 +
.../vcodec/common/mtk_vcodec_fw_vcp.c | 561 ++++++++++++++++++
.../vcodec/common/mtk_vcodec_fw_vcp.h | 153 +++++
.../vcodec/decoder/mtk_vcodec_dec_drv.c | 16 +
.../vcodec/decoder/mtk_vcodec_dec_drv.h | 1 +
.../vcodec/decoder/mtk_vcodec_dec_hw.c | 28 +
.../vcodec/decoder/mtk_vcodec_dec_hw.h | 13 +-
.../vcodec/decoder/mtk_vcodec_dec_stateless.c | 6 +
.../vcodec/decoder/vdec/vdec_av1_req_lat_if.c | 113 +++-
.../decoder/vdec/vdec_h264_req_multi_if.c | 11 +-
.../decoder/vdec/vdec_hevc_req_multi_if.c | 12 +-
.../vcodec/decoder/vdec/vdec_vp8_req_if.c | 5 +-
.../vcodec/decoder/vdec/vdec_vp9_req_lat_if.c | 27 +-
.../mediatek/vcodec/decoder/vdec_ipi_msg.h | 2 +
.../mediatek/vcodec/decoder/vdec_vpu_if.c | 12 +-
.../mediatek/vcodec/encoder/mtk_vcodec_enc.c | 1 -
.../mediatek/vcodec/encoder/mtk_vcodec_enc.h | 2 +
23 files changed, 985 insertions(+), 38 deletions(-)
create mode 100644 drivers/media/platform/mediatek/vcodec/common/mtk_vcodec_fw_vcp.c
create mode 100644 drivers/media/platform/mediatek/vcodec/common/mtk_vcodec_fw_vcp.h
--
2.45.2
next reply other threads:[~2026-03-28 5:16 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-28 5:16 Yunfei Dong [this message]
2026-03-28 5:16 ` [PATCH v4 01/14] media: mediatek: vcodec: add driver to support vcp Yunfei Dong
2026-04-28 20:29 ` Nicolas Dufresne
2026-03-28 5:16 ` [PATCH v4 02/14] media: mediatek: vcodec: add driver to support vcp encoder Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 03/14] media: mediatek: vcodec: get different firmware ipi id Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 04/14] media: mediatek: vcodec: get share memory address Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 05/14] media: mediatek: vcodec: define MT8196 vcodec levels Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 06/14] media: mediatek: vcodec: support vcp architecture Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 07/14] media: mediatek: vcodec: support 36bit iova address Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 08/14] media: mediatek: vcodec: clean xpc status Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 09/14] media: mediatek: vcodec: add debug information Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 10/14] media: mediatek: vcodec: send share memory address to vcp Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 11/14] dt-bindings: media: mediatek: vcodec: add decoder dt-bindings for mt8196 Yunfei Dong
2026-03-28 12:22 ` Krzysztof Kozlowski
2026-03-28 5:16 ` [PATCH v4 12/14] media: mediatek: vcodec: add decoder compatible to support mt8196 Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 13/14] media: mediatek: decoder: fill av1 buffer size with picinfo Yunfei Dong
2026-03-28 5:16 ` [PATCH v4 14/14] media: mediatek: decoder: support av1 extend vsi Yunfei Dong
2026-04-28 20:24 ` [PATCH v4 00/14] media: mediatek: vcodec: support video decoder in mt8196 Nicolas Dufresne
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260328051630.7937-1-yunfei.dong@mediatek.com \
--to=yunfei.dong@mediatek.com \
--cc=Project_Global_Chrome_Upstream_Group@mediatek.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=benjamin.gaignard@collabora.com \
--cc=daniel.almeida@collabora.com \
--cc=daniel@ffwll.ch \
--cc=devicetree@vger.kernel.org \
--cc=frkoenig@chromium.org \
--cc=hsinyi@chromium.org \
--cc=hverkuil-cisco@xs4all.nl \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=nfraprado@collabora.com \
--cc=nhebert@chromium.org \
--cc=nicolas.dufresne@collabora.com \
--cc=sebastian.fricke@collabora.com \
--cc=stevecho@chromium.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox