On Thu Apr 24 10:05:33 2025 +0300, Tomi Valkeinen wrote:
> Currently Gen4 VINs are marked as RCAN_GEN3 models. Add a new enum
> value, RCAR_GEN4, and use it for Gen4 VINs. No functional changes in
> this patch.
> 
> 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-1-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-core.c | 2 +-
 drivers/media/platform/renesas/rcar-vin/rcar-dma.c  | 8 ++++----
 drivers/media/platform/renesas/rcar-vin/rcar-vin.h  | 1 +
 3 files changed, 6 insertions(+), 5 deletions(-)

---

diff --git a/drivers/media/platform/renesas/rcar-vin/rcar-core.c 
b/drivers/media/platform/renesas/rcar-vin/rcar-core.c
index cfbc9ec27706..846ae7989b1d 100644
--- a/drivers/media/platform/renesas/rcar-vin/rcar-core.c
+++ b/drivers/media/platform/renesas/rcar-vin/rcar-core.c
@@ -1273,7 +1273,7 @@ static const struct rvin_info rcar_info_r8a77995 = {
 };
 
 static const struct rvin_info rcar_info_gen4 = {
-       .model = RCAR_GEN3,
+       .model = RCAR_GEN4,
        .use_mc = true,
        .use_isp = true,
        .nv12 = true,
diff --git a/drivers/media/platform/renesas/rcar-vin/rcar-dma.c 
b/drivers/media/platform/renesas/rcar-vin/rcar-dma.c
index f7b80e61a987..374396bcf8b9 100644
--- a/drivers/media/platform/renesas/rcar-vin/rcar-dma.c
+++ b/drivers/media/platform/renesas/rcar-vin/rcar-dma.c
@@ -783,7 +783,7 @@ static int rvin_setup(struct rvin_dev *vin)
        }
 
        /* Make sure input interface and input format is valid. */
-       if (vin->info->model == RCAR_GEN3) {
+       if (vin->info->model == RCAR_GEN3 || vin->info->model == RCAR_GEN4) {
                switch (vnmc & VNMC_INF_MASK) {
                case VNMC_INF_YUV8_BT656:
                case VNMC_INF_YUV10_BT656:
@@ -806,7 +806,7 @@ static int rvin_setup(struct rvin_dev *vin)
        }
 
        /* Enable VSYNC Field Toggle mode after one VSYNC input */
-       if (vin->info->model == RCAR_GEN3)
+       if (vin->info->model == RCAR_GEN3 || vin->info->model == RCAR_GEN4)
                dmr2 = VNDMR2_FTEV;
        else
                dmr2 = VNDMR2_FTEV | VNDMR2_VLV(1);
@@ -906,7 +906,7 @@ static int rvin_setup(struct rvin_dev *vin)
                if (input_is_yuv == output_is_yuv)
                        vnmc |= VNMC_BPS;
 
-               if (vin->info->model == RCAR_GEN3) {
+               if (vin->info->model == RCAR_GEN3 || vin->info->model == 
RCAR_GEN4) {
                        /* Select between CSI-2 and parallel input */
                        if (vin->is_csi)
                                vnmc &= ~VNMC_DPINE;
@@ -1287,7 +1287,7 @@ static int rvin_mc_validate_format(struct rvin_dev *vin, 
struct v4l2_subdev *sd,
 
        if (rvin_scaler_needed(vin)) {
                /* Gen3 can't scale NV12 */
-               if (vin->info->model == RCAR_GEN3 &&
+               if ((vin->info->model == RCAR_GEN3 || vin->info->model == 
RCAR_GEN4) &&
                    vin->format.pixelformat == V4L2_PIX_FMT_NV12)
                        return -EPIPE;
 
diff --git a/drivers/media/platform/renesas/rcar-vin/rcar-vin.h 
b/drivers/media/platform/renesas/rcar-vin/rcar-vin.h
index 934474d2334a..83d1b2734c41 100644
--- a/drivers/media/platform/renesas/rcar-vin/rcar-vin.h
+++ b/drivers/media/platform/renesas/rcar-vin/rcar-vin.h
@@ -39,6 +39,7 @@ enum model_id {
        RCAR_M1,
        RCAR_GEN2,
        RCAR_GEN3,
+       RCAR_GEN4,
 };
 
 enum rvin_csi_id {

Reply via email to