]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
media: rzg2l-cru: Use MIPI CSI-2 data types for ICnMC_INF definitions
authorLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Fri, 18 Oct 2024 13:34:31 +0000 (14:34 +0100)
committerHans Verkuil <hverkuil@xs4all.nl>
Tue, 22 Oct 2024 09:31:27 +0000 (11:31 +0200)
The INF field in the ICnMC register accepts data type codes as specified
in the MIPI CSI-2 v2.1 specification. This patch introduces the
`ICnMC_INF()` macro to use the MIPI CSI-2 data types, which are available
in the `media/mipi-csi2.h` header.

Suggested-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Link: https://lore.kernel.org/r/20241018133446.223516-9-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
drivers/media/platform/renesas/rzg2l-cru/rzg2l-video.c

index 9ab7ef33c9da037bc3877dd152e9a3b681e396cc..de88c0fab961ef42247615c477151cec15de55ed 100644 (file)
@@ -15,6 +15,7 @@
 #include <linux/delay.h>
 #include <linux/pm_runtime.h>
 
+#include <media/mipi-csi2.h>
 #include <media/v4l2-ioctl.h>
 #include <media/videobuf2-dma-contig.h>
 
@@ -77,8 +78,7 @@
 /* CRU Image Processing Main Control Register */
 #define ICnMC                          0x208
 #define ICnMC_CSCTHR                   BIT(5)
-#define ICnMC_INF_YUV8_422             (0x1e << 16)
-#define ICnMC_INF_USER                 (0x30 << 16)
+#define ICnMC_INF(x)                   ((x) << 16)
 #define ICnMC_VCSEL(x)                 ((x) << 22)
 #define ICnMC_INF_MASK                 GENMASK(21, 16)
 
@@ -307,12 +307,12 @@ static void rzg2l_cru_csi2_setup(struct rzg2l_cru_dev *cru, bool *input_is_yuv,
 
        switch (ip_sd_fmt->code) {
        case MEDIA_BUS_FMT_UYVY8_1X16:
-               icnmc = ICnMC_INF_YUV8_422;
+               icnmc = ICnMC_INF(MIPI_CSI2_DT_YUV422_8B);
                *input_is_yuv = true;
                break;
        default:
                *input_is_yuv = false;
-               icnmc = ICnMC_INF_USER;
+               icnmc = ICnMC_INF(MIPI_CSI2_DT_USER_DEFINED(0));
                break;
        }