drivers/input: eliminate INPUT_COMPAT_TEST macro
[linux-2.6-block.git] / Documentation / video4linux / v4l2-pci-skeleton.c
index 95ae8286009280a568e18a98cd6ecd0d59f1fc36..79af0c0410565f0eaae17b4be4e5185aff3f9ea8 100644 (file)
@@ -163,11 +163,10 @@ static irqreturn_t skeleton_irq(int irq, void *dev_id)
  * minimum number: many DMA engines need a minimum of 2 buffers in the
  * queue and you need to have another available for userspace processing.
  */
-static int queue_setup(struct vb2_queue *vq, const void *parg,
+static int queue_setup(struct vb2_queue *vq,
                       unsigned int *nbuffers, unsigned int *nplanes,
                       unsigned int sizes[], void *alloc_ctxs[])
 {
-       const struct v4l2_format *fmt = parg;
        struct skeleton *skel = vb2_get_drv_priv(vq);
 
        skel->field = skel->format.field;
@@ -183,12 +182,12 @@ static int queue_setup(struct vb2_queue *vq, const void *parg,
 
        if (vq->num_buffers + *nbuffers < 3)
                *nbuffers = 3 - vq->num_buffers;
+       alloc_ctxs[0] = skel->alloc_ctx;
 
-       if (fmt && fmt->fmt.pix.sizeimage < skel->format.sizeimage)
-               return -EINVAL;
+       if (*nplanes)
+               return sizes[0] < skel->format.sizeimage ? -EINVAL : 0;
        *nplanes = 1;
-       sizes[0] = fmt ? fmt->fmt.pix.sizeimage : skel->format.sizeimage;
-       alloc_ctxs[0] = skel->alloc_ctx;
+       sizes[0] = skel->format.sizeimage;
        return 0;
 }
 
@@ -509,7 +508,7 @@ static int skeleton_s_dv_timings(struct file *file, void *_fh,
                return -EINVAL;
 
        /* Return 0 if the new timings are the same as the current timings. */
-       if (v4l2_match_dv_timings(timings, &skel->timings, 0))
+       if (v4l2_match_dv_timings(timings, &skel->timings, 0, false))
                return 0;
 
        /*