All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexandre Courbot <acourbot@chromium.org>
To: Tiffany Lin <tiffany.lin@mediatek.com>
Cc: Andrew-CT Chen <andrew-ct.chen@mediatek.com>,
	Rui Wang <gtk_ruiwang@mediatek.com>,
	Yunfei Dong <yunfei.dong@mediatek.com>,
	Pi-Hsun Shih <pihsun@chromium.org>,
	Maoguang Meng <maoguang.meng@mediatek.com>,
	Linux Media Mailing List <linux-media@vger.kernel.org>,
	"moderated list:ARM/Mediatek SoC support" 
	<linux-mediatek@lists.infradead.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 07/10] media: mtk-vcodec: venc: remove redundant code
Date: Mon, 22 Jun 2020 22:10:00 +0900	[thread overview]
Message-ID: <CAPBb6MUiGtbBhfEoCVeTkQe1XrDea7wRUkybxtqQEThtQmJTwQ@mail.gmail.com> (raw)
In-Reply-To: <1592549952.23952.3.camel@mtksdaap41>

On Fri, Jun 19, 2020 at 3:59 PM Tiffany Lin <tiffany.lin@mediatek.com> wrote:
>
> On Wed, 2020-05-20 at 17:27 +0900, Alexandre Courbot wrote:
> > vidioc_try_fmt() does clamp height and width when called on the OUTPUT
> > queue, so clamping them prior to calling this function is redundant. Set
> > the queue's parameters after calling vidioc_try_fmt() so we can use the
> > values it computed.
> >
>
> vidioc_try_fmt clamps height and width only when f->type ==
> V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE
>
> Does this cleanup pass v4l2 compliance test?

It doesn't result in more tests failing at least. :) But although I
cannot test with a pristine upstream version, it seems like some tests
are not passing to begin with. If you have different results with a
true upstream I would like to hear about it. Otherwise I am willing to
help with getting all the tests in the green.

Regarding this particular patch, you are right that we may end up
writing an unclamped size in q_data. It's probably better to drop it
for now.

