On Thu Apr 24 10:05:35 2025 +0300, Tomi Valkeinen wrote:
> 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+rene...@ideasonboard.com>
> Reviewed-by: Niklas Söderlund <niklas.soderlund+rene...@ragnatech.se>
> Tested-by: Niklas Söderlund <niklas.soderlund+rene...@ragnatech.se>
> Link: 
> https://lore.kernel.org/r/20250424-rcar-fix-raw-v2-3-f6afca378...@ideasonboard.com
> Signed-off-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
> Signed-off-by: Hans Verkuil <hverk...@xs4all.nl>

Patch committed.

Thanks,
Hans Verkuil

 drivers/media/platform/renesas/rcar-vin/rcar-dma.c | 3 +++
 1 file changed, 3 insertions(+)

---

diff --git a/drivers/media/platform/renesas/rcar-vin/rcar-dma.c 
b/drivers/media/platform/renesas/rcar-vin/rcar-dma.c
index e0464eb49b59..65e41c68e627 100644
--- a/drivers/media/platform/renesas/rcar-vin/rcar-dma.c
+++ b/drivers/media/platform/renesas/rcar-vin/rcar-dma.c
@@ -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:

Reply via email to