diff mbox series

[v4,5/6] media: mtk-vcodec: Add MT8192 H264 venc driver

Message ID 20210521070139.20644-6-irui.wang@mediatek.com
State Superseded
Headers show
Series Support H264 4K on MT8192 | expand

Commit Message

Irui Wang May 21, 2021, 7:01 a.m. UTC
Add MT8192 venc driver's compatible and device private data.

Signed-off-by: Irui Wang <irui.wang@mediatek.com>
---
 drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h |  1 +
 .../media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c | 14 ++++++++++++++
 2 files changed, 15 insertions(+)

Comments

Tzung-Bi Shih May 21, 2021, 8:06 a.m. UTC | #1
On Fri, May 21, 2021 at 3:02 PM Irui Wang <irui.wang@mediatek.com> wrote:
>
> Add MT8192 venc driver's compatible and device private data.
>
> Signed-off-by: Irui Wang <irui.wang@mediatek.com>

Reviewed-by: Tzung-Bi Shih <tzungbi@google.com>
Dafna Hirschfeld May 28, 2021, 5:27 a.m. UTC | #2
Hi

On 21.05.21 10:01, Irui Wang wrote:
> Add MT8192 venc driver's compatible and device private data.

> 

> Signed-off-by: Irui Wang <irui.wang@mediatek.com>

> ---

>   drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h |  1 +

>   .../media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c | 14 ++++++++++++++

>   2 files changed, 15 insertions(+)

> 

> diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h b/drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h

> index d03cca95e99b..14893d277bb8 100644

> --- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h

> +++ b/drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h

> @@ -302,6 +302,7 @@ struct mtk_vcodec_ctx {

>   enum mtk_chip {

>   	MTK_MT8173,

>   	MTK_MT8183,

> +	MTK_MT8192,

>   };

>   

>   /**

> diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c

> index 26b089e81213..78f3dd166917 100644

> --- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c

> +++ b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c

> @@ -425,12 +425,26 @@ static const struct mtk_vcodec_enc_pdata mt8183_pdata = {

>   	.core_id = VENC_SYS,

>   };

>   

> +static const struct mtk_vcodec_enc_pdata mt8192_pdata = {

> +	.chip = MTK_MT8192,

> +	.uses_ext = true,

> +	/* MT8192 supports the same capture formats as MT8183*/


missing space before '*/'

> +	.capture_formats = mtk_video_formats_capture_mt8183,

> +	.num_capture_formats = ARRAY_SIZE(mtk_video_formats_capture_mt8183),

> +	/* MT8192 supports the same output formats as MT8173 */

> +	.output_formats = mtk_video_formats_output_mt8173,

> +	.num_output_formats = ARRAY_SIZE(mtk_video_formats_output_mt8173),


If all three models mt8173, mt8183 and mt8192 support the same formats then
we should probably not name the structs according to one of the models, so maybe:

s/mtk_video_formats_capture_mt8183/mtk_video_formats_capture/
s/mtk_video_formats_output_mt8173/mtk_video_formats_output/

or some other naming

Thanks,
Dafna


> +	.min_bitrate = 64,

> +	.max_bitrate = 100000000,

> +	.core_id = VENC_SYS,

> +};

>   static const struct of_device_id mtk_vcodec_enc_match[] = {

>   	{.compatible = "mediatek,mt8173-vcodec-enc",

>   			.data = &mt8173_avc_pdata},

>   	{.compatible = "mediatek,mt8173-vcodec-enc-vp8",

>   			.data = &mt8173_vp8_pdata},

>   	{.compatible = "mediatek,mt8183-vcodec-enc", .data = &mt8183_pdata},

> +	{.compatible = "mediatek,mt8192-vcodec-enc", .data = &mt8192_pdata},

>   	{},

>   };

>   MODULE_DEVICE_TABLE(of, mtk_vcodec_enc_match);

>
diff mbox series

Patch

diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h b/drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h
index d03cca95e99b..14893d277bb8 100644
--- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h
+++ b/drivers/media/platform/mtk-vcodec/mtk_vcodec_drv.h
@@ -302,6 +302,7 @@  struct mtk_vcodec_ctx {
 enum mtk_chip {
 	MTK_MT8173,
 	MTK_MT8183,
+	MTK_MT8192,
 };
 
 /**
diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c
index 26b089e81213..78f3dd166917 100644
--- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c
+++ b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_drv.c
@@ -425,12 +425,26 @@  static const struct mtk_vcodec_enc_pdata mt8183_pdata = {
 	.core_id = VENC_SYS,
 };
 
+static const struct mtk_vcodec_enc_pdata mt8192_pdata = {
+	.chip = MTK_MT8192,
+	.uses_ext = true,
+	/* MT8192 supports the same capture formats as MT8183*/
+	.capture_formats = mtk_video_formats_capture_mt8183,
+	.num_capture_formats = ARRAY_SIZE(mtk_video_formats_capture_mt8183),
+	/* MT8192 supports the same output formats as MT8173 */
+	.output_formats = mtk_video_formats_output_mt8173,
+	.num_output_formats = ARRAY_SIZE(mtk_video_formats_output_mt8173),
+	.min_bitrate = 64,
+	.max_bitrate = 100000000,
+	.core_id = VENC_SYS,
+};
 static const struct of_device_id mtk_vcodec_enc_match[] = {
 	{.compatible = "mediatek,mt8173-vcodec-enc",
 			.data = &mt8173_avc_pdata},
 	{.compatible = "mediatek,mt8173-vcodec-enc-vp8",
 			.data = &mt8173_vp8_pdata},
 	{.compatible = "mediatek,mt8183-vcodec-enc", .data = &mt8183_pdata},
+	{.compatible = "mediatek,mt8192-vcodec-enc", .data = &mt8192_pdata},
 	{},
 };
 MODULE_DEVICE_TABLE(of, mtk_vcodec_enc_match);