diff options
author | Anatolij Gustschin <agust@denx.de> | 2011-01-31 07:58:01 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-03-21 19:32:14 -0400 |
commit | 44facdc8c43a8b5172d6cbe995845c9889561aa0 (patch) | |
tree | 8b6aa011446d892cc9f693f9f13e300af9415eb4 /drivers | |
parent | 5bccd60852fc0a5ccc1980c10266896df99b8bda (diff) |
[media] V4L: mx3_camera: correct 'sizeimage' value reporting
The 'pix->width' field may be updated in mx3_camera_set_fmt() to
fulfill the IPU stride line alignment requirements. If this update
takes place, the 'fmt.pix.sizeimage' field in the struct v4l2_format
stucture returned by VIDIOC_S_FMT is wrong. We need to update the
'pix->sizeimage' field in the mx3_camera_set_fmt() function to fix
this issue.
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/media/video/mx3_camera.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/media/video/mx3_camera.c b/drivers/media/video/mx3_camera.c index b9cb4a436959..1cfff4132a0b 100644 --- a/drivers/media/video/mx3_camera.c +++ b/drivers/media/video/mx3_camera.c | |||
@@ -918,6 +918,12 @@ static int mx3_camera_set_fmt(struct soc_camera_device *icd, | |||
918 | pix->colorspace = mf.colorspace; | 918 | pix->colorspace = mf.colorspace; |
919 | icd->current_fmt = xlate; | 919 | icd->current_fmt = xlate; |
920 | 920 | ||
921 | pix->bytesperline = soc_mbus_bytes_per_line(pix->width, | ||
922 | xlate->host_fmt); | ||
923 | if (pix->bytesperline < 0) | ||
924 | return pix->bytesperline; | ||
925 | pix->sizeimage = pix->height * pix->bytesperline; | ||
926 | |||
921 | dev_dbg(icd->dev.parent, "Sensor set %dx%d\n", pix->width, pix->height); | 927 | dev_dbg(icd->dev.parent, "Sensor set %dx%d\n", pix->width, pix->height); |
922 | 928 | ||
923 | return ret; | 929 | return ret; |