Lines Matching defs:vbuf
97 struct virtio_gpu_vbuffer *vbuf;
99 vbuf = kmem_cache_zalloc(vgdev->vbufs, GFP_KERNEL);
100 if (!vbuf)
104 vbuf->buf = (void *)vbuf + sizeof(*vbuf);
105 vbuf->size = size;
107 vbuf->resp_cb = resp_cb;
108 vbuf->resp_size = resp_size;
110 vbuf->resp_buf = (void *)vbuf->buf + size;
112 vbuf->resp_buf = resp_buf;
113 BUG_ON(!vbuf->resp_buf);
114 return vbuf;
121 struct virtio_gpu_vbuffer *vbuf;
123 vbuf = virtio_gpu_get_vbuf(vgdev, size,
126 if (IS_ERR(vbuf)) {
128 return ERR_CAST(vbuf);
130 *vbuffer_p = vbuf;
131 return vbuf->buf;
138 struct virtio_gpu_vbuffer *vbuf;
140 vbuf = virtio_gpu_get_vbuf
143 if (IS_ERR(vbuf)) {
145 return ERR_CAST(vbuf);
147 *vbuffer_p = vbuf;
148 return (struct virtio_gpu_update_cursor *)vbuf->buf;
157 struct virtio_gpu_vbuffer *vbuf;
159 vbuf = virtio_gpu_get_vbuf(vgdev, cmd_size,
161 if (IS_ERR(vbuf)) {
163 return ERR_CAST(vbuf);
165 *vbuffer_p = vbuf;
166 return (struct virtio_gpu_command *)vbuf->buf;
170 struct virtio_gpu_vbuffer *vbuf)
172 if (vbuf->resp_size > MAX_INLINE_RESP_SIZE)
173 kfree(vbuf->resp_buf);
174 kvfree(vbuf->data_buf);
175 kmem_cache_free(vgdev->vbufs, vbuf);
180 struct virtio_gpu_vbuffer *vbuf;
184 while ((vbuf = virtqueue_get_buf(vq, &len))) {
185 list_add_tail(&vbuf->list, reclaim_list);
316 struct virtio_gpu_vbuffer *vbuf,
330 sg_init_one(&vcmd, vbuf->buf, vbuf->size);
339 if (vbuf->resp_size) {
340 sg_init_one(&vresp, vbuf->resp_buf, vbuf->resp_size);
346 ret = virtqueue_add_sgs(vq, sgs, outcnt, incnt, vbuf, GFP_ATOMIC);
354 (struct virtio_gpu_ctrl_hdr *)vbuf->buf);
362 struct virtio_gpu_vbuffer *vbuf,
372 if (vbuf->data_size) {
373 if (is_vmalloc_addr(vbuf->data_buf)) {
374 sgt = vmalloc_to_sgt(vbuf->data_buf, vbuf->data_size,
380 sg_init_one(&sg, vbuf->data_buf, vbuf->data_size);
405 if (vbuf->objs) {
406 virtio_gpu_array_add_fence(vbuf->objs, &fence->f);
407 virtio_gpu_array_unlock_resv(vbuf->objs);
410 notify = virtio_gpu_queue_ctrl_buffer_locked(vgdev, vbuf, vout);
441 struct virtio_gpu_vbuffer *vbuf)
443 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, NULL, NULL);
447 struct virtio_gpu_vbuffer *vbuf)
458 sg_init_one(&ccmd, vbuf->buf, vbuf->size);
464 ret = virtqueue_add_sgs(vq, sgs, outcnt, 0, vbuf, GFP_ATOMIC);
472 (struct virtio_gpu_ctrl_hdr *)vbuf->buf);
495 struct virtio_gpu_vbuffer *vbuf;
497 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
499 vbuf->objs = objs;
507 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence);
515 struct virtio_gpu_vbuffer *vbuf;
517 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
523 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
531 struct virtio_gpu_vbuffer *vbuf;
533 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
539 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence);
548 struct virtio_gpu_vbuffer *vbuf;
550 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
561 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
570 struct virtio_gpu_vbuffer *vbuf;
572 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
582 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
594 struct virtio_gpu_vbuffer *vbuf;
602 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
604 vbuf->objs = objs;
614 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence);
625 struct virtio_gpu_vbuffer *vbuf;
627 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
634 vbuf->data_buf = ents;
635 vbuf->data_size = sizeof(*ents) * nents;
637 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence);
641 struct virtio_gpu_vbuffer *vbuf)
644 (struct virtio_gpu_resp_display_info *)vbuf->resp_buf;
670 struct virtio_gpu_vbuffer *vbuf)
673 (struct virtio_gpu_get_capset_info *)vbuf->buf;
675 (struct virtio_gpu_resp_capset_info *)vbuf->resp_buf;
687 struct virtio_gpu_vbuffer *vbuf)
690 (struct virtio_gpu_get_capset *)vbuf->buf;
692 (struct virtio_gpu_resp_capset *)vbuf->resp_buf;
724 struct virtio_gpu_vbuffer *vbuf)
727 (struct virtio_gpu_cmd_get_edid *)vbuf->buf;
729 (struct virtio_gpu_resp_edid *)vbuf->resp_buf;
753 struct virtio_gpu_vbuffer *vbuf;
762 (vgdev, &virtio_gpu_cmd_get_display_info_cb, &vbuf,
769 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
776 struct virtio_gpu_vbuffer *vbuf;
785 (vgdev, &virtio_gpu_cmd_get_capset_info_cb, &vbuf,
792 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
801 struct virtio_gpu_vbuffer *vbuf;
860 (vgdev, &virtio_gpu_cmd_capset_cb, &vbuf, sizeof(*cmd_p),
867 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
875 struct virtio_gpu_vbuffer *vbuf;
889 (vgdev, &virtio_gpu_cmd_get_edid_cb, &vbuf,
894 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
904 struct virtio_gpu_vbuffer *vbuf;
906 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
914 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
921 struct virtio_gpu_vbuffer *vbuf;
923 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
928 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
937 struct virtio_gpu_vbuffer *vbuf;
939 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
941 vbuf->objs = objs;
946 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
956 struct virtio_gpu_vbuffer *vbuf;
958 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
960 vbuf->objs = objs;
965 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf);
976 struct virtio_gpu_vbuffer *vbuf;
978 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
980 vbuf->objs = objs;
996 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence);
1009 struct virtio_gpu_vbuffer *vbuf;
1017 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
1020 vbuf->objs = objs;
1029 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence);
1041 struct virtio_gpu_vbuffer *vbuf;
1043 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
1046 vbuf->objs = objs;
1055 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence);
1065 struct virtio_gpu_vbuffer *vbuf;
1067 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p));
1070 vbuf->data_buf = data;
1071 vbuf->data_size = data_size;
1072 vbuf->objs = objs;
1078 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence);
1169 struct virtio_gpu_vbuffer *vbuf;
1173 cur_p = virtio_gpu_alloc_cursor(vgdev, &vbuf);
1175 virtio_gpu_queue_cursor(vgdev, vbuf);