]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
media: rcar-vin: Fix RAW8
authorTomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com>
Thu, 24 Apr 2025 07:05:35 +0000 (10:05 +0300)
committerHans Verkuil <hverkuil@xs4all.nl>
Fri, 2 May 2025 08:16:43 +0000 (10:16 +0200)
On Gen4 we need to set VNMC's EXINF to a different value (1) than in
Gen3 (0). Add a define for this, and set the bit for Gen4.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Tested-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Link: https://lore.kernel.org/r/20250424-rcar-fix-raw-v2-3-f6afca378124@ideasonboard.com
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
drivers/media/platform/renesas/rcar-vin/rcar-dma.c

index e0464eb49b599f22cf2bd86f5609929e9afb1290..65e41c68e62738f6e9017c254330a082c155b384 100644 (file)
@@ -94,6 +94,7 @@
 #define VNMC_INF_YUV16         (5 << 16)
 #define VNMC_INF_RGB888                (6 << 16)
 #define VNMC_INF_RGB666                (7 << 16)
+#define VNMC_EXINF_RAW8                (1 << 12) /* Gen4 specific */
 #define VNMC_VUP               (1 << 10)
 #define VNMC_IM_ODD            (0 << 3)
 #define VNMC_IM_ODD_EVEN       (1 << 3)
@@ -771,6 +772,8 @@ static int rvin_setup(struct rvin_dev *vin)
        case MEDIA_BUS_FMT_SRGGB8_1X8:
        case MEDIA_BUS_FMT_Y8_1X8:
                vnmc |= VNMC_INF_RAW8;
+               if (vin->info->model == RCAR_GEN4)
+                       vnmc |= VNMC_EXINF_RAW8;
                break;
        case MEDIA_BUS_FMT_SBGGR10_1X10:
        case MEDIA_BUS_FMT_SGBRG10_1X10: