Re: [PATCH 05/15] media: blackfin: bfin_capture: improve queue_setup() callback

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2014-12-20 18:47 GMT+08:00 Lad, Prabhakar <prabhakar.csengg@xxxxxxxxx>:
> this patch improves the queue_setup() callback.
>
> Signed-off-by: Lad, Prabhakar <prabhakar.csengg@xxxxxxxxx>
> ---
>  drivers/media/platform/blackfin/bfin_capture.c | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/media/platform/blackfin/bfin_capture.c b/drivers/media/platform/blackfin/bfin_capture.c
> index 8bd94a1..76d42bb 100644
> --- a/drivers/media/platform/blackfin/bfin_capture.c
> +++ b/drivers/media/platform/blackfin/bfin_capture.c
> @@ -44,7 +44,6 @@
>  #include <media/blackfin/ppi.h>
>
>  #define CAPTURE_DRV_NAME        "bfin_capture"
> -#define BCAP_MIN_NUM_BUF        2
>
>  struct bcap_format {
>         char *desc;
> @@ -292,11 +291,14 @@ static int bcap_queue_setup(struct vb2_queue *vq,
>  {
>         struct bcap_device *bcap_dev = vb2_get_drv_priv(vq);
>
> -       if (*nbuffers < BCAP_MIN_NUM_BUF)
> -               *nbuffers = BCAP_MIN_NUM_BUF;
> +       if (fmt && fmt->fmt.pix.sizeimage < bcap_dev->fmt.sizeimage)
> +               return -EINVAL;
> +
> +       if (vq->num_buffers + *nbuffers < 3)
> +               *nbuffers = 3 - vq->num_buffers;

It seems it changes the minimum buffers from 2 to 3?

>
>         *nplanes = 1;
> -       sizes[0] = bcap_dev->fmt.sizeimage;
> +       sizes[0] = fmt ? fmt->fmt.pix.sizeimage : bcap_dev->fmt.sizeimage;
>         alloc_ctxs[0] = bcap_dev->alloc_ctx;
>
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux