[media] v4l: vsp1: Fix plane stride and size checks
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Fri, 19 Jun 2015 11:51:22 +0000 (08:51 -0300)
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>
Fri, 17 Jul 2015 13:02:48 +0000 (10:02 -0300)
The checks need to be performed on up to two planes, as the third plane,
if present, must have the same stride and size as the second plane.

The code incorrectly performs the checks on at least two planes instead
of at most two planes, fix it.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
drivers/media/platform/vsp1/vsp1_video.c

index 770e08dc03f1e36927e747f3c4c68efa17e597c7..3c124c14ce14f49f57b1c6e044daf755e52587eb 100644 (file)
@@ -245,7 +245,7 @@ static int __vsp1_video_try_format(struct vsp1_video *video,
         * the datasheet, strides not aligned to a multiple of 128 bytes result
         * in image corruption.
         */
-       for (i = 0; i < max(info->planes, 2U); ++i) {
+       for (i = 0; i < min(info->planes, 2U); ++i) {
                unsigned int hsub = i > 0 ? info->hsub : 1;
                unsigned int vsub = i > 0 ? info->vsub : 1;
                unsigned int align = 128;