]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
Revert "media: renesas: vsp1: brx: Fix format propagation"
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Wed, 6 May 2026 21:56:50 +0000 (00:56 +0300)
committerHans Verkuil <hverkuil+cisco@kernel.org>
Fri, 29 May 2026 11:32:05 +0000 (13:32 +0200)
This reverts commit 937f3e6b51f1cea079be9ba642665f2bf8bcc31f.

The change to format propagation in the BRx broke configuration of the
DRM pipeline. Revert it to fix the regression.

The original commit was meant to fix a v4l2-compliance failure, with no
known userspace applications being affected beside test tools. Reverting
is the simplest option, a more comprehensive fix can be developed (and
tested more thoroughly) later.

Reported-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Closes: https://lore.kernel.org/linux-media/CA+V-a8t481xuwava0nb7uY9CUPqFWZ_8EP0xrK3BgumP7HDcLg@mail.gmail.com
Fixes: 937f3e6b51f1 ("media: renesas: vsp1: brx: Fix format propagation")
Tested-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> # On RZ/T2H
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Link: https://patch.msgid.link/20260506215650.1897177-3-laurent.pinchart+renesas@ideasonboard.com
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
drivers/media/platform/renesas/vsp1/vsp1_brx.c

index b1a2c68e994462cfcad96a39e294b4357650c29c..9d93cb8b8e82b799090a398a5372e563282c9815 100644 (file)
@@ -156,20 +156,14 @@ static int brx_set_format(struct v4l2_subdev *subdev,
                compose->height = format->height;
        }
 
-       /*
-        * Propagate the format code to all pads, and the whole format to the
-        * source pad.
-        */
+       /* Propagate the format code to all pads. */
        if (fmt->pad == BRX_PAD_SINK(0)) {
                unsigned int i;
 
-               for (i = 0; i < brx->entity.source_pad; ++i) {
+               for (i = 0; i <= brx->entity.source_pad; ++i) {
                        format = v4l2_subdev_state_get_format(state, i);
                        format->code = fmt->format.code;
                }
-
-               format = v4l2_subdev_state_get_format(state, i);
-               *format = fmt->format;
        }
 
 done: