[media] marvell-ccic: refine mcam_set_contig_buffer function
authorLibin Yang <lbyang@marvell.com>
Wed, 3 Jul 2013 04:56:01 +0000 (01:56 -0300)
committerMauro Carvalho Chehab <m.chehab@samsung.com>
Fri, 26 Jul 2013 16:24:53 +0000 (13:24 -0300)
This patch refines mcam_set_contig_buffer() in mcam core.
It can remove redundant code line and enhance readability.

Signed-off-by: Albert Wang <twang13@marvell.com>
Signed-off-by: Libin Yang <lbyang@marvell.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
drivers/media/platform/marvell-ccic/mcam-core.c

index 56d489b..b0f7e23 100644 (file)
@@ -481,22 +481,21 @@ static void mcam_set_contig_buffer(struct mcam_camera *cam, int frame)
         */
        if (list_empty(&cam->buffers)) {
                buf = cam->vb_bufs[frame ^ 0x1];
-               cam->vb_bufs[frame] = buf;
-               mcam_reg_write(cam, frame == 0 ? REG_Y0BAR : REG_Y1BAR,
-                               vb2_dma_contig_plane_dma_addr(&buf->vb_buf, 0));
                set_bit(CF_SINGLE_BUFFER, &cam->flags);
                cam->frame_state.singles++;
-               return;
+       } else {
+               /*
+                * OK, we have a buffer we can use.
+                */
+               buf = list_first_entry(&cam->buffers, struct mcam_vb_buffer,
+                                       queue);
+               list_del_init(&buf->queue);
+               clear_bit(CF_SINGLE_BUFFER, &cam->flags);
        }
-       /*
-        * OK, we have a buffer we can use.
-        */
-       buf = list_first_entry(&cam->buffers, struct mcam_vb_buffer, queue);
-       list_del_init(&buf->queue);
+
+       cam->vb_bufs[frame] = buf;
        mcam_reg_write(cam, frame == 0 ? REG_Y0BAR : REG_Y1BAR,
                        vb2_dma_contig_plane_dma_addr(&buf->vb_buf, 0));
-       cam->vb_bufs[frame] = buf;
-       clear_bit(CF_SINGLE_BUFFER, &cam->flags);
 }
 
 /*