Re: [PATCH v10 3/3] media: mediatek: jpeg: add compatible for MT8189 SoC
From: Nicolas Dufresne
Date: Mon Sep 28 2026 - 17:23:45 EST
Le lundi 20 juillet 2026 à 14:28 +0800, Jianhua Lin a écrit :
> Compared to the previous generation ICs, the MT8189 uses a 34-bit IOVA
> address space (16GB) and requires a single clock configuration.
>
> Therefore, add new compatible strings ("mediatek,mt8189-jpgenc" and
> "mediatek,mt8189-jpgdec") along with their specific driver data to
> support the JPEG encoder and decoder of the MT8189 SoC.
>
> Signed-off-by: Jianhua Lin <jianhua.lin@xxxxxxxxxxxx>
Reviewed-by: Nicolas Dufresne <nicolas.dufresne@xxxxxxxxxxxxx>
> ---
> .../platform/mediatek/jpeg/mtk_jpeg_core.c | 44 +++++++++++++++++++
> 1 file changed, 44 insertions(+)
>
> diff --git a/drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c b/drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c
> index d147ec483081..14f2991a4053 100644
> --- a/drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c
> +++ b/drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c
> @@ -1868,6 +1868,10 @@ static struct clk_bulk_data mt8173_jpeg_dec_clocks[] = {
> { .id = "jpgdec" },
> };
>
> +static struct clk_bulk_data mtk_jpeg_dec_clocks[] = {
> + { .id = "jpgdec" },
> +};
> +
> static const struct mtk_jpeg_variant mt8173_jpeg_drvdata = {
> .clks = mt8173_jpeg_dec_clocks,
> .num_clks = ARRAY_SIZE(mt8173_jpeg_dec_clocks),
> @@ -1899,6 +1903,38 @@ static const struct mtk_jpeg_variant mtk_jpeg_drvdata = {
> .multi_core = false,
> };
>
> +static const struct mtk_jpeg_variant mtk8189_jpegenc_drvdata = {
> + .clks = mtk_jpeg_clocks,
> + .num_clks = ARRAY_SIZE(mtk_jpeg_clocks),
> + .formats = mtk_jpeg_enc_formats,
> + .num_formats = MTK_JPEG_ENC_NUM_FORMATS,
> + .qops = &mtk_jpeg_enc_qops,
> + .irq_handler = mtk_jpeg_enc_irq,
> + .hw_reset = mtk_jpeg_enc_reset,
> + .m2m_ops = &mtk_jpeg_enc_m2m_ops,
> + .dev_name = "mtk-jpeg-enc",
> + .ioctl_ops = &mtk_jpeg_enc_ioctl_ops,
> + .out_q_default_fourcc = V4L2_PIX_FMT_YUYV,
> + .cap_q_default_fourcc = V4L2_PIX_FMT_JPEG,
> + .support_34bit = true,
> +};
> +
> +static const struct mtk_jpeg_variant mtk8189_jpegdec_drvdata = {
> + .clks = mtk_jpeg_dec_clocks,
> + .num_clks = ARRAY_SIZE(mtk_jpeg_dec_clocks),
> + .formats = mtk_jpeg_dec_formats,
> + .num_formats = MTK_JPEG_DEC_NUM_FORMATS,
> + .qops = &mtk_jpeg_dec_qops,
> + .irq_handler = mtk_jpeg_dec_irq,
> + .hw_reset = mtk_jpeg_dec_reset,
> + .m2m_ops = &mtk_jpeg_dec_m2m_ops,
> + .dev_name = "mtk-jpeg-dec",
> + .ioctl_ops = &mtk_jpeg_dec_ioctl_ops,
> + .out_q_default_fourcc = V4L2_PIX_FMT_JPEG,
> + .cap_q_default_fourcc = V4L2_PIX_FMT_YUV420M,
> + .support_34bit = true,
> +};
> +
> static struct mtk_jpeg_variant mtk8195_jpegenc_drvdata = {
> .formats = mtk_jpeg_enc_formats,
> .num_formats = MTK_JPEG_ENC_NUM_FORMATS,
> @@ -1938,6 +1974,14 @@ static const struct of_device_id mtk_jpeg_match[] = {
> .compatible = "mediatek,mtk-jpgenc",
> .data = &mtk_jpeg_drvdata,
> },
> + {
> + .compatible = "mediatek,mt8189-jpgenc",
> + .data = &mtk8189_jpegenc_drvdata,
> + },
> + {
> + .compatible = "mediatek,mt8189-jpgdec",
> + .data = &mtk8189_jpegdec_drvdata,
> + },
> {
> .compatible = "mediatek,mt8195-jpgenc",
> .data = &mtk8195_jpegenc_drvdata,
Attachment:
signature.asc
Description: This is a digitally signed message part