Lines Matching refs:res

62 	struct vmw_resource res;  member
75 static int vmw_view_create(struct vmw_resource *res);
76 static int vmw_view_destroy(struct vmw_resource *res);
77 static void vmw_hw_view_destroy(struct vmw_resource *res);
78 static void vmw_view_commit_notify(struct vmw_resource *res,
112 static struct vmw_view *vmw_view(struct vmw_resource *res) in vmw_view() argument
114 return container_of(res, struct vmw_view, res); in vmw_view()
125 static void vmw_view_commit_notify(struct vmw_resource *res, in vmw_view_commit_notify() argument
128 struct vmw_view *view = vmw_view(res); in vmw_view_commit_notify()
129 struct vmw_private *dev_priv = res->dev_priv; in vmw_view_commit_notify()
138 res->id = view->view_id; in vmw_view_commit_notify()
144 res->id = -1; in vmw_view_commit_notify()
157 static int vmw_view_create(struct vmw_resource *res) in vmw_view_create() argument
159 struct vmw_view *view = vmw_view(res); in vmw_view_create()
161 struct vmw_private *dev_priv = res->dev_priv; in vmw_view_create()
173 cmd = vmw_fifo_reserve_dx(res->dev_priv, view->cmd_size, in vmw_view_create()
185 vmw_fifo_commit(res->dev_priv, view->cmd_size); in vmw_view_create()
186 res->id = view->view_id; in vmw_view_create()
202 static int vmw_view_destroy(struct vmw_resource *res) in vmw_view_destroy() argument
204 struct vmw_private *dev_priv = res->dev_priv; in vmw_view_destroy()
205 struct vmw_view *view = vmw_view(res); in vmw_view_destroy()
212 vmw_binding_res_list_scrub(&res->binding_head); in vmw_view_destroy()
214 if (!view->committed || res->id == -1) in vmw_view_destroy()
228 res->id = -1; in vmw_view_destroy()
242 static void vmw_hw_view_destroy(struct vmw_resource *res) in vmw_hw_view_destroy() argument
244 struct vmw_private *dev_priv = res->dev_priv; in vmw_hw_view_destroy()
247 WARN_ON(vmw_view_destroy(res)); in vmw_hw_view_destroy()
248 res->id = -1; in vmw_hw_view_destroy()
287 static void vmw_view_res_free(struct vmw_resource *res) in vmw_view_res_free() argument
289 struct vmw_view *view = vmw_view(res); in vmw_view_res_free()
291 struct vmw_private *dev_priv = res->dev_priv; in vmw_view_res_free()
330 struct vmw_resource *res; in vmw_view_add() local
362 res = &view->res; in vmw_view_add()
373 ret = vmw_resource_init(dev_priv, res, true, in vmw_view_add()
380 res, list); in vmw_view_add()
384 res->id = view->view_id; in vmw_view_add()
385 vmw_resource_activate(res, vmw_hw_view_destroy); in vmw_view_add()
388 vmw_resource_unreference(&res); in vmw_view_add()
441 WARN_ON(vmw_view_destroy(&entry->res)); in vmw_view_cotable_list_destroy()
461 WARN_ON(vmw_view_destroy(&entry->res)); in vmw_view_surface_list_destroy()
473 struct vmw_resource *vmw_view_srf(struct vmw_resource *res) in vmw_view_srf() argument
475 return vmw_view(res)->srf; in vmw_view_srf()