On Thu, Feb 02, 2017 at 11:12:41AM -0800, Steve Longerbeam wrote: > Here is the current .queue_setup() op in imx-media-capture.c: > > static int capture_queue_setup(struct vb2_queue *vq, > unsigned int *nbuffers, > unsigned int *nplanes, > unsigned int sizes[], > struct device *alloc_devs[]) > { > struct capture_priv *priv = vb2_get_drv_priv(vq); > struct v4l2_pix_format *pix = &priv->vdev.fmt.fmt.pix; > unsigned int count = *nbuffers; > > if (vq->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) > return -EINVAL; > > if (*nplanes) { > if (*nplanes != 1 || sizes[0] < pix->sizeimage) > return -EINVAL; > count += vq->num_buffers; > } > > while (pix->sizeimage * count > VID_MEM_LIMIT) > count--; That's a weird way of writing: unsigned int max_num = VID_MEM_LIMIT / pix->sizeimage; count = max(count, max_num); -- RMK's Patch system: http://www.armlinux.org.uk/developer/patches/ FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up according to speedtest.net. _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel