*参照元 [#ta5ae316] #backlinks *説明 [#fae26247] -パス: [[linux-4.4.1/drivers/media/usb/uvc/uvc_queue.c]] -FIXME: これは何? --説明 **引数 [#ef6a4320] -struct vb2_queue *vq -- --[[linux-4.4.1/vb2_queue]] -const void *parg -- -unsigned int *nbuffers -- -unsigned int *nplanes -- -unsigned int sizes[] -- -void *alloc_ctxs[] -- **返り値 [#db43720b] -int -- **参考 [#qd74254b] *実装 [#x1fe45dc] static int uvc_queue_setup(struct vb2_queue *vq, const void *parg, unsigned int *nbuffers, unsigned int *nplanes, unsigned int sizes[], void *alloc_ctxs[]) { const struct v4l2_format *fmt = parg; struct uvc_video_queue *queue = vb2_get_drv_priv(vq); struct uvc_streaming *stream = uvc_queue_to_stream(queue); - --[[linux-4.4.1/v4l2_format]] --[[linux-4.4.1/uvc_video_queue]] --[[linux-4.4.1/vb2_get_drv_priv()]] --[[linux-4.4.1/uvc_streaming]] --[[linux-4.4.1/uvc_queue_to_stream()]] /* Make sure the image size is large enough. */ if (fmt && fmt->fmt.pix.sizeimage < stream->ctrl.dwMaxVideoFrameSize) return -EINVAL; *nplanes = 1; sizes[0] = fmt ? fmt->fmt.pix.sizeimage : stream->ctrl.dwMaxVideoFrameSize; return 0; } *コメント [#uf42e90d]