Re: [PATCH v4,06/11] media: mediatek: vcodec: replace pr_* with dev_* for v4l2 debug message

From: Yunfei Dong (董云飞)
Date: Tue Jul 04 2023 - 07:09:21 EST


Hi Nicolas,

Thanks for your suggestion.

On Mon, 2023-07-03 at 15:46 -0400, Nicolas Dufresne wrote:
>
> External email : Please do not click links or open attachments until
> you have verified the sender or the content.
> Le lundi 26 juin 2023 à 11:53 +0800, Yunfei Dong a écrit :
> > Adding different macro mtk_v4l2_vdec_dbg and mtk_v4l2_venc_dbg for
> > encoder and decoder. Then calling the common marco mtk_v4l2_debug
> to
> > print debug message.
> >
> > Replace pr_err with dev_err for 'mtk_v4l2_err' debug message.
> > Replace pr_debug with dev_dbg for 'mtk_v4l2_debug' debug message.
> >
> > Signed-off-by: Yunfei Dong <yunfei.dong@xxxxxxxxxxxx>
> > ---
> > .../platform/mediatek/vcodec/mtk_vcodec_dec.c | 116 +++++-----
> > .../mediatek/vcodec/mtk_vcodec_dec_drv.c | 53 ++---
> > .../mediatek/vcodec/mtk_vcodec_dec_hw.c | 7 +-
> > .../mediatek/vcodec/mtk_vcodec_dec_pm.c | 19 +-
> > .../mediatek/vcodec/mtk_vcodec_dec_stateful.c | 143 ++++++------
> > .../vcodec/mtk_vcodec_dec_stateless.c | 62 ++---
> > .../platform/mediatek/vcodec/mtk_vcodec_enc.c | 211 ++++++++----
> ------
> > .../mediatek/vcodec/mtk_vcodec_enc_drv.c | 45 ++--
> > .../mediatek/vcodec/mtk_vcodec_enc_pm.c | 8 +-
> > .../platform/mediatek/vcodec/mtk_vcodec_fw.c | 2 +-
> > .../mediatek/vcodec/mtk_vcodec_fw_scp.c | 2 +-
> > .../mediatek/vcodec/mtk_vcodec_fw_vpu.c | 7 +-
> > .../mediatek/vcodec/mtk_vcodec_intr.c | 12 +-
> > .../mediatek/vcodec/mtk_vcodec_util.c | 30 ++-
> > .../mediatek/vcodec/mtk_vcodec_util.h | 24 +-
> > .../vcodec/vdec/vdec_av1_req_lat_if.c | 10 +-
> > .../mediatek/vcodec/vdec/vdec_h264_req_if.c | 14 +-
> > .../vcodec/vdec/vdec_h264_req_multi_if.c | 16 +-
> > .../vcodec/vdec/vdec_hevc_req_multi_if.c | 14 +-
> > .../platform/mediatek/vcodec/vdec_drv_if.c | 4 +-
> > .../platform/mediatek/vcodec/vdec_msg_queue.c | 52 +++--
> > .../platform/mediatek/vcodec/vdec_msg_queue.h | 2 +
> > .../platform/mediatek/vcodec/vdec_vpu_if.c | 2 +-
> > 23 files changed, 413 insertions(+), 442 deletions(-)
> >
> > diff --git
> a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec.c
> b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec.c
> > index 93fcea821001..269f90fe0a1a 100644
> > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec.c
> > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec.c
> > @@ -82,7 +82,7 @@ static int vidioc_decoder_cmd(struct file *file,
> void *priv,
> > if (ret)
> > return ret;
> >
> > -mtk_v4l2_debug(1, "decoder cmd=%u", cmd->cmd);
> > +mtk_v4l2_vdec_dbg(1, ctx, "decoder cmd=%u", cmd->cmd);
> > dst_vq = v4l2_m2m_get_vq(ctx->m2m_ctx,
> > V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE);
> > switch (cmd->cmd) {
> > @@ -90,11 +90,11 @@ static int vidioc_decoder_cmd(struct file
> *file, void *priv,
> > src_vq = v4l2_m2m_get_vq(ctx->m2m_ctx,
> > V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE);
> > if (!vb2_is_streaming(src_vq)) {
> > -mtk_v4l2_debug(1, "Output stream is off. No need to flush.");
> > +mtk_v4l2_vdec_dbg(1, ctx, "Output stream is off. No need to
> flush.");
> > return 0;
> > }
> > if (!vb2_is_streaming(dst_vq)) {
> > -mtk_v4l2_debug(1, "Capture stream is off. No need to flush.");
> > +mtk_v4l2_vdec_dbg(1, ctx, "Capture stream is off. No need to
> flush.");
> > return 0;
> > }
> > v4l2_m2m_buf_queue(ctx->m2m_ctx, &ctx->empty_flush_buf.vb);
> > @@ -172,8 +172,7 @@ static int vidioc_vdec_qbuf(struct file *file,
> void *priv,
> > struct mtk_vcodec_ctx *ctx = fh_to_ctx(priv);
> >
> > if (ctx->state == MTK_STATE_ABORT) {
> > -mtk_v4l2_err("[%d] Call on QBUF after unrecoverable error",
> > -ctx->id);
> > +mtk_v4l2_vdec_err(ctx, "[%d] Call on QBUF after unrecoverable
> error", ctx->id);
> > return -EIO;
> > }
> >
> > @@ -186,8 +185,7 @@ static int vidioc_vdec_dqbuf(struct file *file,
> void *priv,
> > struct mtk_vcodec_ctx *ctx = fh_to_ctx(priv);
> >
> > if (ctx->state == MTK_STATE_ABORT) {
> > -mtk_v4l2_err("[%d] Call on DQBUF after unrecoverable error",
> > -ctx->id);
> > +mtk_v4l2_vdec_err(ctx, "[%d] Call on DQBUF after unrecoverable
> error", ctx->id);
> > return -EIO;
> > }
> >
> > @@ -288,11 +286,10 @@ static int vidioc_try_fmt(struct
> mtk_vcodec_ctx *ctx, struct v4l2_format *f,
> > (pix_fmt_mp->height + 64) <= frmsize->max_height)
> > pix_fmt_mp->height += 64;
> >
> > -mtk_v4l2_debug(0,
> > -"before resize width=%d, height=%d, after resize width=%d,
> height=%d, sizeimage=%d",
> > -tmp_w, tmp_h, pix_fmt_mp->width,
> > -pix_fmt_mp->height,
> > -pix_fmt_mp->width * pix_fmt_mp->height);
> > +mtk_v4l2_vdec_dbg(0, ctx,
> > + "before resize wxh=%dx%d, after resize wxh=%dx%d, sizeimage=%d",
> > + tmp_w, tmp_h, pix_fmt_mp->width, pix_fmt_mp->height,
> > + pix_fmt_mp->width * pix_fmt_mp->height);
> >
> > pix_fmt_mp->num_planes = fmt->num_planes;
> > pix_fmt_mp->plane_fmt[0].sizeimage =
> > @@ -344,7 +341,7 @@ static int vidioc_try_fmt_vid_out_mplane(struct
> file *file, void *priv,
> > }
> >
> > if (pix_fmt_mp->plane_fmt[0].sizeimage == 0) {
> > -mtk_v4l2_err("sizeimage of output format must be given");
> > +mtk_v4l2_vdec_err(ctx, "sizeimage of output format must be
> given");
> > return -EINVAL;
> > }
> >
> > @@ -432,7 +429,7 @@ static int vidioc_vdec_s_fmt(struct file *file,
> void *priv,
> > const struct mtk_video_fmt *fmt;
> > const struct mtk_vcodec_dec_pdata *dec_pdata = ctx->dev-
> >vdec_pdata;
> >
> > -mtk_v4l2_debug(3, "[%d]", ctx->id);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d]", ctx->id);
> >
> > q_data = mtk_vdec_get_q_data(ctx, f->type);
> > if (!q_data)
> > @@ -446,7 +443,7 @@ static int vidioc_vdec_s_fmt(struct file *file,
> void *priv,
> > if (!dec_pdata->uses_stateless_api &&
> > f->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE &&
> > vb2_is_busy(&ctx->m2m_ctx->out_q_ctx.q)) {
> > -mtk_v4l2_err("out_q_ctx buffers already requested");
> > +mtk_v4l2_vdec_err(ctx, "out_q_ctx buffers already requested");
> > ret = -EBUSY;
> > }
> >
> > @@ -456,7 +453,7 @@ static int vidioc_vdec_s_fmt(struct file *file,
> void *priv,
> > */
> > if ((f->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) &&
> > vb2_is_busy(&ctx->m2m_ctx->cap_q_ctx.q)) {
> > -mtk_v4l2_err("cap_q_ctx buffers already requested");
> > +mtk_v4l2_vdec_err(ctx, "cap_q_ctx buffers already requested");
> > ret = -EBUSY;
> > }
> >
> > @@ -491,8 +488,8 @@ static int vidioc_vdec_s_fmt(struct file *file,
> void *priv,
> > if (ctx->state == MTK_STATE_FREE) {
> > ret = vdec_if_init(ctx, q_data->fmt->fourcc);
> > if (ret) {
> > -mtk_v4l2_err("[%d]: vdec_if_init() fail ret=%d",
> > -ctx->id, ret);
> > +mtk_v4l2_vdec_err(ctx, "[%d]: vdec_if_init() fail ret=%d",
> > + ctx->id, ret);
> > return -EINVAL;
> > }
> > ctx->state = MTK_STATE_INIT;
> > @@ -515,8 +512,8 @@ static int vidioc_vdec_s_fmt(struct file *file,
> void *priv,
> > */
> > ret = vdec_if_get_param(ctx, GET_PARAM_PIC_INFO, &ctx->picinfo);
> > if (ret) {
> > -mtk_v4l2_err("[%d]Error!! Get GET_PARAM_PICTURE_INFO Fail",
> > - ctx->id);
> > +mtk_v4l2_vdec_err(ctx, "[%d]Error!! Get GET_PARAM_PICTURE_INFO
> Fail",
> > + ctx->id);
> > }
> >
> > ctx->last_decoded_picinfo = ctx->picinfo;
> > @@ -540,11 +537,13 @@ static int vidioc_vdec_s_fmt(struct file
> *file, void *priv,
> >
> > ctx->q_data[MTK_Q_DATA_DST].coded_width = ctx->picinfo.buf_w;
> > ctx->q_data[MTK_Q_DATA_DST].coded_height = ctx->picinfo.buf_h;
> > -mtk_v4l2_debug(2, "[%d] vdec_if_init() num_plane = %d wxh=%dx%d
> pic wxh=%dx%d sz[0]=0x%x sz[1]=0x%x",
> > - ctx->id, pix_mp->num_planes, ctx->picinfo.buf_w, ctx-
> >picinfo.buf_h,
> > - ctx->picinfo.pic_w, ctx->picinfo.pic_h,
> > - ctx->q_data[MTK_Q_DATA_DST].sizeimage[0],
> > - ctx->q_data[MTK_Q_DATA_DST].sizeimage[1]);
> > +mtk_v4l2_vdec_dbg(2, ctx,
> > + "[%d] init() plane:%d wxh=%dx%d pic wxh=%dx%d sz=0x%x_0x%x",
> > + ctx->id, pix_mp->num_planes,
> > + ctx->picinfo.buf_w, ctx->picinfo.buf_h,
> > + ctx->picinfo.pic_w, ctx->picinfo.pic_h,
> > + ctx->q_data[MTK_Q_DATA_DST].sizeimage[0],
> > + ctx->q_data[MTK_Q_DATA_DST].sizeimage[1]);
> > }
> > return 0;
> > }
> > @@ -570,14 +569,11 @@ static int vidioc_enum_framesizes(struct file
> *file, void *priv,
> > fsize->type = V4L2_FRMSIZE_TYPE_STEPWISE;
> > fsize->stepwise = dec_pdata->vdec_formats[i].frmsize;
> >
> > -mtk_v4l2_debug(1, "%x, %d %d %d %d %d %d",
> > -ctx->dev->dec_capability,
> > -fsize->stepwise.min_width,
> > -fsize->stepwise.max_width,
> > -fsize->stepwise.step_width,
> > -fsize->stepwise.min_height,
> > -fsize->stepwise.max_height,
> > -fsize->stepwise.step_height);
> > +mtk_v4l2_vdec_dbg(1, ctx, "%x, %d %d %d %d %d %d",
> > + ctx->dev->dec_capability, fsize->stepwise.min_width,
> > + fsize->stepwise.max_width, fsize->stepwise.step_width,
> > + fsize->stepwise.min_height, fsize->stepwise.max_height,
> > + fsize->stepwise.step_height);
> >
> > return 0;
> > }
> > @@ -641,7 +637,7 @@ static int vidioc_vdec_g_fmt(struct file *file,
> void *priv,
> >
> > vq = v4l2_m2m_get_vq(ctx->m2m_ctx, f->type);
> > if (!vq) {
> > -mtk_v4l2_err("no vb2 queue for type=%d", f->type);
> > +mtk_v4l2_vdec_err(ctx, "no vb2 queue for type=%d", f->type);
> > return -EINVAL;
> > }
> >
> > @@ -712,8 +708,8 @@ static int vidioc_vdec_g_fmt(struct file *file,
> void *priv,
> > pix_mp->plane_fmt[1].bytesperline = q_data->bytesperline[1];
> > pix_mp->plane_fmt[1].sizeimage = q_data->sizeimage[1];
> >
> > -mtk_v4l2_debug(1, "[%d] type=%d state=%d Format information could
> not be read, not ready yet!",
> > -ctx->id, f->type, ctx->state);
> > +mtk_v4l2_vdec_dbg(1, ctx, "[%d] type=%d state=%d Format
> information not ready!",
> > + ctx->id, f->type, ctx->state);
> > }
> >
> > return 0;
> > @@ -730,7 +726,7 @@ int vb2ops_vdec_queue_setup(struct vb2_queue
> *vq, unsigned int *nbuffers,
> > q_data = mtk_vdec_get_q_data(ctx, vq->type);
> >
> > if (q_data == NULL) {
> > -mtk_v4l2_err("vq->type=%d err\n", vq->type);
> > +mtk_v4l2_vdec_err(ctx, "vq->type=%d err\n", vq->type);
> > return -EINVAL;
> > }
> >
> > @@ -756,10 +752,9 @@ int vb2ops_vdec_queue_setup(struct vb2_queue
> *vq, unsigned int *nbuffers,
> > sizes[i] = q_data->sizeimage[i];
> > }
> >
> > -mtk_v4l2_debug(1,
> > -"[%d]\t type = %d, get %d plane(s), %d buffer(s) of size 0x%x 0x%x
> ",
> > -ctx->id, vq->type, *nplanes, *nbuffers,
> > -sizes[0], sizes[1]);
> > +mtk_v4l2_vdec_dbg(1, ctx,
> > + "[%d]\t type = %d, get %d plane(s), %d buffer(s) of size 0x%x
> 0x%x ",
> > + ctx->id, vq->type, *nplanes, *nbuffers, sizes[0], sizes[1]);
> >
> > return 0;
> > }
> > @@ -770,16 +765,15 @@ int vb2ops_vdec_buf_prepare(struct vb2_buffer
> *vb)
> > struct mtk_q_data *q_data;
> > int i;
> >
> > -mtk_v4l2_debug(3, "[%d] (%d) id=%d",
> > -ctx->id, vb->vb2_queue->type, vb->index);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d] (%d) id=%d",
> > + ctx->id, vb->vb2_queue->type, vb->index);
> >
> > q_data = mtk_vdec_get_q_data(ctx, vb->vb2_queue->type);
> >
> > for (i = 0; i < q_data->fmt->num_planes; i++) {
> > if (vb2_plane_size(vb, i) < q_data->sizeimage[i]) {
> > -mtk_v4l2_err("data will not fit into plane %d (%lu < %d)",
> > -i, vb2_plane_size(vb, i),
> > -q_data->sizeimage[i]);
> > +mtk_v4l2_vdec_err(ctx, "data will not fit into plane %d (%lu <
> %d)",
> > + i, vb2_plane_size(vb, i), q_data->sizeimage[i]);
> > return -EINVAL;
> > }
> > if (!V4L2_TYPE_IS_OUTPUT(vb->type))
> > @@ -807,7 +801,7 @@ void vb2ops_vdec_buf_finish(struct vb2_buffer
> *vb)
> > mutex_unlock(&ctx->lock);
> >
> > if (buf_error) {
> > -mtk_v4l2_err("Unrecoverable error on buffer.");
> > +mtk_v4l2_vdec_err(ctx, "Unrecoverable error on buffer.");
> > ctx->state = MTK_STATE_ABORT;
> > }
> > }
> > @@ -843,8 +837,8 @@ void vb2ops_vdec_stop_streaming(struct
> vb2_queue *q)
> > struct mtk_vcodec_ctx *ctx = vb2_get_drv_priv(q);
> > int ret;
> >
> > -mtk_v4l2_debug(3, "[%d] (%d) state=(%x) ctx-
> >decoded_frame_cnt=%d",
> > -ctx->id, q->type, ctx->state, ctx->decoded_frame_cnt);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d] (%d) state=(%x) ctx-
> >decoded_frame_cnt=%d",
> > + ctx->id, q->type, ctx->state, ctx->decoded_frame_cnt);
> >
> > if (q->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) {
> > while ((src_buf = v4l2_m2m_src_buf_remove(ctx->m2m_ctx))) {
> > @@ -870,17 +864,17 @@ void vb2ops_vdec_stop_streaming(struct
> vb2_queue *q)
> > */
> > ctx->picinfo = ctx->last_decoded_picinfo;
> >
> > -mtk_v4l2_debug(2,
> > -"[%d]-> new(%d,%d), old(%d,%d), real(%d,%d)",
> > -ctx->id, ctx->last_decoded_picinfo.pic_w,
> > -ctx->last_decoded_picinfo.pic_h,
> > -ctx->picinfo.pic_w, ctx->picinfo.pic_h,
> > -ctx->last_decoded_picinfo.buf_w,
> > -ctx->last_decoded_picinfo.buf_h);
> > +mtk_v4l2_vdec_dbg(2, ctx,
> > + "[%d]-> new(%d,%d), old(%d,%d), real(%d,%d)",
> > + ctx->id, ctx->last_decoded_picinfo.pic_w,
> > + ctx->last_decoded_picinfo.pic_h,
> > + ctx->picinfo.pic_w, ctx->picinfo.pic_h,
> > + ctx->last_decoded_picinfo.buf_w,
> > + ctx->last_decoded_picinfo.buf_h);
> >
> > ret = ctx->dev->vdec_pdata->flush_decoder(ctx);
> > if (ret)
> > -mtk_v4l2_err("DecodeFinal failed, ret=%d", ret);
> > +mtk_v4l2_vdec_err(ctx, "DecodeFinal failed, ret=%d", ret);
> > }
> > ctx->state = MTK_STATE_FLUSH;
> >
> > @@ -905,7 +899,7 @@ static int m2mops_vdec_job_ready(void
> *m2m_priv)
> > {
> > struct mtk_vcodec_ctx *ctx = m2m_priv;
> >
> > -mtk_v4l2_debug(3, "[%d]", ctx->id);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d]", ctx->id);
> >
> > if (ctx->state == MTK_STATE_ABORT)
> > return 0;
> > @@ -973,7 +967,7 @@ int mtk_vcodec_dec_queue_init(void *priv,
> struct vb2_queue *src_vq,
> > struct mtk_vcodec_ctx *ctx = priv;
> > int ret = 0;
> >
> > -mtk_v4l2_debug(3, "[%d]", ctx->id);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d]", ctx->id);
> >
> > src_vq->type= V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE;
> > src_vq->io_modes= VB2_DMABUF | VB2_MMAP;
> > @@ -988,7 +982,7 @@ int mtk_vcodec_dec_queue_init(void *priv,
> struct vb2_queue *src_vq,
> >
> > ret = vb2_queue_init(src_vq);
> > if (ret) {
> > -mtk_v4l2_err("Failed to initialize videobuf2 queue(output)");
> > +mtk_v4l2_vdec_err(ctx, "Failed to initialize videobuf2
> queue(output)");
> > return ret;
> > }
> > dst_vq->type= V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
> > @@ -1004,7 +998,7 @@ int mtk_vcodec_dec_queue_init(void *priv,
> struct vb2_queue *src_vq,
> >
> > ret = vb2_queue_init(dst_vq);
> > if (ret)
> > -mtk_v4l2_err("Failed to initialize videobuf2 queue(capture)");
> > +mtk_v4l2_vdec_err(ctx, "Failed to initialize videobuf2
> queue(capture)");
> >
> > return ret;
> > }
> > diff --git
> a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c
> b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c
> > index 03721eda2769..4469c2411f40 100644
> > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c
> > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c
> > @@ -25,7 +25,7 @@
> > #include "mtk_vcodec_util.h"
> > #include "mtk_vcodec_fw.h"
> >
> > -static int mtk_vcodec_get_hw_count(struct mtk_vcodec_dev *dev)
> > +static int mtk_vcodec_get_hw_count(struct mtk_vcodec_ctx *ctx,
> struct mtk_vcodec_dev *dev)
> > {
> > switch (dev->vdec_pdata->hw_arch) {
> > case MTK_VDEC_PURE_SINGLE_CORE:
> > @@ -33,7 +33,7 @@ static int mtk_vcodec_get_hw_count(struct
> mtk_vcodec_dev *dev)
> > case MTK_VDEC_LAT_SINGLE_CORE:
> > return MTK_VDEC_ONE_LAT_ONE_CORE;
> > default:
> > -mtk_v4l2_err("hw arch %d not supported", dev->vdec_pdata-
> >hw_arch);
> > +mtk_v4l2_vdec_err(ctx, "hw arch %d not supported", dev-
> >vdec_pdata->hw_arch);
> > return MTK_VDEC_NO_HW;
> > }
> > }
> > @@ -52,8 +52,7 @@ static irqreturn_t mtk_vcodec_dec_irq_handler(int
> irq, void *priv)
> > /* check if HW active or not */
> > cg_status = readl(dev->reg_base[0]);
> > if ((cg_status & VDEC_HW_ACTIVE) != 0) {
> > -mtk_v4l2_err("DEC ISR, VDEC active is not 0x0 (0x%08x)",
> > - cg_status);
> > +mtk_v4l2_vdec_err(ctx, "DEC ISR, VDEC active is not 0x0 (0x%08x)",
> cg_status);
> > return IRQ_HANDLED;
> > }
> >
> > @@ -71,9 +70,7 @@ static irqreturn_t mtk_vcodec_dec_irq_handler(int
> irq, void *priv)
> >
> > wake_up_ctx(ctx, MTK_INST_IRQ_RECEIVED, 0);
> >
> > -mtk_v4l2_debug(3,
> > -"mtk_vcodec_dec_irq_handler :wake up ctx %d, dec_done_status=%x",
> > -ctx->id, dec_done_status);
> > +mtk_v4l2_vdec_dbg(3, ctx, "wake up ctx %d, dec_done_status=%x",
> ctx->id, dec_done_status);
> >
> > return IRQ_HANDLED;
> > }
> > @@ -96,7 +93,7 @@ static int mtk_vcodec_get_reg_bases(struct
> mtk_vcodec_dev *dev)
> > if (IS_ERR(dev->reg_base[i]))
> > return PTR_ERR(dev->reg_base[i]);
> >
> > -mtk_v4l2_debug(2, "reg[%d] base=%p", i, dev->reg_base[i]);
> > +dev_dbg(&pdev->dev, "reg[%d] base=%p", i, dev->reg_base[i]);
> > }
> >
> > return 0;
> > @@ -156,7 +153,7 @@ static int fops_vcodec_open(struct file *file)
> > INIT_LIST_HEAD(&ctx->list);
> > ctx->dev = dev;
> > if (ctx->dev->vdec_pdata->is_subdev_supported) {
> > -hw_count = mtk_vcodec_get_hw_count(dev);
> > +hw_count = mtk_vcodec_get_hw_count(ctx, dev);
> > if (!hw_count || !dev->subdev_prob_done) {
> > ret = -EINVAL;
> > goto err_ctrls_setup;
> > @@ -176,15 +173,14 @@ static int fops_vcodec_open(struct file
> *file)
> > ctx->type = MTK_INST_DECODER;
> > ret = dev->vdec_pdata->ctrls_setup(ctx);
> > if (ret) {
> > -mtk_v4l2_err("Failed to setup mt vcodec controls");
> > +mtk_v4l2_vdec_err(ctx, "Failed to setup mt vcodec controls");
> > goto err_ctrls_setup;
> > }
> > ctx->m2m_ctx = v4l2_m2m_ctx_init(dev->m2m_dev_dec, ctx,
> > &mtk_vcodec_dec_queue_init);
> > if (IS_ERR((__force void *)ctx->m2m_ctx)) {
> > ret = PTR_ERR((__force void *)ctx->m2m_ctx);
> > -mtk_v4l2_err("Failed to v4l2_m2m_ctx_init() (%d)",
> > -ret);
> > +mtk_v4l2_vdec_err(ctx, "Failed to v4l2_m2m_ctx_init() (%d)", ret);
> > goto err_m2m_ctx_init;
> > }
> > src_vq = v4l2_m2m_get_vq(ctx->m2m_ctx,
> > @@ -202,14 +198,14 @@ static int fops_vcodec_open(struct file
> *file)
> > * Return 0 if downloading firmware successfully,
> > * otherwise it is failed
> > */
> > -mtk_v4l2_err("failed to load firmware!");
> > +mtk_v4l2_vdec_err(ctx, "failed to load firmware!");
> > goto err_load_fw;
> > }
> >
> > dev->dec_capability =
> > mtk_vcodec_fw_get_vdec_capa(dev->fw_handler);
> >
> > -mtk_v4l2_debug(0, "decoder capability %x", dev->dec_capability);
> > +mtk_v4l2_vdec_dbg(0, ctx, "decoder capability %x", dev-
> >dec_capability);
> > }
> >
> > ctx->dev->vdec_pdata->init_vdec_params(ctx);
> > @@ -218,8 +214,7 @@ static int fops_vcodec_open(struct file *file)
> > mtk_vcodec_dbgfs_create(ctx);
> >
> > mutex_unlock(&dev->dev_mutex);
> > -mtk_v4l2_debug(0, "%s decoder [%d]", dev_name(&dev->plat_dev-
> >dev),
> > -ctx->id);
> > +mtk_v4l2_vdec_dbg(0, ctx, "%s decoder [%d]", dev_name(&dev-
> >plat_dev->dev), ctx->id);
> > return ret;
> >
> > /* Deinit when failure occurred */
> > @@ -241,7 +236,7 @@ static int fops_vcodec_release(struct file
> *file)
> > struct mtk_vcodec_dev *dev = video_drvdata(file);
> > struct mtk_vcodec_ctx *ctx = fh_to_ctx(file->private_data);
> >
> > -mtk_v4l2_debug(0, "[%d] decoder", ctx->id);
> > +mtk_v4l2_vdec_dbg(0, ctx, "[%d] decoder", ctx->id);
> > mutex_lock(&dev->dev_mutex);
> >
> > /*
> > @@ -296,7 +291,7 @@ static int mtk_vcodec_probe(struct
> platform_device *pdev)
> > &rproc_phandle)) {
> > fw_type = SCP;
> > } else {
> > -mtk_v4l2_err("Could not get vdec IPI device");
> > +dev_dbg(&pdev->dev, "Could not get vdec IPI device");
> > return -ENODEV;
> > }
> > dma_set_max_seg_size(&pdev->dev, UINT_MAX);
> > @@ -316,7 +311,7 @@ static int mtk_vcodec_probe(struct
> platform_device *pdev)
> > alloc_ordered_workqueue("core-decoder",
> > WQ_MEM_RECLAIM | WQ_FREEZABLE);
> > if (!dev->core_workqueue) {
> > -mtk_v4l2_err("Failed to create core workqueue");
> > +dev_dbg(&pdev->dev, "Failed to create core workqueue");
> > ret = -EINVAL;
> > goto err_res;
> > }
> > @@ -332,13 +327,13 @@ static int mtk_vcodec_probe(struct
> platform_device *pdev)
> >
> > ret = v4l2_device_register(&pdev->dev, &dev->v4l2_dev);
> > if (ret) {
> > -mtk_v4l2_err("v4l2_device_register err=%d", ret);
> > +dev_err(&pdev->dev, "v4l2_device_register err=%d", ret);
> > goto err_core_workq;
> > }
> >
> > vfd_dec = video_device_alloc();
> > if (!vfd_dec) {
> > -mtk_v4l2_err("Failed to allocate video device");
> > +dev_err(&pdev->dev, "Failed to allocate video device");
> > ret = -ENOMEM;
> > goto err_dec_alloc;
> > }
> > @@ -359,7 +354,7 @@ static int mtk_vcodec_probe(struct
> platform_device *pdev)
> >
> > dev->m2m_dev_dec = v4l2_m2m_init(&mtk_vdec_m2m_ops);
> > if (IS_ERR((__force void *)dev->m2m_dev_dec)) {
> > -mtk_v4l2_err("Failed to init mem2mem dec device");
> > +dev_err(&pdev->dev, "Failed to init mem2mem dec device");
> > ret = PTR_ERR((__force void *)dev->m2m_dev_dec);
> > goto err_dec_alloc;
> > }
> > @@ -368,7 +363,7 @@ static int mtk_vcodec_probe(struct
> platform_device *pdev)
> > alloc_ordered_workqueue(MTK_VCODEC_DEC_NAME,
> > WQ_MEM_RECLAIM | WQ_FREEZABLE);
> > if (!dev->decode_workqueue) {
> > -mtk_v4l2_err("Failed to create decode workqueue");
> > +dev_err(&pdev->dev, "Failed to create decode workqueue");
> > ret = -EINVAL;
> > goto err_event_workq;
> > }
> > @@ -377,7 +372,7 @@ static int mtk_vcodec_probe(struct
> platform_device *pdev)
> > ret = of_platform_populate(pdev->dev.of_node, NULL, NULL,
> > &pdev->dev);
> > if (ret) {
> > -mtk_v4l2_err("Main device of_platform_populate failed.");
> > +dev_err(&pdev->dev, "Main device of_platform_populate failed.");
> > goto err_reg_cont;
> > }
> > } else {
> > @@ -390,7 +385,7 @@ static int mtk_vcodec_probe(struct
> platform_device *pdev)
> >
> > ret = video_register_device(vfd_dec, VFL_TYPE_VIDEO, -1);
> > if (ret) {
> > -mtk_v4l2_err("Failed to register video device");
> > +dev_err(&pdev->dev, "Failed to register video device");
> > goto err_reg_cont;
> > }
> >
> > @@ -409,21 +404,21 @@ static int mtk_vcodec_probe(struct
> platform_device *pdev)
> > ret = v4l2_m2m_register_media_controller(dev->m2m_dev_dec, dev-
> >vfd_dec,
> > MEDIA_ENT_F_PROC_VIDEO_DECODER);
> > if (ret) {
> > -mtk_v4l2_err("Failed to register media controller");
> > +dev_err(&pdev->dev, "Failed to register media controller");
> > goto err_dec_mem_init;
> > }
> >
> > ret = media_device_register(&dev->mdev_dec);
> > if (ret) {
> > -mtk_v4l2_err("Failed to register media device");
> > +dev_err(&pdev->dev, "Failed to register media device");
> > goto err_media_reg;
> > }
> >
> > -mtk_v4l2_debug(0, "media registered as /dev/media%d", vfd_dec-
> >minor);
> > +dev_dbg(&pdev->dev, "media registered as /dev/media%d", vfd_dec-
> >minor);
> > }
> >
> > mtk_vcodec_dbgfs_init(dev, false);
> > -mtk_v4l2_debug(0, "decoder registered as /dev/video%d", vfd_dec-
> >minor);
> > +dev_dbg(&pdev->dev, "decoder registered as /dev/video%d", vfd_dec-
> >minor);
> >
> > return 0;
> >
> > diff --git
> a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_hw.c
> b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_hw.c
> > index e1cb2f8dca33..7c4d8ec201e3 100644
> > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_hw.c
> > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_hw.c
> > @@ -77,8 +77,7 @@ static irqreturn_t mtk_vdec_hw_irq_handler(int
> irq, void *priv)
> > /* check if HW active or not */
> > cg_status = readl(dev->reg_base[VDEC_HW_SYS]);
> > if (cg_status & VDEC_HW_ACTIVE) {
> > -mtk_v4l2_err("vdec active is not 0x0 (0x%08x)",
> > - cg_status);
> > +mtk_v4l2_vdec_err(ctx, "vdec active is not 0x0 (0x%08x)",
> cg_status);
> > return IRQ_HANDLED;
> > }
> >
> > @@ -93,8 +92,8 @@ static irqreturn_t mtk_vdec_hw_irq_handler(int
> irq, void *priv)
> >
> > wake_up_ctx(ctx, MTK_INST_IRQ_RECEIVED, dev->hw_idx);
> >
> > -mtk_v4l2_debug(3, "wake up ctx %d, dec_done_status=%x",
> > - ctx->id, dec_done_status);
> > +mtk_v4l2_vdec_dbg(3, ctx, "wake up ctx %d, dec_done_status=%x",
> > + ctx->id, dec_done_status);
> >
> > return IRQ_HANDLED;
> > }
> > diff --git
> a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_pm.c
> b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_pm.c
> > index 777d445999e9..3ab996705b97 100644
> > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_pm.c
> > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_pm.c
> > @@ -32,7 +32,7 @@ int mtk_vcodec_init_dec_clk(struct
> platform_device *pdev, struct mtk_vcodec_pm *
> > if (!dec_clk->clk_info)
> > return -ENOMEM;
> > } else {
> > -mtk_v4l2_err("Failed to get vdec clock count");
> > +dev_err(&pdev->dev, "Failed to get vdec clock count");
> > return -EINVAL;
> > }
> >
> > @@ -41,14 +41,13 @@ int mtk_vcodec_init_dec_clk(struct
> platform_device *pdev, struct mtk_vcodec_pm *
> > ret = of_property_read_string_index(pdev->dev.of_node,
> > "clock-names", i, &clk_info->clk_name);
> > if (ret) {
> > -mtk_v4l2_err("Failed to get clock name id = %d", i);
> > +dev_err(&pdev->dev, "Failed to get clock name id = %d", i);
> > return ret;
> > }
> > clk_info->vcodec_clk = devm_clk_get(&pdev->dev,
> > clk_info->clk_name);
> > if (IS_ERR(clk_info->vcodec_clk)) {
> > -mtk_v4l2_err("devm_clk_get (%d)%s fail", i,
> > -clk_info->clk_name);
> > +dev_err(&pdev->dev, "devm_clk_get (%d)%s fail", i, clk_info-
> >clk_name);
> > return PTR_ERR(clk_info->vcodec_clk);
> > }
> > }
> > @@ -63,7 +62,7 @@ static int mtk_vcodec_dec_pw_on(struct
> mtk_vcodec_pm *pm)
> >
> > ret = pm_runtime_resume_and_get(pm->dev);
> > if (ret)
> > -mtk_v4l2_err("pm_runtime_resume_and_get fail %d", ret);
> > +dev_err(pm->dev, "pm_runtime_resume_and_get fail %d", ret);
> >
> > return ret;
> > }
> > @@ -74,7 +73,7 @@ static void mtk_vcodec_dec_pw_off(struct
> mtk_vcodec_pm *pm)
> >
> > ret = pm_runtime_put(pm->dev);
> > if (ret && ret != -EAGAIN)
> > -mtk_v4l2_err("pm_runtime_put fail %d", ret);
> > +dev_err(pm->dev, "pm_runtime_put fail %d", ret);
> > }
> >
> > static void mtk_vcodec_dec_clock_on(struct mtk_vcodec_pm *pm)
> > @@ -86,7 +85,7 @@ static void mtk_vcodec_dec_clock_on(struct
> mtk_vcodec_pm *pm)
> > for (i = 0; i < dec_clk->clk_num; i++) {
> > ret = clk_prepare_enable(dec_clk->clk_info[i].vcodec_clk);
> > if (ret) {
> > -mtk_v4l2_err("clk_prepare_enable %d %s fail %d", i,
> > +dev_err(pm->dev, "clk_prepare_enable %d %s fail %d", i,
> > dec_clk->clk_info[i].clk_name, ret);
> > goto error;
> > }
> > @@ -120,7 +119,7 @@ static void mtk_vcodec_dec_enable_irq(struct
> mtk_vcodec_dev *vdec_dev, int hw_id
> > if (subdev_dev)
> > enable_irq(subdev_dev->dec_irq);
> > else
> > -mtk_v4l2_err("Failed to get hw dev\n");
> > +dev_err(&vdec_dev->plat_dev->dev, "Failed to get hw dev\n");
> > } else {
> > enable_irq(vdec_dev->dec_irq);
> > }
> > @@ -138,7 +137,7 @@ static void mtk_vcodec_dec_disable_irq(struct
> mtk_vcodec_dev *vdec_dev, int hw_i
> > if (subdev_dev)
> > disable_irq(subdev_dev->dec_irq);
> > else
> > -mtk_v4l2_err("Failed to get hw dev\n");
> > +dev_err(&vdec_dev->plat_dev->dev, "Failed to get hw dev\n");
> > } else {
> > disable_irq(vdec_dev->dec_irq);
> > }
> > @@ -185,7 +184,7 @@ static struct mtk_vcodec_pm
> *mtk_vcodec_dec_get_pm(struct mtk_vcodec_dev *vdec_d
> > if (subdev_dev)
> > return &subdev_dev->pm;
> >
> > -mtk_v4l2_err("Failed to get hw dev\n");
> > +dev_err(&vdec_dev->plat_dev->dev, "Failed to get hw dev\n");
> > return NULL;
> > }
> >
> > diff --git
> a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_stateful.c
> b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_stateful.c
> > index 0fbd030026c7..3c289b08bc87 100644
> > ---
> a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_stateful.c
> > +++
> b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_stateful.c
> > @@ -61,15 +61,16 @@ static struct vb2_buffer
> *get_display_buffer(struct mtk_vcodec_ctx *ctx)
> > struct mtk_video_dec_buf *dstbuf;
> > struct vb2_v4l2_buffer *vb;
> >
> > -mtk_v4l2_debug(3, "[%d]", ctx->id);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d]", ctx->id);
> > if (vdec_if_get_param(ctx, GET_PARAM_DISP_FRAME_BUFFER,
> > &disp_frame_buffer)) {
> > -mtk_v4l2_err("[%d]Cannot get param : GET_PARAM_DISP_FRAME_BUFFER",
> ctx->id);
> > +mtk_v4l2_vdec_err(ctx, "[%d]Cannot get param :
> GET_PARAM_DISP_FRAME_BUFFER",
> > + ctx->id);
> > return NULL;
> > }
> >
> > if (!disp_frame_buffer) {
> > -mtk_v4l2_debug(3, "No display frame buffer");
> > +mtk_v4l2_vdec_dbg(3, ctx, "No display frame buffer");
> > return NULL;
> > }
> >
> > @@ -78,9 +79,9 @@ static struct vb2_buffer
> *get_display_buffer(struct mtk_vcodec_ctx *ctx)
> > vb = &dstbuf->m2m_buf.vb;
> > mutex_lock(&ctx->lock);
> > if (dstbuf->used) {
> > -mtk_v4l2_debug(2, "[%d]status=%x queue id=%d to done_list %d",
> > - ctx->id, disp_frame_buffer->status,
> > - vb->vb2_buf.index, dstbuf->queued_in_vb2);
> > +mtk_v4l2_vdec_dbg(2, ctx, "[%d]status=%x queue id=%d to done_list
> %d",
> > + ctx->id, disp_frame_buffer->status,
> > + vb->vb2_buf.index, dstbuf->queued_in_vb2);
> >
> > v4l2_m2m_buf_done(vb, VB2_BUF_STATE_DONE);
> > ctx->decoded_frame_cnt++;
> > @@ -105,16 +106,16 @@ static struct vb2_buffer
> *get_free_buffer(struct mtk_vcodec_ctx *ctx)
> >
> > if (vdec_if_get_param(ctx, GET_PARAM_FREE_FRAME_BUFFER,
> > &free_frame_buffer)) {
> > -mtk_v4l2_err("[%d] Error!! Cannot get param", ctx->id);
> > +mtk_v4l2_vdec_err(ctx, "[%d] Error!! Cannot get param", ctx->id);
> > return NULL;
> > }
> > if (!free_frame_buffer) {
> > -mtk_v4l2_debug(3, " No free frame buffer");
> > +mtk_v4l2_vdec_dbg(3, ctx, " No free frame buffer");
> > return NULL;
> > }
> >
> > -mtk_v4l2_debug(3, "[%d] tmp_frame_addr = 0x%p", ctx->id,
> > - free_frame_buffer);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d] tmp_frame_addr = 0x%p", ctx->id,
> > + free_frame_buffer);
> >
> > dstbuf = container_of(free_frame_buffer, struct mtk_video_dec_buf,
> > frame_buffer);
> > @@ -131,9 +132,9 @@ static struct vb2_buffer
> *get_free_buffer(struct mtk_vcodec_ctx *ctx)
> > * This reduce overheads that dq/q unused capture
> > * buffer. In this case, queued_in_vb2 = true.
> > */
> > -mtk_v4l2_debug(2, "[%d]status=%x queue id=%d to rdy_queue %d",
> > - ctx->id, free_frame_buffer->status,
> > - vb->vb2_buf.index, dstbuf->queued_in_vb2);
> > +mtk_v4l2_vdec_dbg(2, ctx, "[%d]status=%x queue id=%d to rdy_queue
> %d",
> > + ctx->id, free_frame_buffer->status,
> > + vb->vb2_buf.index, dstbuf->queued_in_vb2);
> > v4l2_m2m_buf_queue(ctx->m2m_ctx, vb);
> > } else if (!dstbuf->queued_in_vb2 && dstbuf->queued_in_v4l2) {
> > /*
> > @@ -146,10 +147,10 @@ static struct vb2_buffer
> *get_free_buffer(struct mtk_vcodec_ctx *ctx)
> > * means this buffer is not from previous decode
> > * output.
> > */
> > -mtk_v4l2_debug(2,
> > - "[%d]status=%x queue id=%d to rdy_queue",
> > - ctx->id, free_frame_buffer->status,
> > - vb->vb2_buf.index);
> > +mtk_v4l2_vdec_dbg(2, ctx,
> > + "[%d]status=%x queue id=%d to rdy_queue",
> > + ctx->id, free_frame_buffer->status,
> > + vb->vb2_buf.index);
> > v4l2_m2m_buf_queue(ctx->m2m_ctx, vb);
> > dstbuf->queued_in_vb2 = true;
> > } else {
> > @@ -161,10 +162,10 @@ static struct vb2_buffer
> *get_free_buffer(struct mtk_vcodec_ctx *ctx)
> > * When this buffer q from user space, it could
> > * directly q to vb2 buffer
> > */
> > -mtk_v4l2_debug(3, "[%d]status=%x err queue id=%d %d %d",
> > - ctx->id, free_frame_buffer->status,
> > - vb->vb2_buf.index, dstbuf->queued_in_vb2,
> > - dstbuf->queued_in_v4l2);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d]status=%x err queue id=%d %d %d",
> > + ctx->id, free_frame_buffer->status,
> > + vb->vb2_buf.index, dstbuf->queued_in_vb2,
> > + dstbuf->queued_in_v4l2);
> > }
> > dstbuf->used = false;
> > }
> > @@ -191,7 +192,7 @@ static void mtk_vdec_queue_res_chg_event(struct
> mtk_vcodec_ctx *ctx)
> > .u.src_change.changes = V4L2_EVENT_SRC_CH_RESOLUTION,
> > };
> >
> > -mtk_v4l2_debug(1, "[%d]", ctx->id);
> > +mtk_v4l2_vdec_dbg(1, ctx, "[%d]", ctx->id);
> > v4l2_event_queue_fh(&ctx->fh, &ev_src_ch);
> > }
> >
> > @@ -202,7 +203,7 @@ static int mtk_vdec_flush_decoder(struct
> mtk_vcodec_ctx *ctx)
> >
> > ret = vdec_if_decode(ctx, NULL, NULL, &res_chg);
> > if (ret)
> > -mtk_v4l2_err("DecodeFinal failed, ret=%d", ret);
> > +mtk_v4l2_vdec_err(ctx, "DecodeFinal failed, ret=%d", ret);
> >
> > clean_display_buffer(ctx);
> > clean_free_buffer(ctx);
> > @@ -221,14 +222,14 @@ static void mtk_vdec_update_fmt(struct
> mtk_vcodec_ctx *ctx,
> > for (k = 0; k < num_supported_formats; k++) {
> > fmt = &mtk_video_formats[k];
> > if (fmt->fourcc == pixelformat) {
> > -mtk_v4l2_debug(1, "Update cap fourcc(%d -> %d)",
> > - dst_q_data->fmt->fourcc, pixelformat);
> > +mtk_v4l2_vdec_dbg(1, ctx, "Update cap fourcc(%d -> %d)",
> > + dst_q_data->fmt->fourcc, pixelformat);
> > dst_q_data->fmt = fmt;
> > return;
> > }
> > }
> >
> > -mtk_v4l2_err("Cannot get fourcc(%d), using init value",
> pixelformat);
> > +mtk_v4l2_vdec_err(ctx, "Cannot get fourcc(%d), using init value",
> pixelformat);
> > }
> >
> > static int mtk_vdec_pic_info_update(struct mtk_vcodec_ctx *ctx)
> > @@ -238,7 +239,8 @@ static int mtk_vdec_pic_info_update(struct
> mtk_vcodec_ctx *ctx)
> >
> > if (vdec_if_get_param(ctx, GET_PARAM_PIC_INFO,
> > &ctx->last_decoded_picinfo)) {
> > -mtk_v4l2_err("[%d]Error!! Cannot get param :
> GET_PARAM_PICTURE_INFO ERR", ctx->id);
> > +mtk_v4l2_vdec_err(ctx, "[%d]Error!! Cannot get param :
> GET_PARAM_PICTURE_INFO ERR",
> > + ctx->id);
> > return -EINVAL;
> > }
> >
> > @@ -246,7 +248,7 @@ static int mtk_vdec_pic_info_update(struct
> mtk_vcodec_ctx *ctx)
> > ctx->last_decoded_picinfo.pic_h == 0 ||
> > ctx->last_decoded_picinfo.buf_w == 0 ||
> > ctx->last_decoded_picinfo.buf_h == 0) {
> > -mtk_v4l2_err("Cannot get correct pic info");
> > +mtk_v4l2_vdec_err(ctx, "Cannot get correct pic info");
> > return -EINVAL;
> > }
> >
> > @@ -258,15 +260,15 @@ static int mtk_vdec_pic_info_update(struct
> mtk_vcodec_ctx *ctx)
> > ctx->last_decoded_picinfo.pic_h == ctx->picinfo.pic_h)
> > return 0;
> >
> > -mtk_v4l2_debug(1, "[%d]-> new(%d,%d), old(%d,%d), real(%d,%d)",
> ctx->id,
> > - ctx->last_decoded_picinfo.pic_w,
> > - ctx->last_decoded_picinfo.pic_h, ctx->picinfo.pic_w,
> > - ctx->picinfo.pic_h, ctx->last_decoded_picinfo.buf_w,
> > - ctx->last_decoded_picinfo.buf_h);
> > +mtk_v4l2_vdec_dbg(1, ctx, "[%d]-> new(%d,%d), old(%d,%d),
> real(%d,%d)", ctx->id,
> > + ctx->last_decoded_picinfo.pic_w,
> > + ctx->last_decoded_picinfo.pic_h, ctx->picinfo.pic_w,
> > + ctx->picinfo.pic_h, ctx->last_decoded_picinfo.buf_w,
> > + ctx->last_decoded_picinfo.buf_h);
> >
> > ret = vdec_if_get_param(ctx, GET_PARAM_DPB_SIZE, &dpbsize);
> > if (dpbsize == 0)
> > -mtk_v4l2_err("Incorrect dpb size, ret=%d", ret);
> > +mtk_v4l2_vdec_err(ctx, "Incorrect dpb size, ret=%d", ret);
> >
> > ctx->dpb_size = dpbsize;
> >
> > @@ -288,14 +290,14 @@ static void mtk_vdec_worker(struct
> work_struct *work)
> > src_buf = v4l2_m2m_next_src_buf(ctx->m2m_ctx);
> > if (!src_buf) {
> > v4l2_m2m_job_finish(dev->m2m_dev_dec, ctx->m2m_ctx);
> > -mtk_v4l2_debug(1, "[%d] src_buf empty!!", ctx->id);
> > +mtk_v4l2_vdec_dbg(1, ctx, "[%d] src_buf empty!!", ctx->id);
> > return;
> > }
> >
> > dst_buf = v4l2_m2m_next_dst_buf(ctx->m2m_ctx);
> > if (!dst_buf) {
> > v4l2_m2m_job_finish(dev->m2m_dev_dec, ctx->m2m_ctx);
> > -mtk_v4l2_debug(1, "[%d] dst_buf empty!!", ctx->id);
> > +mtk_v4l2_vdec_dbg(1, ctx, "[%d] dst_buf empty!!", ctx->id);
> > return;
> > }
> >
> > @@ -313,15 +315,15 @@ static void mtk_vdec_worker(struct
> work_struct *work)
> > vb2_dma_contig_plane_dma_addr(&dst_buf->vb2_buf, 1);
> > pfb->base_c.size = ctx->picinfo.fb_sz[1];
> > pfb->status = 0;
> > -mtk_v4l2_debug(3, "===>[%d] vdec_if_decode() ===>", ctx->id);
> > +mtk_v4l2_vdec_dbg(3, ctx, "===>[%d] vdec_if_decode() ===>", ctx-
> >id);
> >
> > -mtk_v4l2_debug(3,
> > - "id=%d Framebuf pfb=%p VA=%p Y_DMA=%pad C_DMA=%pad
> Size=%zx",
> > - dst_buf->vb2_buf.index, pfb, pfb->base_y.va,
> > - &pfb->base_y.dma_addr, &pfb->base_c.dma_addr, pfb-
> >base_y.size);
> > +mtk_v4l2_vdec_dbg(3, ctx,
> > + "id=%d Framebuf pfb=%p VA=%p Y_DMA=%pad C_DMA=%pad Size=%zx",
> > + dst_buf->vb2_buf.index, pfb, pfb->base_y.va,
> > + &pfb->base_y.dma_addr, &pfb->base_c.dma_addr, pfb->base_y.size);
> >
> > if (src_buf == &ctx->empty_flush_buf.vb) {
> > -mtk_v4l2_debug(1, "Got empty flush input buffer.");
> > +mtk_v4l2_vdec_dbg(1, ctx, "Got empty flush input buffer.");
> > src_buf = v4l2_m2m_src_buf_remove(ctx->m2m_ctx);
> >
> > /* update dst buf status */
> > @@ -350,12 +352,12 @@ static void mtk_vdec_worker(struct
> work_struct *work)
> > buf.size = (size_t)src_buf->vb2_buf.planes[0].bytesused;
> > if (!buf.va) {
> > v4l2_m2m_job_finish(dev->m2m_dev_dec, ctx->m2m_ctx);
> > -mtk_v4l2_err("[%d] id=%d src_addr is NULL!!", ctx->id,
> > - src_buf->vb2_buf.index);
> > +mtk_v4l2_vdec_err(ctx, "[%d] id=%d src_addr is NULL!!", ctx->id,
> > + src_buf->vb2_buf.index);
> > return;
> > }
> > -mtk_v4l2_debug(3, "[%d] Bitstream VA=%p DMA=%pad Size=%zx vb=%p",
> > - ctx->id, buf.va, &buf.dma_addr, buf.size, src_buf);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d] Bitstream VA=%p DMA=%pad Size=%zx
> vb=%p",
> > + ctx->id, buf.va, &buf.dma_addr, buf.size, src_buf);
> > dst_buf->vb2_buf.timestamp = src_buf->vb2_buf.timestamp;
> > dst_buf->timecode = src_buf->timecode;
> > mutex_lock(&ctx->lock);
> > @@ -366,9 +368,10 @@ static void mtk_vdec_worker(struct work_struct
> *work)
> > ret = vdec_if_decode(ctx, &buf, pfb, &res_chg);
> >
> > if (ret) {
> > -mtk_v4l2_err(" <===[%d], src_buf[%d] sz=0x%zx pts=%llu dst_buf[%d]
> vdec_if_decode() ret=%d res_chg=%d===>",
> > - ctx->id, src_buf->vb2_buf.index, buf.size,
> > - src_buf->vb2_buf.timestamp, dst_buf->vb2_buf.index, ret,
> res_chg);
> > +mtk_v4l2_vdec_err(ctx,
> > + "[%d] decode src[%d] sz=0x%zx pts=%llu dst[%d] ret=%d
> res_chg=%d",
> > + ctx->id, src_buf->vb2_buf.index, buf.size,
> > + src_buf->vb2_buf.timestamp, dst_buf->vb2_buf.index, ret,
> res_chg);
> > src_buf = v4l2_m2m_src_buf_remove(ctx->m2m_ctx);
> > if (ret == -EIO) {
> > mutex_lock(&ctx->lock);
> > @@ -421,8 +424,8 @@ static void
> vb2ops_vdec_stateful_buf_queue(struct vb2_buffer *vb)
> > struct vb2_v4l2_buffer *vb2_v4l2;
> > struct mtk_q_data *dst_q_data;
> >
> > -mtk_v4l2_debug(3, "[%d] (%d) id=%d, vb=%p", ctx->id,
> > - vb->vb2_queue->type, vb->index, vb);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d] (%d) id=%d, vb=%p", ctx->id,
> > + vb->vb2_queue->type, vb->index, vb);
> > /*
> > * check if this buffer is ready to be used after decode
> > */
> > @@ -448,20 +451,19 @@ static void
> vb2ops_vdec_stateful_buf_queue(struct vb2_buffer *vb)
> > v4l2_m2m_buf_queue(ctx->m2m_ctx, to_vb2_v4l2_buffer(vb));
> >
> > if (ctx->state != MTK_STATE_INIT) {
> > -mtk_v4l2_debug(3, "[%d] already init driver %d", ctx->id,
> > - ctx->state);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d] already init driver %d", ctx->id,
> ctx->state);
> > return;
> > }
> >
> > src_buf = v4l2_m2m_next_src_buf(ctx->m2m_ctx);
> > if (!src_buf) {
> > -mtk_v4l2_err("No src buffer");
> > +mtk_v4l2_vdec_err(ctx, "No src buffer");
> > return;
> > }
> >
> > if (src_buf == &ctx->empty_flush_buf.vb) {
> > /* This shouldn't happen. Just in case. */
> > -mtk_v4l2_err("Invalid flush buffer.");
> > +mtk_v4l2_vdec_err(ctx, "Invalid flush buffer.");
> > v4l2_m2m_src_buf_remove(ctx->m2m_ctx);
> > return;
> > }
> > @@ -469,9 +471,8 @@ static void
> vb2ops_vdec_stateful_buf_queue(struct vb2_buffer *vb)
> > src_mem.va = vb2_plane_vaddr(&src_buf->vb2_buf, 0);
> > src_mem.dma_addr = vb2_dma_contig_plane_dma_addr(&src_buf-
> >vb2_buf, 0);
> > src_mem.size = (size_t)src_buf->vb2_buf.planes[0].bytesused;
> > -mtk_v4l2_debug(2, "[%d] buf id=%d va=%p dma=%pad size=%zx", ctx-
> >id,
> > - src_buf->vb2_buf.index, src_mem.va, &src_mem.dma_addr,
> > - src_mem.size);
> > +mtk_v4l2_vdec_dbg(2, ctx, "[%d] buf id=%d va=%p dma=%pad
> size=%zx", ctx->id,
> > + src_buf->vb2_buf.index, src_mem.va, &src_mem.dma_addr,
> src_mem.size);
> >
> > ret = vdec_if_decode(ctx, &src_mem, NULL, &res_chg);
> > if (ret || !res_chg) {
> > @@ -484,20 +485,22 @@ static void
> vb2ops_vdec_stateful_buf_queue(struct vb2_buffer *vb)
> >
> > src_buf = v4l2_m2m_src_buf_remove(ctx->m2m_ctx);
> > if (ret == -EIO) {
> > -mtk_v4l2_err("[%d] Unrecoverable error in vdec_if_decode.", ctx-
> >id);
> > +mtk_v4l2_vdec_err(ctx, "[%d] Unrecoverable error in
> vdec_if_decode.",
> > + ctx->id);
> > ctx->state = MTK_STATE_ABORT;
> > v4l2_m2m_buf_done(src_buf, VB2_BUF_STATE_ERROR);
> > } else {
> > v4l2_m2m_buf_done(src_buf, VB2_BUF_STATE_DONE);
> > }
> > -mtk_v4l2_debug(ret ? 0 : 1,
> > - "[%d] vdec_if_decode() src_buf=%d, size=%zu, fail=%d,
> res_chg=%d",
> > - ctx->id, src_buf->vb2_buf.index, src_mem.size, ret,
> res_chg);
> > +mtk_v4l2_vdec_dbg(ret ? 0 : 1, ctx,
> > + "[%d] decode() src_buf=%d, size=%zu, fail=%d, res_chg=%d",
> > + ctx->id, src_buf->vb2_buf.index, src_mem.size, ret, res_chg);
> > return;
> > }
> >
> > if (vdec_if_get_param(ctx, GET_PARAM_PIC_INFO, &ctx->picinfo)) {
> > -mtk_v4l2_err("[%d]Error!! Cannot get param :
> GET_PARAM_PICTURE_INFO ERR", ctx->id);
> > +mtk_v4l2_vdec_err(ctx, "[%d]Error!! Cannot get param :
> GET_PARAM_PICTURE_INFO ERR",
> > + ctx->id);
> > return;
> > }
> >
> > @@ -508,17 +511,17 @@ static void
> vb2ops_vdec_stateful_buf_queue(struct vb2_buffer *vb)
> > dst_q_data->bytesperline[i] = ctx->picinfo.buf_w;
> > }
> >
> > -mtk_v4l2_debug(2, "[%d] vdec_if_init() OK wxh=%dx%d pic wxh=%dx%d
> sz[0]=0x%x sz[1]=0x%x",
> > - ctx->id, ctx->picinfo.buf_w, ctx->picinfo.buf_h, ctx-
> >picinfo.pic_w,
> > - ctx->picinfo.pic_h, dst_q_data->sizeimage[0], dst_q_data-
> >sizeimage[1]);
> > +mtk_v4l2_vdec_dbg(2, ctx, "[%d] init OK wxh=%dx%d pic wxh=%dx%d
> sz[0]=0x%x sz[1]=0x%x",
> > + ctx->id, ctx->picinfo.buf_w, ctx->picinfo.buf_h, ctx-
> >picinfo.pic_w,
> > + ctx->picinfo.pic_h, dst_q_data->sizeimage[0], dst_q_data-
> >sizeimage[1]);
> >
> > ret = vdec_if_get_param(ctx, GET_PARAM_DPB_SIZE, &dpbsize);
> > if (dpbsize == 0)
> > -mtk_v4l2_err("[%d] GET_PARAM_DPB_SIZE fail=%d", ctx->id, ret);
> > +mtk_v4l2_vdec_err(ctx, "[%d] GET_PARAM_DPB_SIZE fail=%d", ctx->id,
> ret);
> >
> > ctx->dpb_size = dpbsize;
> > ctx->state = MTK_STATE_HEADER;
> > -mtk_v4l2_debug(1, "[%d] dpbsize=%d", ctx->id, ctx->dpb_size);
> > +mtk_v4l2_vdec_dbg(1, ctx, "[%d] dpbsize=%d", ctx->id, ctx-
> >dpb_size);
> >
> > mtk_vdec_queue_res_chg_event(ctx);
> > }
> > @@ -533,7 +536,7 @@ static int mtk_vdec_g_v_ctrl(struct v4l2_ctrl
> *ctrl)
> > if (ctx->state >= MTK_STATE_HEADER) {
> > ctrl->val = ctx->dpb_size;
> > } else {
> > -mtk_v4l2_debug(0, "Seqinfo not ready");
> > +mtk_v4l2_vdec_dbg(0, ctx, "Seqinfo not ready");
> > ctrl->val = 0;
> > }
> > break;
> > @@ -570,7 +573,7 @@ static int mtk_vcodec_dec_ctrls_setup(struct
> mtk_vcodec_ctx *ctx)
> > V4L2_MPEG_VIDEO_H264_PROFILE_MAIN);
> >
> > if (ctx->ctrl_hdl.error) {
> > -mtk_v4l2_err("Adding control failed %d", ctx->ctrl_hdl.error);
> > +mtk_v4l2_vdec_err(ctx, "Adding control failed %d", ctx-
> >ctrl_hdl.error);
> > return ctx->ctrl_hdl.error;
> > }
> >
> > diff --git
> a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_stateless.c
> b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_stateless.c
> > index db1e14a1bd6c..ffe05ff31dd1 100644
> > ---
> a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_stateless.c
> > +++
> b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_stateless.c
> > @@ -232,10 +232,10 @@ static void
> mtk_vdec_stateless_cap_to_disp(struct mtk_vcodec_ctx *ctx, int error
> > vb2_dst = v4l2_m2m_dst_buf_remove(ctx->m2m_ctx);
> > if (vb2_dst) {
> > v4l2_m2m_buf_done(vb2_dst, state);
> > -mtk_v4l2_debug(2, "free frame buffer id:%d to done list",
> > - vb2_dst->vb2_buf.index);
> > +mtk_v4l2_vdec_dbg(2, ctx, "free frame buffer id:%d to done list",
> > + vb2_dst->vb2_buf.index);
> > } else {
> > -mtk_v4l2_err("dst buffer is NULL");
> > +mtk_v4l2_vdec_err(ctx, "dst buffer is NULL");
> > }
> >
> > if (src_buf_req)
> > @@ -251,7 +251,7 @@ static struct vdec_fb
> *vdec_get_cap_buffer(struct mtk_vcodec_ctx *ctx)
> >
> > vb2_v4l2 = v4l2_m2m_next_dst_buf(ctx->m2m_ctx);
> > if (!vb2_v4l2) {
> > -mtk_v4l2_debug(1, "[%d] dst_buf empty!!", ctx->id);
> > +mtk_v4l2_vdec_dbg(1, ctx, "[%d] dst_buf empty!!", ctx->id);
> > return NULL;
> > }
> >
> > @@ -269,9 +269,10 @@ static struct vdec_fb
> *vdec_get_cap_buffer(struct mtk_vcodec_ctx *ctx)
> > vb2_dma_contig_plane_dma_addr(dst_buf, 1);
> > pfb->base_c.size = ctx->q_data[MTK_Q_DATA_DST].sizeimage[1];
> > }
> > -mtk_v4l2_debug(1, "id=%d Framebuf pfb=%p VA=%p Y_DMA=%pad
> C_DMA=%pad Size=%zx frame_count = %d",
> > - dst_buf->index, pfb, pfb->base_y.va, &pfb->base_y.dma_addr,
> > - &pfb->base_c.dma_addr, pfb->base_y.size, ctx-
> >decoded_frame_cnt);
> > +mtk_v4l2_vdec_dbg(1, ctx,
> > + "id=%d Framebuf pfb=%p VA=%p Y/C_DMA=%pad_%pad Sz=%zx
> frame_count = %d",
> > + dst_buf->index, pfb, pfb->base_y.va, &pfb->base_y.dma_addr,
> > + &pfb->base_c.dma_addr, pfb->base_y.size, ctx-
> >decoded_frame_cnt);
> >
> > return pfb;
> > }
> > @@ -300,7 +301,7 @@ static void mtk_vdec_worker(struct work_struct
> *work)
> > vb2_v4l2_src = v4l2_m2m_next_src_buf(ctx->m2m_ctx);
> > if (!vb2_v4l2_src) {
> > v4l2_m2m_job_finish(dev->m2m_dev_dec, ctx->m2m_ctx);
> > -mtk_v4l2_debug(1, "[%d] no available source buffer", ctx->id);
> > +mtk_v4l2_vdec_dbg(1, ctx, "[%d] no available source buffer", ctx-
> >id);
> > return;
> > }
> >
> > @@ -309,33 +310,34 @@ static void mtk_vdec_worker(struct
> work_struct *work)
> > m2m_buf.vb);
> > bs_src = &dec_buf_src->bs_buffer;
> >
> > -mtk_v4l2_debug(3, "[%d] (%d) id=%d, vb=%p", ctx->id,
> > - vb2_src->vb2_queue->type, vb2_src->index, vb2_src);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d] (%d) id=%d, vb=%p", ctx->id,
> > + vb2_src->vb2_queue->type, vb2_src->index, vb2_src);
> >
> > bs_src->va = vb2_plane_vaddr(vb2_src, 0);
> > bs_src->dma_addr = vb2_dma_contig_plane_dma_addr(vb2_src, 0);
> > bs_src->size = (size_t)vb2_src->planes[0].bytesused;
> > if (!bs_src->va) {
> > v4l2_m2m_job_finish(dev->m2m_dev_dec, ctx->m2m_ctx);
> > -mtk_v4l2_err("[%d] id=%d source buffer is NULL", ctx->id,
> > - vb2_src->index);
> > +mtk_v4l2_vdec_err(ctx, "[%d] id=%d source buffer is NULL", ctx-
> >id,
> > + vb2_src->index);
> > return;
> > }
> >
> > -mtk_v4l2_debug(3, "[%d] Bitstream VA=%p DMA=%pad Size=%zx vb=%p",
> > - ctx->id, bs_src->va, &bs_src->dma_addr, bs_src->size,
> vb2_src);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d] Bitstream VA=%p DMA=%pad Size=%zx
> vb=%p",
> > + ctx->id, bs_src->va, &bs_src->dma_addr, bs_src->size, vb2_src);
> > /* Apply request controls. */
> > src_buf_req = vb2_src->req_obj.req;
> > if (src_buf_req)
> > v4l2_ctrl_request_setup(src_buf_req, &ctx->ctrl_hdl);
> > else
> > -mtk_v4l2_err("vb2 buffer media request is NULL");
> > +mtk_v4l2_vdec_err(ctx, "vb2 buffer media request is NULL");
> >
> > ret = vdec_if_decode(ctx, bs_src, NULL, &res_chg);
> > if (ret && ret != -EAGAIN) {
> > -mtk_v4l2_err(" <===[%d], src_buf[%d] sz=0x%zx pts=%llu
> vdec_if_decode() ret=%d res_chg=%d===>",
> > - ctx->id, vb2_src->index, bs_src->size,
> > - vb2_src->timestamp, ret, res_chg);
> > +mtk_v4l2_vdec_err(ctx,
> > + "[%d] decode src_buf[%d] sz=0x%zx pts=%llu ret=%d res_chg=%d",
> > + ctx->id, vb2_src->index, bs_src->size,
> > + vb2_src->timestamp, ret, res_chg);
> > if (ret == -EIO) {
> > mutex_lock(&ctx->lock);
> > dec_buf_src->error = true;
> > @@ -363,7 +365,8 @@ static void
> vb2ops_vdec_stateless_buf_queue(struct vb2_buffer *vb)
> > struct mtk_vcodec_ctx *ctx = vb2_get_drv_priv(vb->vb2_queue);
> > struct vb2_v4l2_buffer *vb2_v4l2 = to_vb2_v4l2_buffer(vb);
> >
> > -mtk_v4l2_debug(3, "[%d] (%d) id=%d, vb=%p", ctx->id, vb-
> >vb2_queue->type, vb->index, vb);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d] (%d) id=%d, vb=%p", ctx->id, vb-
> >vb2_queue->type,
> > + vb->index, vb);
> >
> > mutex_lock(&ctx->lock);
> > v4l2_m2m_buf_queue(ctx->m2m_ctx, vb2_v4l2);
> > @@ -374,9 +377,9 @@ static void
> vb2ops_vdec_stateless_buf_queue(struct vb2_buffer *vb)
> > /* If an OUTPUT buffer, we may need to update the state */
> > if (ctx->state == MTK_STATE_INIT) {
> > ctx->state = MTK_STATE_HEADER;
> > -mtk_v4l2_debug(1, "Init driver from init to header.");
> > +mtk_v4l2_vdec_dbg(1, ctx, "Init driver from init to header.");
> > } else {
> > -mtk_v4l2_debug(3, "[%d] already init driver %d", ctx->id, ctx-
> >state);
> > +mtk_v4l2_vdec_dbg(3, ctx, "[%d] already init driver %d", ctx->id,
> ctx->state);
> > }
> > }
> >
> > @@ -393,7 +396,7 @@ static int mtk_vcodec_dec_ctrls_setup(struct
> mtk_vcodec_ctx *ctx)
> >
> > v4l2_ctrl_handler_init(&ctx->ctrl_hdl, NUM_CTRLS);
> > if (ctx->ctrl_hdl.error) {
> > -mtk_v4l2_err("v4l2_ctrl_handler_init failed\n");
> > +mtk_v4l2_vdec_err(ctx, "v4l2_ctrl_handler_init failed\n");
> > return ctx->ctrl_hdl.error;
> > }
> >
> > @@ -402,7 +405,8 @@ static int mtk_vcodec_dec_ctrls_setup(struct
> mtk_vcodec_ctx *ctx)
> >
> > v4l2_ctrl_new_custom(&ctx->ctrl_hdl, &cfg, NULL);
> > if (ctx->ctrl_hdl.error) {
> > -mtk_v4l2_err("Adding control %d failed %d", i, ctx-
> >ctrl_hdl.error);
> > +mtk_v4l2_vdec_err(ctx, "Adding control %d failed %d", i,
> > + ctx->ctrl_hdl.error);
> > return ctx->ctrl_hdl.error;
> > }
> > }
> > @@ -421,11 +425,11 @@ static int fops_media_request_validate(struct
> media_request *mreq)
> > /* We expect exactly one buffer with the request */
> > break;
> > case 0:
> > -mtk_v4l2_debug(1, "No buffer provided with the request");
> > +pr_debug("[MTK VCODEC] No buffer provided with the request");
> >
> I suggest following the same format as the macro, "<devname>:
> [MTK_V4L2][ERROR]", you can probably have a macro for that
> formatting. This
> would ensure consitency for all the trace without context. Some of
> the trace
> don't even name anything MTK/VCODEC, like av1_error: prefix. I'd like
> to see
> these fixed.
>
> pr_debug(MTK_DBG_STR "No buffer provided with...");
>
> Or add ...no_ctx() debug macro, prepending the string ? This would be
> up to your
> preference.
>
> regards,
> Nicolas
>
For pr_debug and pr_err only be used for several functions. Prefer to
add two macro for vcodec and v4l2 debug.

#define MTK_DBG_VCODEC_STR "[MTK_VCODEC]"
#define MTK_DBG_V4L2_STR "[MTK_V4L2]"

Best Regards,
Yunfei Dong


> >
> > /**
> > diff --git a/drivers/media/platform/mediatek/vcodec/vdec_vpu_if.c
> b/drivers/media/platform/mediatek/vcodec/vdec_vpu_if.c
> > index ab15ee6e2005..d82391411ba1 100644
> > --- a/drivers/media/platform/mediatek/vcodec/vdec_vpu_if.c
> > +++ b/drivers/media/platform/mediatek/vcodec/vdec_vpu_if.c
> > @@ -91,7 +91,7 @@ static void vpu_dec_ipi_handler(void *data,
> unsigned int len, void *priv)
> > (unsigned long)msg->ap_inst_addr;
> >
> > if (!vpu) {
> > -mtk_v4l2_err("ap_inst_addr is NULL, did the SCP hang or crash?");
> > +mtk_v4l2_vdec_err(vpu->ctx, "ap_inst_addr is NULL, did the SCP
> hang or crash?");
> > return;
> > }
> >
>
>