summaryrefslogtreecommitdiffstats
path: root/drivers/staging/media/hantro/imx8m_vpu_hw.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/media/hantro/imx8m_vpu_hw.c')
-rw-r--r--drivers/staging/media/hantro/imx8m_vpu_hw.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/drivers/staging/media/hantro/imx8m_vpu_hw.c b/drivers/staging/media/hantro/imx8m_vpu_hw.c
index c222de075ef4..badc20fa0894 100644
--- a/drivers/staging/media/hantro/imx8m_vpu_hw.c
+++ b/drivers/staging/media/hantro/imx8m_vpu_hw.c
@@ -218,3 +218,50 @@ const struct hantro_variant imx8mq_vpu_variant = {
.reg_names = imx8mq_reg_names,
.num_regs = ARRAY_SIZE(imx8mq_reg_names)
};
+
+static void imx8mm_vpu_g1_reset(struct hantro_ctx *ctx)
+{
+ /* stub */
+}
+
+static const struct hantro_codec_ops imx8mm_g1_vpu_codec_ops[] = {
+ [HANTRO_MODE_MPEG2_DEC] = {
+ .run = hantro_g1_mpeg2_dec_run,
+ .reset = imx8mm_vpu_g1_reset,
+ .init = hantro_mpeg2_dec_init,
+ .exit = hantro_mpeg2_dec_exit,
+ },
+ [HANTRO_MODE_VP8_DEC] = {
+ .run = hantro_g1_vp8_dec_run,
+ .reset = imx8mm_vpu_g1_reset,
+ .init = hantro_vp8_dec_init,
+ .exit = hantro_vp8_dec_exit,
+ },
+ [HANTRO_MODE_H264_DEC] = {
+ .run = hantro_g1_h264_dec_run,
+ .reset = imx8mm_vpu_g1_reset,
+ .init = hantro_h264_dec_init,
+ .exit = hantro_h264_dec_exit,
+ },
+};
+
+static const struct hantro_irq imx8mm_g1_irqs[] = {
+ { "g1", imx8m_vpu_g1_irq },
+};
+static const char * const imx8mm_g1_clk_names[] = { "g1" };
+
+const struct hantro_variant imx8mm_vpu_g1_variant = {
+ .dec_fmts = imx8m_vpu_dec_fmts,
+ .num_dec_fmts = ARRAY_SIZE(imx8m_vpu_dec_fmts),
+ .postproc_fmts = imx8m_vpu_postproc_fmts,
+ .num_postproc_fmts = ARRAY_SIZE(imx8m_vpu_postproc_fmts),
+ .postproc_regs = &hantro_g1_postproc_regs,
+ .codec = HANTRO_MPEG2_DECODER | HANTRO_VP8_DECODER |
+ HANTRO_H264_DECODER,
+ .codec_ops = imx8mm_g1_vpu_codec_ops,
+ .init = imx8mq_vpu_hw_init,
+ .irqs = imx8mm_g1_irqs,
+ .num_irqs = ARRAY_SIZE(imx8mm_g1_irqs),
+ .clk_names = imx8mm_g1_clk_names,
+ .num_clocks = ARRAY_SIZE(imx8mm_g1_clk_names),
+};