[PATCH v7 02/10] media: mediatek: decoder: Add a new platform data member
AngeloGioacchino Del Regno
angelogioacchino.delregno at collabora.com
Tue Jan 27 04:07:30 PST 2026
Il 27/01/26 03:42, Kyrie Wu ha scritto:
> Add a new platform data member to indicate each decoder IC
> to avoid the chip name definition keep growing.
>
> Signed-off-by: Kyrie Wu <kyrie.wu at mediatek.com>
> ---
> .../mediatek/vcodec/decoder/mtk_vcodec_dec.h | 5 +
> .../vcodec/decoder/mtk_vcodec_dec_drv.c | 35 ++-----
> .../vcodec/decoder/mtk_vcodec_dec_drv.h | 15 +--
> .../vcodec/decoder/mtk_vcodec_dec_hw.c | 2 +-
> .../vcodec/decoder/mtk_vcodec_dec_stateful.c | 1 +
> .../vcodec/decoder/mtk_vcodec_dec_stateless.c | 92 ++++++++++++++-----
> 6 files changed, 86 insertions(+), 64 deletions(-)
>
> 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 1af075fc0194..80cb46f1cded 100644
> --- a/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
> +++ b/drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec.h
> @@ -69,6 +69,11 @@ extern const struct v4l2_m2m_ops mtk_vdec_m2m_ops;
> extern const struct media_device_ops mtk_vcodec_media_ops;
> 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_8192_pdata;
> +extern const struct mtk_vcodec_dec_pdata mtk_vdec_8195_pdata;
> +extern const struct mtk_vcodec_dec_pdata mtk_vdec_8196_pdata;
> extern const struct mtk_vcodec_dec_pdata mtk_lat_sig_core_pdata;
> extern const struct mtk_vcodec_dec_pdata mtk_vdec_single_core_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 7ed40936a0e8..c7af48f684c5 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
> @@ -333,24 +333,7 @@ static const struct v4l2_file_operations mtk_vcodec_fops = {
>
> static void mtk_vcodec_dec_get_chip_name(struct mtk_vcodec_dec_dev *vdec_dev)
> {
> - struct device *dev = &vdec_dev->plat_dev->dev;
> -
> - if (of_device_is_compatible(dev->of_node, "mediatek,mt8173-vcodec-dec"))
> - vdec_dev->chip_name = MTK_VDEC_MT8173;
> - else if (of_device_is_compatible(dev->of_node, "mediatek,mt8183-vcodec-dec"))
> - vdec_dev->chip_name = MTK_VDEC_MT8183;
> - else if (of_device_is_compatible(dev->of_node, "mediatek,mt8192-vcodec-dec"))
> - vdec_dev->chip_name = MTK_VDEC_MT8192;
> - else if (of_device_is_compatible(dev->of_node, "mediatek,mt8195-vcodec-dec"))
> - vdec_dev->chip_name = MTK_VDEC_MT8195;
> - else if (of_device_is_compatible(dev->of_node, "mediatek,mt8186-vcodec-dec"))
> - vdec_dev->chip_name = MTK_VDEC_MT8186;
> - else if (of_device_is_compatible(dev->of_node, "mediatek,mt8188-vcodec-dec"))
> - vdec_dev->chip_name = MTK_VDEC_MT8188;
> - else if (of_device_is_compatible(dev->of_node, "mediatek,mt8196-vcodec-dec"))
> - vdec_dev->chip_name = MTK_VDEC_MT8196;
> - else
> - vdec_dev->chip_name = MTK_VDEC_INVAL;
> + vdec_dev->chip_name = vdec_dev->vdec_pdata->chip_name;
While at it, can you please rename `chip_name` to `chip_model`?
"name" makes me (if it's just me, nevermind) always think about a string, not about
an (unsigned) integer number.
In any case, you can already get my
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno at collabora.com>
...because that was just a nitpick, anyway.
Cheers,
Angelo
More information about the Linux-mediatek
mailing list