/netbsd-current/sys/external/bsd/drm2/dist/drm/virtio/ |
H A D | virtgpu_kms.c | 40 struct virtio_gpu_device *vgdev = local 46 virtio_cread(vgdev->vdev, struct virtio_gpu_config, 49 if (vgdev->has_edid) 50 virtio_gpu_cmd_get_edids(vgdev); 51 virtio_gpu_cmd_get_display_info(vgdev); 52 drm_helper_hpd_irq_event(vgdev->ddev); 55 virtio_cwrite(vgdev->vdev, struct virtio_gpu_config, 59 static int virtio_gpu_context_create(struct virtio_gpu_device *vgdev, argument 62 int handle = ida_alloc(&vgdev->ctx_id_ida, GFP_KERNEL); 67 virtio_gpu_cmd_context_create(vgdev, handl 71 virtio_gpu_context_destroy(struct virtio_gpu_device *vgdev, uint32_t ctx_id) argument 86 virtio_gpu_get_capsets(struct virtio_gpu_device *vgdev, int num_capsets) argument 123 struct virtio_gpu_device *vgdev; local 224 virtio_gpu_cleanup_cap_cache(struct virtio_gpu_device *vgdev) argument 236 struct virtio_gpu_device *vgdev = dev->dev_private; local 255 struct virtio_gpu_device *vgdev = dev->dev_private; local 283 struct virtio_gpu_device *vgdev = dev->dev_private; local [all...] |
H A D | virtgpu_vq.c | 62 struct virtio_gpu_device *vgdev = dev->dev_private; local 64 schedule_work(&vgdev->ctrlq.dequeue_work); 70 struct virtio_gpu_device *vgdev = dev->dev_private; local 72 schedule_work(&vgdev->cursorq.dequeue_work); 75 int virtio_gpu_alloc_vbufs(struct virtio_gpu_device *vgdev) argument 77 vgdev->vbufs = kmem_cache_create("virtio-gpu-vbufs", 81 if (!vgdev->vbufs) 86 void virtio_gpu_free_vbufs(struct virtio_gpu_device *vgdev) argument 88 kmem_cache_destroy(vgdev->vbufs); 89 vgdev 93 virtio_gpu_get_vbuf(struct virtio_gpu_device *vgdev, int size, int resp_size, void *resp_buf, virtio_gpu_resp_cb resp_cb) argument 117 virtio_gpu_alloc_cmd(struct virtio_gpu_device *vgdev, struct virtio_gpu_vbuffer **vbuffer_p, int size) argument 135 virtio_gpu_alloc_cursor(struct virtio_gpu_device *vgdev, struct virtio_gpu_vbuffer **vbuffer_p) argument 151 virtio_gpu_alloc_cmd_resp(struct virtio_gpu_device *vgdev, virtio_gpu_resp_cb cb, struct virtio_gpu_vbuffer **vbuffer_p, int cmd_size, int resp_size, void *resp_buf) argument 169 free_vbuf(struct virtio_gpu_device *vgdev, struct virtio_gpu_vbuffer *vbuf) argument 194 struct virtio_gpu_device *vgdev = local 254 struct virtio_gpu_device *vgdev = local 361 virtio_gpu_queue_fenced_ctrl_buffer(struct virtio_gpu_device *vgdev, struct virtio_gpu_vbuffer *vbuf, struct virtio_gpu_ctrl_hdr *hdr, struct virtio_gpu_fence *fence) argument 425 virtio_gpu_disable_notify(struct virtio_gpu_device *vgdev) argument 430 virtio_gpu_enable_notify(struct virtio_gpu_device *vgdev) argument 440 virtio_gpu_queue_ctrl_buffer(struct virtio_gpu_device *vgdev, struct virtio_gpu_vbuffer *vbuf) argument 446 virtio_gpu_queue_cursor(struct virtio_gpu_device *vgdev, struct virtio_gpu_vbuffer *vbuf) argument 488 virtio_gpu_cmd_create_resource(struct virtio_gpu_device *vgdev, struct virtio_gpu_object *bo, struct virtio_gpu_object_params *params, struct virtio_gpu_object_array *objs, struct virtio_gpu_fence *fence) argument 511 virtio_gpu_cmd_unref_resource(struct virtio_gpu_device *vgdev, uint32_t resource_id) argument 526 virtio_gpu_cmd_resource_inval_backing(struct virtio_gpu_device *vgdev, uint32_t resource_id, struct virtio_gpu_fence *fence) argument 542 virtio_gpu_cmd_set_scanout(struct virtio_gpu_device *vgdev, uint32_t scanout_id, uint32_t resource_id, uint32_t width, uint32_t height, uint32_t x, uint32_t y) argument 564 virtio_gpu_cmd_resource_flush(struct virtio_gpu_device *vgdev, uint32_t resource_id, uint32_t x, uint32_t y, uint32_t width, uint32_t height) argument 585 virtio_gpu_cmd_transfer_to_host_2d(struct virtio_gpu_device *vgdev, uint64_t offset, uint32_t width, uint32_t height, uint32_t x, uint32_t y, struct virtio_gpu_object_array *objs, struct virtio_gpu_fence *fence) argument 618 virtio_gpu_cmd_resource_attach_backing(struct virtio_gpu_device *vgdev, uint32_t resource_id, struct virtio_gpu_mem_entry *ents, uint32_t nents, struct virtio_gpu_fence *fence) argument 640 virtio_gpu_cmd_get_display_info_cb(struct virtio_gpu_device *vgdev, struct virtio_gpu_vbuffer *vbuf) argument 669 virtio_gpu_cmd_get_capset_info_cb(struct virtio_gpu_device *vgdev, struct virtio_gpu_vbuffer *vbuf) argument 686 virtio_gpu_cmd_capset_cb(struct virtio_gpu_device *vgdev, struct virtio_gpu_vbuffer *vbuf) argument 723 virtio_gpu_cmd_get_edid_cb(struct virtio_gpu_device *vgdev, struct virtio_gpu_vbuffer *vbuf) argument 750 virtio_gpu_cmd_get_display_info(struct virtio_gpu_device *vgdev) argument 773 virtio_gpu_cmd_get_capset_info(struct virtio_gpu_device *vgdev, int idx) argument 796 virtio_gpu_cmd_get_capset(struct virtio_gpu_device *vgdev, int idx, int version, struct virtio_gpu_drv_cap_cache **cache_p) argument 872 virtio_gpu_cmd_get_edids(struct virtio_gpu_device *vgdev) argument 900 virtio_gpu_cmd_context_create(struct virtio_gpu_device *vgdev, uint32_t id, uint32_t nlen, const char *name) argument 917 virtio_gpu_cmd_context_destroy(struct virtio_gpu_device *vgdev, uint32_t id) argument 931 virtio_gpu_cmd_context_attach_resource(struct virtio_gpu_device *vgdev, uint32_t ctx_id, struct virtio_gpu_object_array *objs) argument 950 virtio_gpu_cmd_context_detach_resource(struct virtio_gpu_device *vgdev, uint32_t ctx_id, struct virtio_gpu_object_array *objs) argument 969 virtio_gpu_cmd_resource_create_3d(struct virtio_gpu_device *vgdev, struct virtio_gpu_object *bo, struct virtio_gpu_object_params *params, struct virtio_gpu_object_array *objs, struct virtio_gpu_fence *fence) argument 1000 virtio_gpu_cmd_transfer_to_host_3d(struct virtio_gpu_device *vgdev, uint32_t ctx_id, uint64_t offset, uint32_t level, struct drm_virtgpu_3d_box *box, struct virtio_gpu_object_array *objs, struct virtio_gpu_fence *fence) argument 1032 virtio_gpu_cmd_transfer_from_host_3d(struct virtio_gpu_device *vgdev, uint32_t ctx_id, uint64_t offset, uint32_t level, struct drm_virtgpu_3d_box *box, struct virtio_gpu_object_array *objs, struct virtio_gpu_fence *fence) argument 1058 virtio_gpu_cmd_submit(struct virtio_gpu_device *vgdev, void *data, uint32_t data_size, uint32_t ctx_id, struct virtio_gpu_object_array *objs, struct virtio_gpu_fence *fence) argument 1081 virtio_gpu_object_attach(struct virtio_gpu_device *vgdev, struct virtio_gpu_object *obj, struct virtio_gpu_fence *fence) argument 1136 virtio_gpu_object_detach(struct virtio_gpu_device *vgdev, struct virtio_gpu_object *obj) argument 1166 virtio_gpu_cursor_ping(struct virtio_gpu_device *vgdev, struct virtio_gpu_output *output) argument [all...] |
H A D | virtgpu_object.c | 38 static int virtio_gpu_resource_id_get(struct virtio_gpu_device *vgdev, argument 54 int handle = ida_alloc(&vgdev->resource_ida, GFP_KERNEL); 62 static void virtio_gpu_resource_id_put(struct virtio_gpu_device *vgdev, uint32_t id) argument 65 ida_free(&vgdev->resource_ida, id - 1); 72 struct virtio_gpu_device *vgdev = bo->base.base.dev->dev_private; local 75 virtio_gpu_object_detach(vgdev, bo); 77 virtio_gpu_cmd_unref_resource(vgdev, bo->hw_res_handle); 78 virtio_gpu_resource_id_put(vgdev, bo->hw_res_handle); 110 int virtio_gpu_object_create(struct virtio_gpu_device *vgdev, argument 123 shmem_obj = drm_gem_shmem_create(vgdev [all...] |
H A D | virtgpu_debugfs.c | 51 struct virtio_gpu_device *vgdev = node->minor->dev->dev_private; local 53 virtio_add_bool(m, "virgl", vgdev->has_virgl_3d); 54 virtio_add_bool(m, "edid", vgdev->has_edid); 55 virtio_add_int(m, "cap sets", vgdev->num_capsets); 56 virtio_add_int(m, "scanouts", vgdev->num_scanouts); 64 struct virtio_gpu_device *vgdev = node->minor->dev->dev_private; local 67 (u64)atomic64_read(&vgdev->fence_drv.last_seq), 68 vgdev->fence_drv.sync_seq);
|
H A D | virtgpu_drv.h | 92 typedef void (*virtio_gpu_resp_cb)(struct virtio_gpu_device *vgdev, 226 int virtio_gpu_gem_init(struct virtio_gpu_device *vgdev); 227 void virtio_gpu_gem_fini(struct virtio_gpu_device *vgdev); 254 void virtio_gpu_array_put_free_delayed(struct virtio_gpu_device *vgdev, 259 int virtio_gpu_alloc_vbufs(struct virtio_gpu_device *vgdev); 260 void virtio_gpu_free_vbufs(struct virtio_gpu_device *vgdev); 261 void virtio_gpu_cmd_create_resource(struct virtio_gpu_device *vgdev, 266 void virtio_gpu_cmd_unref_resource(struct virtio_gpu_device *vgdev, 268 void virtio_gpu_cmd_transfer_to_host_2d(struct virtio_gpu_device *vgdev, 274 void virtio_gpu_cmd_resource_flush(struct virtio_gpu_device *vgdev, [all...] |
H A D | virtgpu_display.c | 93 struct virtio_gpu_device *vgdev = dev->dev_private; local 96 virtio_gpu_cmd_set_scanout(vgdev, output->index, 0, 113 struct virtio_gpu_device *vgdev = dev->dev_private; local 116 virtio_gpu_cmd_set_scanout(vgdev, output->index, 0, 0, 0, 0, 0); 258 static int vgdev_output_init(struct virtio_gpu_device *vgdev, int index) argument 260 struct drm_device *dev = vgdev->ddev; 261 struct virtio_gpu_output *output = vgdev->outputs + index; 274 primary = virtio_gpu_plane_init(vgdev, DRM_PLANE_TYPE_PRIMARY, index); 277 cursor = virtio_gpu_plane_init(vgdev, DRM_PLANE_TYPE_CURSOR, index); 287 if (vgdev 356 virtio_gpu_modeset_init(struct virtio_gpu_device *vgdev) argument 377 virtio_gpu_modeset_fini(struct virtio_gpu_device *vgdev) argument [all...] |
H A D | virtgpu_ioctl.c | 44 struct virtio_gpu_device *vgdev = dev->dev_private; local 47 return virtio_gpu_mode_dumb_mmap(file_priv, vgdev->ddev, 62 struct virtio_gpu_device *vgdev = dev->dev_private; local 74 if (vgdev->has_virgl_3d == false) 95 if (!dma_fence_match_context(in_fence, vgdev->fence_drv.context)) 146 out_fence = virtio_gpu_fence_alloc(vgdev); 164 virtio_gpu_cmd_submit(vgdev, buf, exbuf->size, 187 struct virtio_gpu_device *vgdev = dev->dev_private; local 193 value = vgdev->has_virgl_3d == true ? 1 : 0; 210 struct virtio_gpu_device *vgdev local 294 struct virtio_gpu_device *vgdev = dev->dev_private; local 334 struct virtio_gpu_device *vgdev = dev->dev_private; local 406 struct virtio_gpu_device *vgdev = dev->dev_private; local [all...] |
H A D | virtgpu_gem.c | 42 struct virtio_gpu_device *vgdev = dev->dev_private; local 47 ret = virtio_gpu_object_create(vgdev, params, &obj, NULL); 117 struct virtio_gpu_device *vgdev = obj->dev->dev_private; local 121 if (!vgdev->has_virgl_3d) 129 virtio_gpu_cmd_context_attach_resource(vgdev, vfpriv->ctx_id, 137 struct virtio_gpu_device *vgdev = obj->dev->dev_private; local 141 if (!vgdev->has_virgl_3d) 149 virtio_gpu_cmd_context_detach_resource(vgdev, vfpriv->ctx_id, 246 void virtio_gpu_array_put_free_delayed(struct virtio_gpu_device *vgdev, argument 249 spin_lock(&vgdev 257 struct virtio_gpu_device *vgdev = local [all...] |
H A D | virtgpu_fence.c | 81 struct virtio_gpu_fence *virtio_gpu_fence_alloc(struct virtio_gpu_device *vgdev) argument 83 struct virtio_gpu_fence_driver *drv = &vgdev->fence_drv; 100 void virtio_gpu_fence_emit(struct virtio_gpu_device *vgdev, argument 104 struct virtio_gpu_fence_driver *drv = &vgdev->fence_drv; 119 void virtio_gpu_fence_event_process(struct virtio_gpu_device *vgdev, argument 122 struct virtio_gpu_fence_driver *drv = &vgdev->fence_drv; 127 atomic64_set(&vgdev->fence_drv.last_seq, last_seq);
|
H A D | virtgpu_plane.c | 111 static void virtio_gpu_update_dumb_bo(struct virtio_gpu_device *vgdev, argument 130 virtio_gpu_cmd_transfer_to_host_2d(vgdev, off, w, h, x, y, 138 struct virtio_gpu_device *vgdev = dev->dev_private; local 152 virtio_gpu_cmd_set_scanout(vgdev, output->index, 0, 162 virtio_gpu_disable_notify(vgdev); 166 virtio_gpu_update_dumb_bo(vgdev, plane->state, &rect); 181 virtio_gpu_cmd_set_scanout(vgdev, output->index, 189 virtio_gpu_cmd_resource_flush(vgdev, bo->hw_res_handle, 195 virtio_gpu_enable_notify(vgdev); 202 struct virtio_gpu_device *vgdev local 239 struct virtio_gpu_device *vgdev = dev->dev_private; local 321 virtio_gpu_plane_init(struct virtio_gpu_device *vgdev, enum drm_plane_type type, int index) argument [all...] |
H A D | virtgpu_drv.c | 151 struct virtio_gpu_device *vgdev = dev->dev_private; local 153 schedule_work(&vgdev->config_changed_work);
|