media: mtk-vcodec: remove unneeded proxy functions

We were getting the codec interface through a proxy function that does
not bring anything compared to just accessing the interface definition
directly, so just do that. Also make the decoder interfaces const.

Signed-off-by: Alexandre Courbot <acourbot@chromium.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
This commit is contained in:
Alexandre Courbot 2019-06-14 03:56:40 -04:00 committed by Mauro Carvalho Chehab
parent 86aed3f519
commit 9fcb242be6
9 changed files with 17 additions and 52 deletions

View file

@ -485,16 +485,9 @@ static int vdec_h264_get_param(void *h_vdec, enum vdec_get_param_type type,
return 0;
}
static struct vdec_common_if vdec_h264_if = {
const struct vdec_common_if vdec_h264_if = {
.init = vdec_h264_init,
.decode = vdec_h264_decode,
.get_param = vdec_h264_get_param,
.deinit = vdec_h264_deinit,
};
struct vdec_common_if *get_h264_dec_comm_if(void);
struct vdec_common_if *get_h264_dec_comm_if(void)
{
return &vdec_h264_if;
}

View file

@ -610,16 +610,9 @@ static void vdec_vp8_deinit(void *h_vdec)
kfree(inst);
}
static struct vdec_common_if vdec_vp8_if = {
const struct vdec_common_if vdec_vp8_if = {
.init = vdec_vp8_init,
.decode = vdec_vp8_decode,
.get_param = vdec_vp8_get_param,
.deinit = vdec_vp8_deinit,
};
struct vdec_common_if *get_vp8_dec_comm_if(void);
struct vdec_common_if *get_vp8_dec_comm_if(void)
{
return &vdec_vp8_if;
}

View file

@ -1000,16 +1000,9 @@ static int vdec_vp9_get_param(void *h_vdec, enum vdec_get_param_type type,
return ret;
}
static struct vdec_common_if vdec_vp9_if = {
const struct vdec_common_if vdec_vp9_if = {
.init = vdec_vp9_init,
.decode = vdec_vp9_decode,
.get_param = vdec_vp9_get_param,
.deinit = vdec_vp9_deinit,
};
struct vdec_common_if *get_vp9_dec_comm_if(void);
struct vdec_common_if *get_vp9_dec_comm_if(void)
{
return &vdec_vp9_if;
}

View file

@ -15,23 +15,19 @@
#include "mtk_vcodec_dec_pm.h"
#include "mtk_vpu.h"
const struct vdec_common_if *get_h264_dec_comm_if(void);
const struct vdec_common_if *get_vp8_dec_comm_if(void);
const struct vdec_common_if *get_vp9_dec_comm_if(void);
int vdec_if_init(struct mtk_vcodec_ctx *ctx, unsigned int fourcc)
{
int ret = 0;
switch (fourcc) {
case V4L2_PIX_FMT_H264:
ctx->dec_if = get_h264_dec_comm_if();
ctx->dec_if = &vdec_h264_if;
break;
case V4L2_PIX_FMT_VP8:
ctx->dec_if = get_vp8_dec_comm_if();
ctx->dec_if = &vdec_vp8_if;
break;
case V4L2_PIX_FMT_VP9:
ctx->dec_if = get_vp9_dec_comm_if();
ctx->dec_if = &vdec_vp9_if;
break;
default:
return -EINVAL;

View file

@ -54,6 +54,10 @@ struct vdec_fb_node {
struct vdec_fb *fb;
};
extern const struct vdec_common_if vdec_h264_if;
extern const struct vdec_common_if vdec_vp8_if;
extern const struct vdec_common_if vdec_vp9_if;
/**
* vdec_if_init() - initialize decode driver
* @ctx : [in] v4l2 context

View file

@ -655,16 +655,9 @@ static int h264_enc_deinit(void *handle)
return ret;
}
static const struct venc_common_if venc_h264_if = {
const struct venc_common_if venc_h264_if = {
.init = h264_enc_init,
.encode = h264_enc_encode,
.set_param = h264_enc_set_param,
.deinit = h264_enc_deinit,
};
const struct venc_common_if *get_h264_enc_comm_if(void);
const struct venc_common_if *get_h264_enc_comm_if(void)
{
return &venc_h264_if;
}

View file

@ -460,16 +460,9 @@ static int vp8_enc_deinit(void *handle)
return ret;
}
static const struct venc_common_if venc_vp8_if = {
const struct venc_common_if venc_vp8_if = {
.init = vp8_enc_init,
.encode = vp8_enc_encode,
.set_param = vp8_enc_set_param,
.deinit = vp8_enc_deinit,
};
const struct venc_common_if *get_vp8_enc_comm_if(void);
const struct venc_common_if *get_vp8_enc_comm_if(void)
{
return &venc_vp8_if;
}

View file

@ -17,19 +17,16 @@
#include "mtk_vcodec_enc_pm.h"
#include "mtk_vpu.h"
const struct venc_common_if *get_h264_enc_comm_if(void);
const struct venc_common_if *get_vp8_enc_comm_if(void);
int venc_if_init(struct mtk_vcodec_ctx *ctx, unsigned int fourcc)
{
int ret = 0;
switch (fourcc) {
case V4L2_PIX_FMT_VP8:
ctx->enc_if = get_vp8_enc_comm_if();
ctx->enc_if = &venc_vp8_if;
break;
case V4L2_PIX_FMT_H264:
ctx->enc_if = get_h264_enc_comm_if();
ctx->enc_if = &venc_h264_if;
break;
default:
return -EINVAL;

View file

@ -110,6 +110,9 @@ struct venc_done_result {
bool is_key_frm;
};
extern const struct venc_common_if venc_h264_if;
extern const struct venc_common_if venc_vp8_if;
/*
* venc_if_init - Create the driver handle
* @ctx: device context