Re: [PATCH v4 04/11] media: imx8-isi: Reuse mxc_isi_format_enum() in capture format enumeration
From: Frank Li
Date: Tue Sep 29 2026 - 10:23:52 EST
On Tue, Sep 29, 2026 at 04:52:25PM +0800, Guoniu Zhou wrote:
> Simplify mxc_isi_video_enum_fmt() by reusing mxc_isi_format_enum()
> instead of open-coding the same format table traversal.
>
> Signed-off-by: Guoniu Zhou <guoniu.zhou@xxxxxxxxxxx>
> ---
Reviewed-by: Frank Li <Frank.Li@xxxxxxx>
> Changes in v4:
> - New patch
> ---
> .../media/platform/nxp/imx8-isi/imx8-isi-video.c | 30 +++-------------------
> 1 file changed, 3 insertions(+), 27 deletions(-)
>
> diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c b/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c
> index 0d87a1082727..21849af3121b 100644
> --- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c
> +++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c
> @@ -1231,34 +1231,10 @@ static int mxc_isi_video_enum_fmt(struct file *file, void *priv,
> struct v4l2_fmtdesc *f)
> {
> const struct mxc_isi_format_info *fmt;
> - unsigned int index = f->index;
> - unsigned int i;
> -
> - if (f->mbus_code) {
> - /*
> - * If a media bus code is specified, only enumerate formats
> - * compatible with it.
> - */
> - for (i = 0; i < ARRAY_SIZE(mxc_isi_formats); i++) {
> - fmt = &mxc_isi_formats[i];
> - if (fmt->mbus_code != f->mbus_code)
> - continue;
> -
> - if (index == 0)
> - break;
> -
> - index--;
> - }
>
> - if (i == ARRAY_SIZE(mxc_isi_formats))
> - return -EINVAL;
> - } else {
> - /* Otherwise, enumerate all formatS. */
> - if (f->index >= ARRAY_SIZE(mxc_isi_formats))
> - return -EINVAL;
> -
> - fmt = &mxc_isi_formats[f->index];
> - }
> + fmt = mxc_isi_format_enum(f, MXC_ISI_VIDEO_CAP);
> + if (!fmt)
> + return -EINVAL;
>
> f->pixelformat = fmt->fourcc;
> f->flags |= V4L2_FMT_FLAG_CSC_COLORSPACE | V4L2_FMT_FLAG_CSC_YCBCR_ENC
>
> --
> 2.34.1
>
>