summaryrefslogtreecommitdiff
path: root/drivers/staging/media/imx/imx7-media-csi.c
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2022-05-10 03:06:45 +0100
committerMauro Carvalho Chehab <mchehab@kernel.org>2022-07-08 18:03:04 +0100
commit5c42cd9dfa7d39ded3a2095ac4208b84d14298bd (patch)
tree4c9d1c8d29c4fee89163982ad040dbf9afbe1f67 /drivers/staging/media/imx/imx7-media-csi.c
parent3ee396ed91c7d4ae7fbc9a391525c2e610014295 (diff)
media: staging: media: imx: imx7-media-csi: Inline imx7_csi_init_mbus_fmt()
Inline the imx7_csi_init_mbus_fmt() function in its only caller. This allows simplifying the code. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Alexander Stein <alexander.stein@ew.tq-group.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Diffstat (limited to 'drivers/staging/media/imx/imx7-media-csi.c')
-rw-r--r--drivers/staging/media/imx/imx7-media-csi.c54
1 files changed, 15 insertions, 39 deletions
diff --git a/drivers/staging/media/imx/imx7-media-csi.c b/drivers/staging/media/imx/imx7-media-csi.c
index e564686798f0..19aa8724f6c1 100644
--- a/drivers/staging/media/imx/imx7-media-csi.c
+++ b/drivers/staging/media/imx/imx7-media-csi.c
@@ -1023,39 +1023,6 @@ static int imx7_csi_enum_mbus_formats(u32 *code, u32 index)
return -EINVAL;
}
-static int imx7_csi_init_mbus_fmt(struct v4l2_mbus_framefmt *mbus,
- u32 width, u32 height, u32 code, u32 field,
- const struct imx7_csi_pixfmt **cc)
-{
- const struct imx7_csi_pixfmt *lcc;
-
- mbus->width = width;
- mbus->height = height;
- mbus->field = field;
-
- if (code == 0)
- code = IMX7_CSI_DEF_MBUS_CODE;
-
- lcc = imx7_csi_find_mbus_format(code);
- if (!lcc)
- return -EINVAL;
-
- mbus->code = code;
-
- mbus->colorspace = V4L2_COLORSPACE_SRGB;
- mbus->xfer_func = V4L2_MAP_XFER_FUNC_DEFAULT(mbus->colorspace);
- mbus->ycbcr_enc = V4L2_MAP_YCBCR_ENC_DEFAULT(mbus->colorspace);
- mbus->quantization =
- V4L2_MAP_QUANTIZATION_DEFAULT(!lcc->yuv,
- mbus->colorspace,
- mbus->ycbcr_enc);
-
- if (cc)
- *cc = lcc;
-
- return 0;
-}
-
static int imx7_csi_mbus_fmt_to_pix_fmt(struct v4l2_pix_format *pix,
const struct v4l2_mbus_framefmt *mbus,
const struct imx7_csi_pixfmt *cc)
@@ -1739,18 +1706,27 @@ static int imx7_csi_init_cfg(struct v4l2_subdev *sd,
const enum v4l2_subdev_format_whence which =
sd_state ? V4L2_SUBDEV_FORMAT_TRY : V4L2_SUBDEV_FORMAT_ACTIVE;
struct imx7_csi *csi = v4l2_get_subdevdata(sd);
- int ret;
+ const struct imx7_csi_pixfmt *cc;
int i;
+ cc = imx7_csi_find_mbus_format(IMX7_CSI_DEF_MBUS_CODE);
+
for (i = 0; i < IMX7_CSI_PADS_NUM; i++) {
struct v4l2_mbus_framefmt *mf =
imx7_csi_get_format(csi, sd_state, i, which);
- ret = imx7_csi_init_mbus_fmt(mf, IMX7_CSI_DEF_PIX_WIDTH,
- IMX7_CSI_DEF_PIX_HEIGHT, 0,
- V4L2_FIELD_NONE, &csi->cc[i]);
- if (ret < 0)
- return ret;
+ mf->code = IMX7_CSI_DEF_MBUS_CODE;
+ mf->width = IMX7_CSI_DEF_PIX_WIDTH;
+ mf->height = IMX7_CSI_DEF_PIX_HEIGHT;
+ mf->field = V4L2_FIELD_NONE;
+
+ mf->colorspace = V4L2_COLORSPACE_SRGB;
+ mf->xfer_func = V4L2_MAP_XFER_FUNC_DEFAULT(mf->colorspace);
+ mf->ycbcr_enc = V4L2_MAP_YCBCR_ENC_DEFAULT(mf->colorspace);
+ mf->quantization = V4L2_MAP_QUANTIZATION_DEFAULT(!cc->yuv,
+ mf->colorspace, mf->ycbcr_enc);
+
+ csi->cc[i] = cc;
}
return 0;