aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm2708/patches-3.10/0179-V4L2-Increase-threshold-for-switching-between-video-.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm2708/patches-3.10/0179-V4L2-Increase-threshold-for-switching-between-video-.patch')
-rw-r--r--target/linux/brcm2708/patches-3.10/0179-V4L2-Increase-threshold-for-switching-between-video-.patch44
1 files changed, 44 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-3.10/0179-V4L2-Increase-threshold-for-switching-between-video-.patch b/target/linux/brcm2708/patches-3.10/0179-V4L2-Increase-threshold-for-switching-between-video-.patch
new file mode 100644
index 0000000000..a48473085e
--- /dev/null
+++ b/target/linux/brcm2708/patches-3.10/0179-V4L2-Increase-threshold-for-switching-between-video-.patch
@@ -0,0 +1,44 @@
+From 94172081d9bc1f358d799fcef2b6f07615bcca60 Mon Sep 17 00:00:00 2001
+From: Dave Stevenson <dsteve@broadcom.com>
+Date: Fri, 14 Mar 2014 17:03:45 +0000
+Subject: [PATCH 179/196] 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>
+---
+ drivers/media/platform/bcm2835/bcm2835-camera.c | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+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];
+--
+1.9.1
+