参照元

説明

引数

返り値

参考

実装

/**
 * vb2_querybuf() - query video buffer information
 * @q:          videobuf queue
 * @b:          buffer struct passed from userspace to vidioc_querybuf handler
 *              in driver
 *
 * Should be called from vidioc_querybuf ioctl handler in driver.
 * This function will verify the passed v4l2_buffer structure and fill the
 * relevant information for the userspace.
 *
 * The return values from this function are intended to be directly returned
 * from vidioc_querybuf handler in driver.
 */
int vb2_querybuf(struct vb2_queue *q, struct v4l2_buffer *b)
{
        struct vb2_buffer *vb;
        int ret;
        if (b->type != q->type) {
                dprintk(1, "wrong buffer type\n");
                return -EINVAL;
        }
        if (b->index >= q->num_buffers) {
                dprintk(1, "buffer index out of range\n");
                return -EINVAL;
        }
        vb = q->bufs[b->index];
        ret = __verify_planes_array(vb, b);
        return ret ? ret : vb2_core_querybuf(q, b->index, b);
}
EXPORT_SYMBOL(vb2_querybuf);

コメント


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-02-09 (火) 10:24:03