45 lines
1.6 KiB
Diff
45 lines
1.6 KiB
Diff
|
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
|
||
|
|