MT8189 is pure single core architecture. Add its compatible to
initialize platform data.
Signed-off-by: Kyrie Wu <kyrie.wu@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
---
.../mediatek/vcodec/decoder/mtk_vcodec_dec.h | 1 +
.../vcodec/decoder/mtk_vcodec_dec_drv.c | 4 ++++
.../vcodec/decoder/mtk_vcodec_dec_stateless.c | 18 ++++++++++++++++++
3 files changed, 23 insertions(+)
diff --git a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
index 80cb46f1cded..2bde871c0224 100644
--- a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
+++ b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
@@ -71,6 +71,7 @@ extern const struct mtk_vcodec_dec_pdata mtk_vdec_8173_pdata;
extern const struct mtk_vcodec_dec_pdata mtk_vdec_8183_pdata;
extern const struct mtk_vcodec_dec_pdata mtk_vdec_8186_pdata;
extern const struct mtk_vcodec_dec_pdata mtk_vdec_8188_pdata;
+extern const struct mtk_vcodec_dec_pdata mtk_vdec_8189_pdata;
extern const struct mtk_vcodec_dec_pdata mtk_vdec_8192_pdata;
extern const struct mtk_vcodec_dec_pdata mtk_vdec_8195_pdata;
extern const struct mtk_vcodec_dec_pdata mtk_vdec_8196_pdata;
diff --git a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.c b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.c
index c7af48f684c5..8f52e002a51e 100644
--- a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.c
+++ b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.c
@@ -555,6 +555,10 @@ static const struct of_device_id mtk_vcodec_match[] = {
.compatible = "mediatek,mt8196-vcodec-dec",
.data = &mtk_vdec_8196_pdata,
},
+ {
+ .compatible = "mediatek,mt8189-vcodec-dec",
+ .data = &mtk_vdec_8189_pdata,
+ },
{},
};
diff --git a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_stateless.c b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_stateless.c
index 0745bc3ee490..aba28d276bdf 100644
--- a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_stateless.c
+++ b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_stateless.c
@@ -968,3 +968,21 @@ const struct mtk_vcodec_dec_pdata mtk_vdec_8186_pdata = {
.hw_arch = MTK_VDEC_PURE_SINGLE_CORE,
.chip_name = 8186,
};
+
+const struct mtk_vcodec_dec_pdata mtk_vdec_8189_pdata = {
+ .init_vdec_params = mtk_init_vdec_params,
+ .ctrls_setup = mtk_vcodec_dec_ctrls_setup,
+ .vdec_vb2_ops = &mtk_vdec_request_vb2_ops,
+ .vdec_formats = mtk_video_formats,
+ .num_formats = &num_formats,
+ .default_out_fmt = &default_out_format,
+ .default_cap_fmt = &default_cap_format,
+ .uses_stateless_api = true,
+ .worker = mtk_vdec_worker,
+ .flush_decoder = mtk_vdec_flush_decoder,
+ .cap_to_disp = mtk_vdec_stateless_cap_to_disp,
+ .get_cap_buffer = vdec_get_cap_buffer,
+ .is_subdev_supported = true,
+ .hw_arch = MTK_VDEC_PURE_SINGLE_CORE,
+ .chip_name = 8189,
+};
--
2.45.2
Il 27/01/26 03:42, Kyrie Wu ha scritto:
> MT8189 is pure single core architecture. Add its compatible to
> initialize platform data.
>
> Signed-off-by: Kyrie Wu <kyrie.wu@mediatek.com>
> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> ---
> .../mediatek/vcodec/decoder/mtk_vcodec_dec.h | 1 +
> .../vcodec/decoder/mtk_vcodec_dec_drv.c | 4 ++++
> .../vcodec/decoder/mtk_vcodec_dec_stateless.c | 18 ++++++++++++++++++
> 3 files changed, 23 insertions(+)
>
> diff --git a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
> index 80cb46f1cded..2bde871c0224 100644
> --- a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
> +++ b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
> @@ -71,6 +71,7 @@ extern const struct mtk_vcodec_dec_pdata mtk_vdec_8173_pdata;
> extern const struct mtk_vcodec_dec_pdata mtk_vdec_8183_pdata;
> extern const struct mtk_vcodec_dec_pdata mtk_vdec_8186_pdata;
> extern const struct mtk_vcodec_dec_pdata mtk_vdec_8188_pdata;
> +extern const struct mtk_vcodec_dec_pdata mtk_vdec_8189_pdata;
> extern const struct mtk_vcodec_dec_pdata mtk_vdec_8192_pdata;
> extern const struct mtk_vcodec_dec_pdata mtk_vdec_8195_pdata;
> extern const struct mtk_vcodec_dec_pdata mtk_vdec_8196_pdata;
> diff --git a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.c b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.c
> index c7af48f684c5..8f52e002a51e 100644
> --- a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.c
> +++ b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.c
> @@ -555,6 +555,10 @@ static const struct of_device_id mtk_vcodec_match[] = {
> .compatible = "mediatek,mt8196-vcodec-dec",
> .data = &mtk_vdec_8196_pdata,
> },
> + {
> + .compatible = "mediatek,mt8189-vcodec-dec",
> + .data = &mtk_vdec_8189_pdata,
> + },
> {},
> };
>
> diff --git a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_stateless.c b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_stateless.c
> index 0745bc3ee490..aba28d276bdf 100644
> --- a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_stateless.c
> +++ b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_stateless.c
> @@ -968,3 +968,21 @@ const struct mtk_vcodec_dec_pdata mtk_vdec_8186_pdata = {
> .hw_arch = MTK_VDEC_PURE_SINGLE_CORE,
> .chip_name = 8186,
> };
> +
> +const struct mtk_vcodec_dec_pdata mtk_vdec_8189_pdata = {
> + .init_vdec_params = mtk_init_vdec_params,
> + .ctrls_setup = mtk_vcodec_dec_ctrls_setup,
> + .vdec_vb2_ops = &mtk_vdec_request_vb2_ops,
> + .vdec_formats = mtk_video_formats,
> + .num_formats = &num_formats,
> + .default_out_fmt = &default_out_format,
> + .default_cap_fmt = &default_cap_format,
> + .uses_stateless_api = true,
> + .worker = mtk_vdec_worker,
> + .flush_decoder = mtk_vdec_flush_decoder,
> + .cap_to_disp = mtk_vdec_stateless_cap_to_disp,
> + .get_cap_buffer = vdec_get_cap_buffer,
> + .is_subdev_supported = true,
You introduced `MTK_STATELESS_DEC_DATA` in the previous patch... and you should
use it here too.
Cheers,
Angelo
> + .hw_arch = MTK_VDEC_PURE_SINGLE_CORE,
> + .chip_name = 8189,
> +};
On Tue, 2026-01-27 at 13:07 +0100, AngeloGioacchino Del Regno wrote:
> Il 27/01/26 03:42, Kyrie Wu ha scritto:
> > MT8189 is pure single core architecture. Add its compatible to
> > initialize platform data.
> >
> > Signed-off-by: Kyrie Wu <kyrie.wu@mediatek.com>
> > Reviewed-by: AngeloGioacchino Del Regno <
> > angelogioacchino.delregno@collabora.com>
> > ---
> > .../mediatek/vcodec/decoder/mtk_vcodec_dec.h | 1 +
> > .../vcodec/decoder/mtk_vcodec_dec_drv.c | 4 ++++
> > .../vcodec/decoder/mtk_vcodec_dec_stateless.c | 18
> > ++++++++++++++++++
> > 3 files changed, 23 insertions(+)
> >
> > diff --git
> > a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
> > b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
> > index 80cb46f1cded..2bde871c0224 100644
> > ---
> > a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
> > +++
> > b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
> > @@ -71,6 +71,7 @@ extern const struct mtk_vcodec_dec_pdata
> > mtk_vdec_8173_pdata;
> > extern const struct mtk_vcodec_dec_pdata mtk_vdec_8183_pdata;
> > extern const struct mtk_vcodec_dec_pdata mtk_vdec_8186_pdata;
> > extern const struct mtk_vcodec_dec_pdata mtk_vdec_8188_pdata;
> > +extern const struct mtk_vcodec_dec_pdata mtk_vdec_8189_pdata;
> > extern const struct mtk_vcodec_dec_pdata mtk_vdec_8192_pdata;
> > extern const struct mtk_vcodec_dec_pdata mtk_vdec_8195_pdata;
> > extern const struct mtk_vcodec_dec_pdata mtk_vdec_8196_pdata;
> > diff --git
> > a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv
> > .c
> > b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv
> > .c
> > index c7af48f684c5..8f52e002a51e 100644
> > ---
> > a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv
> > .c
> > +++
> > b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv
> > .c
> > @@ -555,6 +555,10 @@ static const struct of_device_id
> > mtk_vcodec_match[] = {
> > .compatible = "mediatek,mt8196-vcodec-dec",
> > .data = &mtk_vdec_8196_pdata,
> > },
> > + {
> > + .compatible = "mediatek,mt8189-vcodec-dec",
> > + .data = &mtk_vdec_8189_pdata,
> > + },
> > {},
> > };
> >
> > 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 0745bc3ee490..aba28d276bdf 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
> > @@ -968,3 +968,21 @@ const struct mtk_vcodec_dec_pdata
> > mtk_vdec_8186_pdata = {
> > .hw_arch = MTK_VDEC_PURE_SINGLE_CORE,
> > .chip_name = 8186,
> > };
> > +
> > +const struct mtk_vcodec_dec_pdata mtk_vdec_8189_pdata = {
> > + .init_vdec_params = mtk_init_vdec_params,
> > + .ctrls_setup = mtk_vcodec_dec_ctrls_setup,
> > + .vdec_vb2_ops = &mtk_vdec_request_vb2_ops,
> > + .vdec_formats = mtk_video_formats,
> > + .num_formats = &num_formats,
> > + .default_out_fmt = &default_out_format,
> > + .default_cap_fmt = &default_cap_format,
> > + .uses_stateless_api = true,
> > + .worker = mtk_vdec_worker,
> > + .flush_decoder = mtk_vdec_flush_decoder,
> > + .cap_to_disp = mtk_vdec_stateless_cap_to_disp,
> > + .get_cap_buffer = vdec_get_cap_buffer,
> > + .is_subdev_supported = true,
>
> You introduced `MTK_STATELESS_DEC_DATA` in the previous patch... and
> you should
> use it here too.
>
> Cheers,
> Angelo
>
Dear Angelo,
sorry for the mistake, I will fix it.
Thanks.
Regards,
Kyrie.
> > + .hw_arch = MTK_VDEC_PURE_SINGLE_CORE,
> > + .chip_name = 8189,
> > +};
>
>
© 2016 - 2026 Red Hat, Inc.