From: Yunfei Dong <yunfei.dong@mediatek.com>
To: Yunfei Dong <yunfei.dong@mediatek.com>,
Alexandre Courbot <acourbot@chromium.org>,
Hans Verkuil <hverkuil-cisco@xs4all.nl>,
"Tzung-Bi Shih" <tzungbi@chromium.org>,
Tiffany Lin <tiffany.lin@mediatek.com>,
Andrew-CT Chen <andrew-ct.chen@mediatek.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Rob Herring <robh+dt@kernel.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
Tomasz Figa <tfiga@google.com>
Cc: Hsin-Yi Wang <hsinyi@chromium.org>,
Fritz Koenig <frkoenig@chromium.org>,
Dafna Hirschfeld <dafna.hirschfeld@collabora.com>,
Benjamin Gaignard <benjamin.gaignard@collabora.com>,
Daniel Vetter <daniel@ffwll.ch>,
dri-devel <dri-devel@lists.freedesktop.org>,
Irui Wang <irui.wang@mediatek.com>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@collabora.com>,
"Steve Cho" <stevecho@chromium.org>,
<linux-media@vger.kernel.org>, <devicetree@vger.kernel.org>,
<linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<srv_heupstream@mediatek.com>,
<linux-mediatek@lists.infradead.org>,
<Project_Global_Chrome_Upstream_Group@mediatek.com>
Subject: [PATCH v1, 00/12] media: mtk-vcodec: support for MT8192 h264 decoder
Date: Wed, 15 Dec 2021 14:59:14 +0800 [thread overview]
Message-ID: <20211215065926.8761-1-yunfei.dong@mediatek.com> (raw)
This series adds support for mt8192 h264 decoder. Firstly, need to refactor
power/clk/irq interface for mt8192 is lat and core architecture. Secondly,
add new functions to get frame buffer size and resolution according to decoder
capability from scp side. Then add callback function to get/put capture buffer
in order to enable lat and core decoder in parallel. Then add to support MT21C
compressed mode and fix v4l2-compliance fail. Next, extract H264 request
api driver to let mt8183 and mt8192 use the common code, at last, add mt8192 h264
slice api driver.
Patches 1 refactor power/clk/irq interface.
Patches 2~4 get frame buffer size and resolution according to decoder capability.
Patches 5~6 enable lat and core decode in parallel.
Patch 7~10 Add to support MT21C compressed mode and fix v4l2-compliance fail.
Patch 11~12 extract h264 driver and add mt8192 h264 slice api driver
----
Dependents on "Support multi hardware decode using of_platform_populate"[1].
This patches are the second part used to add mt8192 h264 decoder. And the base part is [1].
[1]https://patchwork.linuxtv.org/project/linux-media/cover/20211215061552.8523-1-yunfei.dong@mediatek.com/
----
Yunfei Dong (12):
media: mtk-vcodec: Add vdec enable/disable hardware helpers
media: mtk-vcodec: Using firmware type to separate different firmware
architecture
media: mtk-vcodec: get frame buffer size from scp
media: mtk-vcodec: Read max resolution from dec_capability
media: mtk-vcodec: Call v4l2_m2m_set_dst_buffered() set capture buffer
buffered
media: mtk-vcodec: Refactor get and put capture buffer flow
media: mtk-vcodec: Refactor supported vdec formats and framesizes
media: mtk-vcodec: Add format to support MT21C
media: mtk-vcodec: disable vp8 4K capability
media: mtk-vcodec: Fix v4l2-compliance fail
media: mtk-vcodec: Extract H264 common code
media: mtk-vcodec: Add h264 slice api driver for mt8192
drivers/media/platform/mtk-vcodec/Makefile | 2 +
.../platform/mtk-vcodec/mtk_vcodec_dec.c | 49 +-
.../platform/mtk-vcodec/mtk_vcodec_dec_drv.c | 5 -
.../platform/mtk-vcodec/mtk_vcodec_dec_pm.c | 162 +++--
.../platform/mtk-vcodec/mtk_vcodec_dec_pm.h | 6 +-
.../mtk-vcodec/mtk_vcodec_dec_stateful.c | 14 +-
.../mtk-vcodec/mtk_vcodec_dec_stateless.c | 245 +++++--
.../platform/mtk-vcodec/mtk_vcodec_drv.h | 27 +-
.../media/platform/mtk-vcodec/mtk_vcodec_fw.c | 6 +
.../media/platform/mtk-vcodec/mtk_vcodec_fw.h | 1 +
.../mtk-vcodec/vdec/vdec_h264_req_common.c | 303 +++++++++
.../mtk-vcodec/vdec/vdec_h264_req_common.h | 247 +++++++
.../mtk-vcodec/vdec/vdec_h264_req_if.c | 402 +-----------
.../mtk-vcodec/vdec/vdec_h264_req_lat_if.c | 620 ++++++++++++++++++
.../media/platform/mtk-vcodec/vdec_drv_if.c | 28 +-
.../media/platform/mtk-vcodec/vdec_drv_if.h | 1 +
.../media/platform/mtk-vcodec/vdec_ipi_msg.h | 36 +
.../platform/mtk-vcodec/vdec_msg_queue.c | 2 +
.../media/platform/mtk-vcodec/vdec_vpu_if.c | 55 +-
.../media/platform/mtk-vcodec/vdec_vpu_if.h | 15 +
include/linux/remoteproc/mtk_scp.h | 2 +
21 files changed, 1672 insertions(+), 556 deletions(-)
create mode 100644 drivers/media/platform/mtk-vcodec/vdec/vdec_h264_req_common.c
create mode 100644 drivers/media/platform/mtk-vcodec/vdec/vdec_h264_req_common.h
create mode 100644 drivers/media/platform/mtk-vcodec/vdec/vdec_h264_req_lat_if.c
--
2.25.1
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
next reply other threads:[~2021-12-15 7:12 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-15 6:59 Yunfei Dong [this message]
2021-12-15 6:59 ` [PATCH v1, 01/12] media: mtk-vcodec: Add vdec enable/disable hardware helpers Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 02/12] media: mtk-vcodec: Using firmware type to separate different firmware architecture Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 03/12] media: mtk-vcodec: get frame buffer size from scp Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 04/12] media: mtk-vcodec: Read max resolution from dec_capability Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 05/12] media: mtk-vcodec: Call v4l2_m2m_set_dst_buffered() set capture buffer buffered Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 06/12] media: mtk-vcodec: Refactor get and put capture buffer flow Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 07/12] media: mtk-vcodec: Refactor supported vdec formats and framesizes Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 08/12] media: mtk-vcodec: Add format to support MT21C Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 09/12] media: mtk-vcodec: disable vp8 4K capability Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 10/12] media: mtk-vcodec: Fix v4l2-compliance fail Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 11/12] media: mtk-vcodec: Extract H264 common code Yunfei Dong
2021-12-15 6:59 ` [PATCH v1, 12/12] media: mtk-vcodec: Add h264 slice api driver for mt8192 Yunfei Dong
2021-12-15 15:27 ` Nicolas Dufresne
2021-12-17 3:23 ` yunfei.dong
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=20211215065926.8761-1-yunfei.dong@mediatek.com \
--to=yunfei.dong@mediatek.com \
--cc=Project_Global_Chrome_Upstream_Group@mediatek.com \
--cc=acourbot@chromium.org \
--cc=andrew-ct.chen@mediatek.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=benjamin.gaignard@collabora.com \
--cc=dafna.hirschfeld@collabora.com \
--cc=daniel@ffwll.ch \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=frkoenig@chromium.org \
--cc=hsinyi@chromium.org \
--cc=hverkuil-cisco@xs4all.nl \
--cc=irui.wang@mediatek.com \
--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=matthias.bgg@gmail.com \
--cc=mchehab@kernel.org \
--cc=robh+dt@kernel.org \
--cc=srv_heupstream@mediatek.com \
--cc=stevecho@chromium.org \
--cc=tfiga@google.com \
--cc=tiffany.lin@mediatek.com \
--cc=tzungbi@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;
as well as URLs for NNTP newsgroup(s).