You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.6 KiB
42 lines
1.6 KiB
From cd3d0404cf78e7ae0d4f3320c9d900ad88dbd5ed Mon Sep 17 00:00:00 2001
|
|
From: Dave Stevenson <dsteve@broadcom.com>
|
|
Date: Mon, 9 Dec 2013 17:30:09 +0000
|
|
Subject: [PATCH 137/196] V4L2: Improve G_FBUF handling so we pass conformance
|
|
|
|
Return some sane numbers for get framebuffer so that
|
|
we pass conformance.
|
|
|
|
Signed-off-by: Dave Stevenson <dsteve@broadcom.com>
|
|
---
|
|
drivers/media/platform/bcm2835/bcm2835-camera.c | 14 +++++++++++---
|
|
1 file changed, 11 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/drivers/media/platform/bcm2835/bcm2835-camera.c b/drivers/media/platform/bcm2835/bcm2835-camera.c
|
|
index 8c38d03..c8d8742 100644
|
|
--- a/drivers/media/platform/bcm2835/bcm2835-camera.c
|
|
+++ b/drivers/media/platform/bcm2835/bcm2835-camera.c
|
|
@@ -664,10 +664,18 @@ static int vidioc_g_fbuf(struct file *file, void *fh,
|
|
{
|
|
/* The video overlay must stay within the framebuffer and can't be
|
|
positioned independently. */
|
|
+ struct bm2835_mmal_dev *dev = video_drvdata(file);
|
|
+ struct vchiq_mmal_port *preview_port =
|
|
+ &dev->component[MMAL_COMPONENT_CAMERA]->
|
|
+ output[MMAL_CAMERA_PORT_PREVIEW];
|
|
a->flags = V4L2_FBUF_FLAG_OVERLAY;
|
|
-
|
|
- /* todo: v4l2_framebuffer still needs more info filling in
|
|
- * in order to pass the v4l2-compliance test. */
|
|
+ a->fmt.width = preview_port->es.video.width;
|
|
+ a->fmt.height = preview_port->es.video.height;
|
|
+ a->fmt.pixelformat = V4L2_PIX_FMT_YUV420;
|
|
+ a->fmt.bytesperline = (preview_port->es.video.width * 3)>>1;
|
|
+ a->fmt.sizeimage = (preview_port->es.video.width *
|
|
+ preview_port->es.video.height * 3)>>1;
|
|
+ a->fmt.colorspace = V4L2_COLORSPACE_SMPTE170M;
|
|
|
|
return 0;
|
|
}
|
|
--
|
|
1.9.1
|
|
|
|
|