> I recall compliance test will try different fmt and make sure driver
> response enough information?
>
>
> > Signed-off-by: Alexandre Courbot <acourbot@chromium.org>
> > ---
> >  .../media/platform/mtk-vcodec/mtk_vcodec_enc.c   | 16 ++++------------
> >  1 file changed, 4 insertions(+), 12 deletions(-)
> >
> > diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c
> > index 05743a745a11..f0af78f112db 100644
> > --- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c
> > +++ b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c
> > @@ -449,7 +449,6 @@ static int vidioc_venc_s_fmt_out(struct file *file, void *priv,
> >       struct mtk_q_data *q_data;
> >       int ret, i;
> >       const struct mtk_video_fmt *fmt;
> > -     struct v4l2_pix_format_mplane *pix_fmt_mp = &f->fmt.pix_mp;
> >
> >       vq = v4l2_m2m_get_vq(ctx->m2m_ctx, f->type);
> >       if (!vq) {
> > @@ -474,20 +473,13 @@ static int vidioc_venc_s_fmt_out(struct file *file, void *priv,
> >               f->fmt.pix.pixelformat = fmt->fourcc;
> >       }
> >
> > -     pix_fmt_mp->height = clamp(pix_fmt_mp->height,
> > -                             MTK_VENC_MIN_H,
> > -                             MTK_VENC_MAX_H);
> > -     pix_fmt_mp->width = clamp(pix_fmt_mp->width,
> > -                             MTK_VENC_MIN_W,
> > -                             MTK_VENC_MAX_W);
> > -
> > -     q_data->visible_width = f->fmt.pix_mp.width;
> > -     q_data->visible_height = f->fmt.pix_mp.height;
> > -     q_data->fmt = fmt;
> > -     ret = vidioc_try_fmt(f, q_data->fmt);
> > +     ret = vidioc_try_fmt(f, fmt);
> >       if (ret)
> >               return ret;
> >
> > +     q_data->fmt = fmt;
> > +     q_data->visible_width = f->fmt.pix_mp.width;
> > +     q_data->visible_height = f->fmt.pix_mp.height;
> >       q_data->coded_width = f->fmt.pix_mp.width;
> >       q_data->coded_height = f->fmt.pix_mp.height;
> >
>

  reply	other threads:[~2020-06-22 13:12 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-20  8:27 [PATCH 00/10] media: mtk-vcodec: venc: support for MT8183 Alexandre Courbot
2020-05-20  8:27 ` Alexandre Courbot
2020-05-20  8:27 ` [PATCH 01/10] media: mtk-vcodec: abstract firmware interface Alexandre Courbot
2020-05-20  8:27   ` Alexandre Courbot
2020-06-08  9:29   ` Tiffany Lin
2020-06-08  9:29     ` Tiffany Lin
2020-06-08 10:16   ` Tiffany Lin
2020-06-08 10:16     ` Tiffany Lin
2020-06-08 10:41     ` Tiffany Lin
2020-06-08 10:41       ` Tiffany Lin
2020-05-20  8:27 ` [PATCH 02/10] media: mtk-vcodec: add SCP firmware ops Alexandre Courbot
2020-05-20  8:27   ` Alexandre Courbot
2020-06-08 10:47   ` Tiffany Lin
2020-06-08 10:47     ` Tiffany Lin
2020-06-16 13:17     ` Alexandre Courbot
2020-06-16 13:17       ` Alexandre Courbot
2020-06-24  7:56       ` Tiffany Lin
2020-06-24  7:56         ` Tiffany Lin
2020-05-20  8:27 ` [PATCH 03/10] media: mtk-vcodec: venc: support SCP firmware Alexandre Courbot
2020-05-20  8:27   ` Alexandre Courbot
2020-06-10  7:22   ` Tiffany Lin
2020-06-10  7:22     ` Tiffany Lin
2020-05-20  8:27 ` [PATCH 04/10] media: mtk-vcodec: venc: handle firmware version field Alexandre Courbot
2020-05-20  8:27   ` Alexandre Courbot
2020-06-16  9:04   ` Tiffany Lin
2020-06-16  9:04     ` Tiffany Lin
2020-05-20  8:27 ` [PATCH 05/10] media: mtk-vcodec: venc: specify bitrate range per-chip Alexandre Courbot
2020-05-20  8:27   ` Alexandre Courbot
2020-06-16  9:06   ` Tiffany Lin
2020-06-16  9:06     ` Tiffany Lin
2020-05-20  8:27 ` [PATCH 06/10] media: mtk-vcodec: venc: specify supported formats per-chip Alexandre Courbot
2020-05-20  8:27   ` Alexandre Courbot
2020-06-19  7:26   ` Tiffany Lin
2020-06-19  7:26     ` Tiffany Lin
2020-06-22 12:44     ` Alexandre Courbot
2020-06-23  1:28       ` Tiffany Lin
2020-06-26  4:54         ` Alexandre Courbot
2020-06-26  4:54           ` Alexandre Courbot
2020-05-20  8:27 ` [PATCH 07/10] media: mtk-vcodec: venc: remove redundant code Alexandre Courbot
2020-05-20  8:27   ` Alexandre Courbot
2020-06-19  6:59   ` Tiffany Lin
2020-06-19  6:59     ` Tiffany Lin
2020-06-22 13:10     ` Alexandre Courbot [this message]
2020-06-23  1:37       ` Tiffany Lin
2020-05-20  8:27 ` [PATCH 08/10] media: mtk-vcodec: add support for MT8183 encoder Alexandre Courbot
2020-05-20  8:27   ` Alexandre Courbot
2020-06-19  7:12   ` Tiffany Lin
2020-06-19  7:12     ` Tiffany Lin
2020-05-20  8:27 ` [PATCH 09/10] media: dt-bindings: mtk-vcodec: specify SCP node Alexandre Courbot
2020-05-20  8:27   ` Alexandre Courbot
2020-06-19  7:13   ` Tiffany Lin
2020-06-19  7:13     ` Tiffany Lin
2020-05-20  8:27 ` [PATCH 10/10] media: dt-bindings: mtk-vcodec: document mediatek,mt8183-vcodec-enc Alexandre Courbot
2020-05-20  8:27   ` [PATCH 10/10] media: dt-bindings: mtk-vcodec: document mediatek, mt8183-vcodec-enc Alexandre Courbot
2020-07-26 14:33 ` [PATCH 00/10] media: mtk-vcodec: venc: support for MT8183 Ezequiel Garcia
2020-07-26 14:33   ` Ezequiel Garcia
2020-07-27  9:06   ` Alexandre Courbot
2020-07-27  9:06     ` Alexandre Courbot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAPBb6MUiGtbBhfEoCVeTkQe1XrDea7wRUkybxtqQEThtQmJTwQ@mail.gmail.com \
    --to=acourbot@chromium.org \
    --cc=andrew-ct.chen@mediatek.com \
    --cc=gtk_ruiwang@mediatek.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=maoguang.meng@mediatek.com \
    --cc=pihsun@chromium.org \
    --cc=tiffany.lin@mediatek.com \
    --cc=yunfei.dong@mediatek.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.