Commit a1a60e7a authored by Laurent Pinchart's avatar Laurent Pinchart Committed by Mauro Carvalho Chehab

media: staging: media: imx: imx7-media-csi: Simplify default format in try_fmt

When trying a format on the video node, if the requested pixel format
isn't supported, fallback to the default with a simpler logic.
Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: default avatarRui Miguel Silva <rmfrfs@gmail.com>
Tested-by: default avatarAlexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
parent 5c42cd9d
......@@ -168,6 +168,7 @@
#define IMX7_CSI_VIDEO_EOF_TIMEOUT 2000
#define IMX7_CSI_DEF_MBUS_CODE MEDIA_BUS_FMT_UYVY8_2X8
#define IMX7_CSI_DEF_PIX_FORMAT V4L2_PIX_FMT_UYVY
#define IMX7_CSI_DEF_PIX_WIDTH 640
#define IMX7_CSI_DEF_PIX_HEIGHT 480
......@@ -806,8 +807,9 @@ static irqreturn_t imx7_csi_irq_handler(int irq, void *data)
#define IMX_BUS_FMTS(fmt...) (const u32[]) {fmt, 0}
/*
* List of supported pixel formats for the subdevs. Keep MEDIA_BUS_FMT_UYVY8_2X8
* first to match IMX7_CSI_DEF_MBUS_CODE.
* List of supported pixel formats for the subdevs. Keep V4L2_PIX_FMT_UYVY and
* MEDIA_BUS_FMT_UYVY8_2X8 first to match IMX7_CSI_DEF_PIX_FORMAT and
* IMX7_CSI_DEF_MBUS_CODE.
*/
static const struct imx7_csi_pixfmt pixel_formats[] = {
/*** YUV formats start here ***/
......@@ -1131,7 +1133,7 @@ __imx7_csi_video_try_fmt(struct v4l2_pix_format *pixfmt,
*/
cc = imx7_csi_find_pixel_format(pixfmt->pixelformat);
if (!cc) {
imx7_csi_enum_pixel_formats(&pixfmt->pixelformat, 0, 0);
pixfmt->pixelformat = IMX7_CSI_DEF_PIX_FORMAT;
cc = imx7_csi_find_pixel_format(pixfmt->pixelformat);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment