Lines Matching refs:vbuf

77 	struct virtio_gpu_vbuffer *vbuf;  in virtio_gpu_alloc_vbufs()  local
96 vbuf = ptr; in virtio_gpu_alloc_vbufs()
97 list_add(&vbuf->list, &vgdev->free_vbufs); in virtio_gpu_alloc_vbufs()
104 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_free_vbufs() local
114 vbuf = list_first_entry(&vgdev->free_vbufs, in virtio_gpu_free_vbufs()
116 list_del(&vbuf->list); in virtio_gpu_free_vbufs()
127 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_get_vbuf() local
131 vbuf = list_first_entry(&vgdev->free_vbufs, in virtio_gpu_get_vbuf()
133 list_del(&vbuf->list); in virtio_gpu_get_vbuf()
135 memset(vbuf, 0, VBUFFER_SIZE); in virtio_gpu_get_vbuf()
138 vbuf->buf = (void *)vbuf + sizeof(*vbuf); in virtio_gpu_get_vbuf()
139 vbuf->size = size; in virtio_gpu_get_vbuf()
141 vbuf->resp_cb = resp_cb; in virtio_gpu_get_vbuf()
142 vbuf->resp_size = resp_size; in virtio_gpu_get_vbuf()
144 vbuf->resp_buf = (void *)vbuf->buf + size; in virtio_gpu_get_vbuf()
146 vbuf->resp_buf = resp_buf; in virtio_gpu_get_vbuf()
147 BUG_ON(!vbuf->resp_buf); in virtio_gpu_get_vbuf()
148 return vbuf; in virtio_gpu_get_vbuf()
155 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_alloc_cmd() local
157 vbuf = virtio_gpu_get_vbuf(vgdev, size, in virtio_gpu_alloc_cmd()
160 if (IS_ERR(vbuf)) { in virtio_gpu_alloc_cmd()
162 return ERR_CAST(vbuf); in virtio_gpu_alloc_cmd()
164 *vbuffer_p = vbuf; in virtio_gpu_alloc_cmd()
165 return vbuf->buf; in virtio_gpu_alloc_cmd()
172 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_alloc_cursor() local
174 vbuf = virtio_gpu_get_vbuf in virtio_gpu_alloc_cursor()
177 if (IS_ERR(vbuf)) { in virtio_gpu_alloc_cursor()
179 return ERR_CAST(vbuf); in virtio_gpu_alloc_cursor()
181 *vbuffer_p = vbuf; in virtio_gpu_alloc_cursor()
182 return (struct virtio_gpu_update_cursor *)vbuf->buf; in virtio_gpu_alloc_cursor()
191 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_alloc_cmd_resp() local
193 vbuf = virtio_gpu_get_vbuf(vgdev, cmd_size, in virtio_gpu_alloc_cmd_resp()
195 if (IS_ERR(vbuf)) { in virtio_gpu_alloc_cmd_resp()
197 return ERR_CAST(vbuf); in virtio_gpu_alloc_cmd_resp()
199 *vbuffer_p = vbuf; in virtio_gpu_alloc_cmd_resp()
200 return (struct virtio_gpu_command *)vbuf->buf; in virtio_gpu_alloc_cmd_resp()
204 struct virtio_gpu_vbuffer *vbuf) in free_vbuf() argument
206 if (vbuf->resp_size > MAX_INLINE_RESP_SIZE) in free_vbuf()
207 kfree(vbuf->resp_buf); in free_vbuf()
208 kfree(vbuf->data_buf); in free_vbuf()
210 list_add(&vbuf->list, &vgdev->free_vbufs); in free_vbuf()
216 struct virtio_gpu_vbuffer *vbuf; in reclaim_vbufs() local
220 while ((vbuf = virtqueue_get_buf(vq, &len))) { in reclaim_vbufs()
221 list_add_tail(&vbuf->list, reclaim_list); in reclaim_vbufs()
297 struct virtio_gpu_vbuffer *vbuf) in virtio_gpu_queue_ctrl_buffer_locked() argument
307 sg_init_one(&vcmd, vbuf->buf, vbuf->size); in virtio_gpu_queue_ctrl_buffer_locked()
311 if (vbuf->data_size) { in virtio_gpu_queue_ctrl_buffer_locked()
312 sg_init_one(&vout, vbuf->data_buf, vbuf->data_size); in virtio_gpu_queue_ctrl_buffer_locked()
317 if (vbuf->resp_size) { in virtio_gpu_queue_ctrl_buffer_locked()
318 sg_init_one(&vresp, vbuf->resp_buf, vbuf->resp_size); in virtio_gpu_queue_ctrl_buffer_locked()
324 ret = virtqueue_add_sgs(vq, sgs, outcnt, incnt, vbuf, GFP_ATOMIC); in virtio_gpu_queue_ctrl_buffer_locked()
340 struct virtio_gpu_vbuffer *vbuf) in virtio_gpu_queue_ctrl_buffer() argument
345 rc = virtio_gpu_queue_ctrl_buffer_locked(vgdev, vbuf); in virtio_gpu_queue_ctrl_buffer()
351 struct virtio_gpu_vbuffer *vbuf, in virtio_gpu_queue_fenced_ctrl_buffer() argument
377 rc = virtio_gpu_queue_ctrl_buffer_locked(vgdev, vbuf); in virtio_gpu_queue_fenced_ctrl_buffer()
383 struct virtio_gpu_vbuffer *vbuf) in virtio_gpu_queue_cursor() argument
393 sg_init_one(&ccmd, vbuf->buf, vbuf->size); in virtio_gpu_queue_cursor()
399 ret = virtqueue_add_sgs(vq, sgs, outcnt, 0, vbuf, GFP_ATOMIC); in virtio_gpu_queue_cursor()
427 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_create_resource() local
429 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_create_resource()
438 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_create_resource()
445 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_unref_resource() local
447 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_unref_resource()
453 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_unref_resource()
460 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_resource_inval_backing() local
462 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_resource_inval_backing()
468 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_resource_inval_backing()
477 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_set_scanout() local
479 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_set_scanout()
490 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_set_scanout()
499 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_resource_flush() local
501 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_resource_flush()
511 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_resource_flush()
521 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_transfer_to_host_2d() local
523 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_transfer_to_host_2d()
534 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence); in virtio_gpu_cmd_transfer_to_host_2d()
545 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_resource_attach_backing() local
547 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_resource_attach_backing()
554 vbuf->data_buf = ents; in virtio_gpu_cmd_resource_attach_backing()
555 vbuf->data_size = sizeof(*ents) * nents; in virtio_gpu_cmd_resource_attach_backing()
557 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence); in virtio_gpu_cmd_resource_attach_backing()
561 struct virtio_gpu_vbuffer *vbuf) in virtio_gpu_cmd_get_display_info_cb() argument
564 (struct virtio_gpu_resp_display_info *)vbuf->resp_buf; in virtio_gpu_cmd_get_display_info_cb()
590 struct virtio_gpu_vbuffer *vbuf) in virtio_gpu_cmd_get_capset_info_cb() argument
593 (struct virtio_gpu_get_capset_info *)vbuf->buf; in virtio_gpu_cmd_get_capset_info_cb()
595 (struct virtio_gpu_resp_capset_info *)vbuf->resp_buf; in virtio_gpu_cmd_get_capset_info_cb()
607 struct virtio_gpu_vbuffer *vbuf) in virtio_gpu_cmd_capset_cb() argument
610 (struct virtio_gpu_get_capset *)vbuf->buf; in virtio_gpu_cmd_capset_cb()
612 (struct virtio_gpu_resp_capset *)vbuf->resp_buf; in virtio_gpu_cmd_capset_cb()
633 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_get_display_info() local
642 (vgdev, &virtio_gpu_cmd_get_display_info_cb, &vbuf, in virtio_gpu_cmd_get_display_info()
649 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_get_display_info()
656 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_get_capset_info() local
665 (vgdev, &virtio_gpu_cmd_get_capset_info_cb, &vbuf, in virtio_gpu_cmd_get_capset_info()
672 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_get_capset_info()
681 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_get_capset() local
719 (vgdev, &virtio_gpu_cmd_capset_cb, &vbuf, sizeof(*cmd_p), in virtio_gpu_cmd_get_capset()
726 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_get_capset()
735 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_context_create() local
737 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_context_create()
745 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_context_create()
752 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_context_destroy() local
754 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_context_destroy()
759 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_context_destroy()
767 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_context_attach_resource() local
769 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_context_attach_resource()
775 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_context_attach_resource()
784 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_context_detach_resource() local
786 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_context_detach_resource()
792 virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); in virtio_gpu_cmd_context_detach_resource()
801 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_resource_create_3d() local
803 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_resource_create_3d()
810 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence); in virtio_gpu_cmd_resource_create_3d()
820 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_transfer_to_host_3d() local
822 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_transfer_to_host_3d()
832 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence); in virtio_gpu_cmd_transfer_to_host_3d()
842 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_transfer_from_host_3d() local
844 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_transfer_from_host_3d()
854 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence); in virtio_gpu_cmd_transfer_from_host_3d()
862 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cmd_submit() local
864 cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); in virtio_gpu_cmd_submit()
867 vbuf->data_buf = data; in virtio_gpu_cmd_submit()
868 vbuf->data_size = data_size; in virtio_gpu_cmd_submit()
874 virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, &cmd_p->hdr, fence); in virtio_gpu_cmd_submit()
918 struct virtio_gpu_vbuffer *vbuf; in virtio_gpu_cursor_ping() local
922 cur_p = virtio_gpu_alloc_cursor(vgdev, &vbuf); in virtio_gpu_cursor_ping()
924 virtio_gpu_queue_cursor(vgdev, vbuf); in virtio_gpu_cursor_ping()