Lines Matching refs:dev_priv

107 	struct vmw_private *dev_priv = res->dev_priv;  in vmw_resource_release_id()  local
108 struct idr *idr = &dev_priv->res_idr[res->func->res_type]; in vmw_resource_release_id()
110 write_lock(&dev_priv->resource_lock); in vmw_resource_release_id()
114 write_unlock(&dev_priv->resource_lock); in vmw_resource_release_id()
121 struct vmw_private *dev_priv = res->dev_priv; in vmw_resource_release() local
123 struct idr *idr = &dev_priv->res_idr[res->func->res_type]; in vmw_resource_release()
125 write_lock(&dev_priv->resource_lock); in vmw_resource_release()
128 write_unlock(&dev_priv->resource_lock); in vmw_resource_release()
148 mutex_lock(&dev_priv->binding_mutex); in vmw_resource_release()
150 mutex_unlock(&dev_priv->binding_mutex); in vmw_resource_release()
160 write_lock(&dev_priv->resource_lock); in vmw_resource_release()
163 write_unlock(&dev_priv->resource_lock); in vmw_resource_release()
185 struct vmw_private *dev_priv = res->dev_priv; in vmw_resource_alloc_id() local
187 struct idr *idr = &dev_priv->res_idr[res->func->res_type]; in vmw_resource_alloc_id()
192 write_lock(&dev_priv->resource_lock); in vmw_resource_alloc_id()
198 write_unlock(&dev_priv->resource_lock); in vmw_resource_alloc_id()
214 int vmw_resource_init(struct vmw_private *dev_priv, struct vmw_resource *res, in vmw_resource_init() argument
223 res->dev_priv = dev_priv; in vmw_resource_init()
254 struct vmw_private *dev_priv = res->dev_priv; in vmw_resource_activate() local
256 write_lock(&dev_priv->resource_lock); in vmw_resource_activate()
259 write_unlock(&dev_priv->resource_lock); in vmw_resource_activate()
262 static struct vmw_resource *vmw_resource_lookup(struct vmw_private *dev_priv, in vmw_resource_lookup() argument
267 read_lock(&dev_priv->resource_lock); in vmw_resource_lookup()
272 read_unlock(&dev_priv->resource_lock); in vmw_resource_lookup()
294 int vmw_user_resource_lookup_handle(struct vmw_private *dev_priv, in vmw_user_resource_lookup_handle() argument
314 read_lock(&dev_priv->resource_lock); in vmw_user_resource_lookup_handle()
316 read_unlock(&dev_priv->resource_lock); in vmw_user_resource_lookup_handle()
321 read_unlock(&dev_priv->resource_lock); in vmw_user_resource_lookup_handle()
337 int vmw_user_lookup_handle(struct vmw_private *dev_priv, in vmw_user_lookup_handle() argument
348 ret = vmw_user_resource_lookup_handle(dev_priv, tfile, handle, in vmw_user_lookup_handle()
372 static size_t vmw_dmabuf_acc_size(struct vmw_private *dev_priv, size_t size, in vmw_dmabuf_acc_size() argument
388 if (dev_priv->map_mode == vmw_dma_alloc_coherent) in vmw_dmabuf_acc_size()
410 int vmw_dmabuf_init(struct vmw_private *dev_priv, in vmw_dmabuf_init() argument
416 struct ttm_bo_device *bdev = &dev_priv->bdev; in vmw_dmabuf_init()
423 acc_size = vmw_dmabuf_acc_size(dev_priv, size, user); in vmw_dmabuf_init()
479 int vmw_user_dmabuf_alloc(struct vmw_private *dev_priv, in vmw_user_dmabuf_alloc() argument
497 ret = vmw_dmabuf_init(dev_priv, &user_bo->dma, size, in vmw_user_dmabuf_alloc()
498 (dev_priv->has_mob) ? in vmw_user_dmabuf_alloc()
689 struct vmw_private *dev_priv = vmw_priv(dev); in vmw_dmabuf_alloc_ioctl() local
698 ret = ttm_read_lock(&dev_priv->reservation_sem, true); in vmw_dmabuf_alloc_ioctl()
702 ret = vmw_user_dmabuf_alloc(dev_priv, vmw_fpriv(file_priv)->tfile, in vmw_dmabuf_alloc_ioctl()
716 ttm_read_unlock(&dev_priv->reservation_sem); in vmw_dmabuf_alloc_ioctl()
787 struct vmw_private *dev_priv = res->dev_priv; in vmw_stream_destroy() local
794 ret = vmw_overlay_unref(dev_priv, stream->stream_id); in vmw_stream_destroy()
798 static int vmw_stream_init(struct vmw_private *dev_priv, in vmw_stream_init() argument
805 ret = vmw_resource_init(dev_priv, res, false, res_free, in vmw_stream_init()
816 ret = vmw_overlay_claim(dev_priv, &stream->stream_id); in vmw_stream_init()
832 struct vmw_private *dev_priv = res->dev_priv; in vmw_user_stream_free() local
835 ttm_mem_global_free(vmw_mem_glob(dev_priv), in vmw_user_stream_free()
858 struct vmw_private *dev_priv = vmw_priv(dev); in vmw_stream_unref_ioctl() local
863 struct idr *idr = &dev_priv->res_idr[vmw_res_stream]; in vmw_stream_unref_ioctl()
867 res = vmw_resource_lookup(dev_priv, idr, arg->stream_id); in vmw_stream_unref_ioctl()
891 struct vmw_private *dev_priv = vmw_priv(dev); in vmw_stream_claim_ioctl() local
907 ret = ttm_read_lock(&dev_priv->reservation_sem, true); in vmw_stream_claim_ioctl()
911 ret = ttm_mem_global_alloc(vmw_mem_glob(dev_priv), in vmw_stream_claim_ioctl()
914 ttm_read_unlock(&dev_priv->reservation_sem); in vmw_stream_claim_ioctl()
925 ttm_mem_global_free(vmw_mem_glob(dev_priv), in vmw_stream_claim_ioctl()
939 ret = vmw_stream_init(dev_priv, &stream->stream, vmw_user_stream_free); in vmw_stream_claim_ioctl()
959 int vmw_user_stream_lookup(struct vmw_private *dev_priv, in vmw_user_stream_lookup() argument
967 res = vmw_resource_lookup(dev_priv, &dev_priv->res_idr[vmw_res_stream], in vmw_user_stream_lookup()
1007 struct vmw_private *dev_priv = vmw_priv(dev); in vmw_dumb_create() local
1014 ret = ttm_read_lock(&dev_priv->reservation_sem, true); in vmw_dumb_create()
1018 ret = vmw_user_dmabuf_alloc(dev_priv, vmw_fpriv(file_priv)->tfile, in vmw_dumb_create()
1026 ttm_read_unlock(&dev_priv->reservation_sem); in vmw_dumb_create()
1098 ret = vmw_dmabuf_init(res->dev_priv, backup, res->backup_size, in vmw_resource_buf_alloc()
1179 struct vmw_private *dev_priv = res->dev_priv; in vmw_resource_unreserve() local
1205 write_lock(&dev_priv->resource_lock); in vmw_resource_unreserve()
1207 &res->dev_priv->res_lru[res->func->res_type]); in vmw_resource_unreserve()
1208 write_unlock(&dev_priv->resource_lock); in vmw_resource_unreserve()
1281 struct vmw_private *dev_priv = res->dev_priv; in vmw_resource_reserve() local
1284 write_lock(&dev_priv->resource_lock); in vmw_resource_reserve()
1286 write_unlock(&dev_priv->resource_lock); in vmw_resource_reserve()
1375 struct vmw_private *dev_priv = res->dev_priv; in vmw_resource_validate() local
1376 struct list_head *lru_list = &dev_priv->res_lru[res->func->res_type]; in vmw_resource_validate()
1392 write_lock(&dev_priv->resource_lock); in vmw_resource_validate()
1397 write_unlock(&dev_priv->resource_lock); in vmw_resource_validate()
1406 write_unlock(&dev_priv->resource_lock); in vmw_resource_validate()
1410 write_lock(&dev_priv->resource_lock); in vmw_resource_validate()
1412 write_unlock(&dev_priv->resource_lock); in vmw_resource_validate()
1453 struct vmw_private *dev_priv = in vmw_fence_single_bo() local
1457 vmw_execbuf_fence_commands(NULL, dev_priv, &fence, NULL); in vmw_fence_single_bo()
1532 struct vmw_private *dev_priv; in vmw_query_readback_all() local
1544 dev_priv = dx_query_ctx->dev_priv; in vmw_query_readback_all()
1546 cmd = vmw_fifo_reserve_dx(dev_priv, sizeof(*cmd), dx_query_ctx->id); in vmw_query_readback_all()
1557 vmw_fifo_commit(dev_priv, sizeof(*cmd)); in vmw_query_readback_all()
1581 struct vmw_private *dev_priv; in vmw_query_move_notify() local
1584 dev_priv = container_of(bdev, struct vmw_private, bdev); in vmw_query_move_notify()
1586 mutex_lock(&dev_priv->binding_mutex); in vmw_query_move_notify()
1590 mutex_unlock(&dev_priv->binding_mutex); in vmw_query_move_notify()
1599 mutex_unlock(&dev_priv->binding_mutex); in vmw_query_move_notify()
1602 (void) vmw_execbuf_fence_commands(NULL, dev_priv, &fence, NULL); in vmw_query_move_notify()
1610 mutex_unlock(&dev_priv->binding_mutex); in vmw_query_move_notify()
1633 static void vmw_resource_evict_type(struct vmw_private *dev_priv, in vmw_resource_evict_type() argument
1636 struct list_head *lru_list = &dev_priv->res_lru[type]; in vmw_resource_evict_type()
1642 write_lock(&dev_priv->resource_lock); in vmw_resource_evict_type()
1651 write_unlock(&dev_priv->resource_lock); in vmw_resource_evict_type()
1655 write_lock(&dev_priv->resource_lock); in vmw_resource_evict_type()
1657 write_unlock(&dev_priv->resource_lock); in vmw_resource_evict_type()
1668 write_unlock(&dev_priv->resource_lock); in vmw_resource_evict_type()
1681 void vmw_resource_evict_all(struct vmw_private *dev_priv) in vmw_resource_evict_all() argument
1685 mutex_lock(&dev_priv->cmdbuf_mutex); in vmw_resource_evict_all()
1688 vmw_resource_evict_type(dev_priv, type); in vmw_resource_evict_all()
1690 mutex_unlock(&dev_priv->cmdbuf_mutex); in vmw_resource_evict_all()
1705 struct vmw_private *dev_priv = res->dev_priv; in vmw_resource_pin() local
1708 ttm_write_lock(&dev_priv->reservation_sem, interruptible); in vmw_resource_pin()
1709 mutex_lock(&dev_priv->cmdbuf_mutex); in vmw_resource_pin()
1747 mutex_unlock(&dev_priv->cmdbuf_mutex); in vmw_resource_pin()
1748 ttm_write_unlock(&dev_priv->reservation_sem); in vmw_resource_pin()
1763 struct vmw_private *dev_priv = res->dev_priv; in vmw_resource_unpin() local
1766 ttm_read_lock(&dev_priv->reservation_sem, false); in vmw_resource_unpin()
1767 mutex_lock(&dev_priv->cmdbuf_mutex); in vmw_resource_unpin()
1783 mutex_unlock(&dev_priv->cmdbuf_mutex); in vmw_resource_unpin()
1784 ttm_read_unlock(&dev_priv->reservation_sem); in vmw_resource_unpin()