commit 3bff11d4d4b8dc28cb9ce81449c989466ba27198
Author: Dave Stevenson <dsteve@broadcom.com>
Date:   Fri Mar 14 17:03:45 2014 +0000

    V4L2: Increase threshold for switching between video & stills
    
    The threshold used to be hard and fast at 1280x720 and failed if
    either width or height exceeded those limits. Now it limits it at
    a pixel count of 1280*720 (ie 921600), so 1024x768 is now considered
    a video mode.
    
    Signed-off-by: Dave Stevenson <dsteve@broadcom.com>

diff --git a/drivers/media/platform/bcm2835/bcm2835-camera.c b/drivers/media/platform/bcm2835/bcm2835-camera.c
index b6880cc..b1eac21 100644
--- a/drivers/media/platform/bcm2835/bcm2835-camera.c
+++ b/drivers/media/platform/bcm2835/bcm2835-camera.c
@@ -42,6 +42,9 @@
 #define MAX_HEIGHT 1944
 #define MIN_BUFFER_SIZE (80*1024)
 
+/* Max number of pixels supported whilst still being considered
+ * a video mode by the GPU.
+ */
 #define MAX_VIDEO_MODE_WIDTH 1280
 #define MAX_VIDEO_MODE_HEIGHT 720
 
@@ -893,8 +896,8 @@ static int mmal_setup_components(struct bm2835_mmal_dev *dev,
 	switch (mfmt->mmal_component) {
 	case MMAL_COMPONENT_CAMERA:
 		/* Make a further decision on port based on resolution */
-		if (f->fmt.pix.width <= MAX_VIDEO_MODE_WIDTH
-		    && f->fmt.pix.height <= MAX_VIDEO_MODE_HEIGHT)
+		if ((f->fmt.pix.width*f->fmt.pix.height) <=
+			(MAX_VIDEO_MODE_WIDTH * MAX_VIDEO_MODE_HEIGHT))
 			camera_port = port =
 			    &dev->component[MMAL_COMPONENT_CAMERA]->
 			    output[MMAL_CAMERA_PORT_VIDEO];
