media: renesas: vsp1: Print debug message to diagnose validation failure
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Tue, 18 Jun 2024 18:46:44 +0000 (21:46 +0300)
committerLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Wed, 19 Jun 2024 22:36:46 +0000 (01:36 +0300)
When formats don't match between a subdev and a connected video device,
starting streaming returns an error without giving the user any
indication as to what went wrong. To help debugging pipeline
misconfigurations, add a debug message that indicates the cause of the
failure.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
drivers/media/platform/renesas/vsp1/vsp1_video.c

index 5a9cb0e5640ec599902906f368b9a83a07a44644..28cee0304e77f713bdc3414588056cfb438906f5 100644 (file)
@@ -78,8 +78,14 @@ static int vsp1_video_verify_format(struct vsp1_video *video)
 
        if (video->rwpf->fmtinfo->mbus != fmt.format.code ||
            video->rwpf->format.height != fmt.format.height ||
-           video->rwpf->format.width != fmt.format.width)
-               return -EINVAL;
+           video->rwpf->format.width != fmt.format.width) {
+               dev_dbg(video->vsp1->dev,
+                       "Format mismatch: 0x%04x/%ux%u != 0x%04x/%ux%u\n",
+                       video->rwpf->fmtinfo->mbus, video->rwpf->format.width,
+                       video->rwpf->format.height, fmt.format.code,
+                       fmt.format.width, fmt.format.height);
+               return -EPIPE;
+       }
 
        return 0;
 }