Skip to content

Commit

Permalink
[media] soc_camera: Use soc_camera_device::bytesperline to compute li…
Browse files Browse the repository at this point in the history
…ne sizes

Instead of computing the line sizes, use the previously negotiated
soc_camera_device::bytesperline value.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Laurent Pinchart authored and Mauro Carvalho Chehab committed May 15, 2012
1 parent 2b61d46 commit 1c0f95e
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 8 deletions.
7 changes: 2 additions & 5 deletions drivers/media/video/mx3_camera.c
Original file line number Diff line number Diff line change
Expand Up @@ -265,13 +265,10 @@ static void mx3_videobuf_queue(struct vb2_buffer *vb)
struct idmac_channel *ichan = mx3_cam->idmac_channel[0];
struct idmac_video_param *video = &ichan->params.video;
const struct soc_mbus_pixelfmt *host_fmt = icd->current_fmt->host_fmt;
int bytes_per_line = soc_mbus_bytes_per_line(icd->user_width, host_fmt);
unsigned long flags;
dma_cookie_t cookie;
size_t new_size;

BUG_ON(bytes_per_line <= 0);

new_size = icd->sizeimage;

if (vb2_plane_size(vb, 0) < new_size) {
Expand Down Expand Up @@ -312,9 +309,9 @@ static void mx3_videobuf_queue(struct vb2_buffer *vb)
* horizontal parameters in this case are expressed in bytes,
* not in pixels.
*/
video->out_width = bytes_per_line;
video->out_width = icd->bytesperline;
video->out_height = icd->user_height;
video->out_stride = bytes_per_line;
video->out_stride = icd->bytesperline;
} else {
/*
* For IPU known formats the pixel unit will be managed
Expand Down
4 changes: 1 addition & 3 deletions drivers/media/video/sh_mobile_ceu_camera.c
Original file line number Diff line number Diff line change
Expand Up @@ -337,9 +337,7 @@ static int sh_mobile_ceu_capture(struct sh_mobile_ceu_dev *pcdev)
if (planar)
phys_addr_bottom = phys_addr_top + icd->user_width;
else
phys_addr_bottom = phys_addr_top +
soc_mbus_bytes_per_line(icd->user_width,
icd->current_fmt->host_fmt);
phys_addr_bottom = phys_addr_top + icd->bytesperline;
ceu_write(pcdev, bottom1, phys_addr_bottom);
}

Expand Down

0 comments on commit 1c0f95e

Please sign in to comment.