Lines Matching refs:bi

117 static int vmw_binding_scrub_shader(struct vmw_ctx_bindinfo *bi, bool rebind);
118 static int vmw_binding_scrub_render_target(struct vmw_ctx_bindinfo *bi,
120 static int vmw_binding_scrub_texture(struct vmw_ctx_bindinfo *bi, bool rebind);
121 static int vmw_binding_scrub_cb(struct vmw_ctx_bindinfo *bi, bool rebind);
122 static int vmw_binding_scrub_dx_rt(struct vmw_ctx_bindinfo *bi, bool rebind);
123 static int vmw_binding_scrub_sr(struct vmw_ctx_bindinfo *bi, bool rebind);
124 static int vmw_binding_scrub_so_target(struct vmw_ctx_bindinfo *bi, bool rebind);
126 static int vmw_binding_scrub_dx_shader(struct vmw_ctx_bindinfo *bi,
128 static int vmw_binding_scrub_ib(struct vmw_ctx_bindinfo *bi, bool rebind);
129 static int vmw_binding_scrub_vb(struct vmw_ctx_bindinfo *bi, bool rebind);
130 static int vmw_binding_scrub_uav(struct vmw_ctx_bindinfo *bi, bool rebind);
131 static int vmw_binding_scrub_cs_uav(struct vmw_ctx_bindinfo *bi, bool rebind);
132 static int vmw_binding_scrub_so(struct vmw_ctx_bindinfo *bi, bool rebind);
320 static void vmw_binding_drop(struct vmw_ctx_bindinfo *bi) in vmw_binding_drop() argument
322 list_del(&bi->ctx_list); in vmw_binding_drop()
323 if (!list_empty(&bi->res_list)) in vmw_binding_drop()
324 list_del(&bi->res_list); in vmw_binding_drop()
325 bi->ctx = NULL; in vmw_binding_drop()
338 const struct vmw_ctx_bindinfo *bi, in vmw_binding_add() argument
342 vmw_binding_loc(cbs, bi->bt, shader_slot, slot); in vmw_binding_add()
343 const struct vmw_binding_info *b = &vmw_binding_infos[bi->bt]; in vmw_binding_add()
348 memcpy(loc, bi, b->size); in vmw_binding_add()
375 const struct vmw_ctx_bindinfo *bi) in vmw_binding_transfer() argument
377 size_t offset = (unsigned long)bi - (unsigned long)from; in vmw_binding_transfer()
382 WARN_ON(bi->scrubbed); in vmw_binding_transfer()
387 if (bi->res != NULL) { in vmw_binding_transfer()
388 memcpy(loc, bi, vmw_binding_infos[bi->bt].size); in vmw_binding_transfer()
548 static int vmw_binding_scrub_shader(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_shader() argument
551 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_shader()
552 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_shader()
564 cmd->body.cid = bi->ctx->id; in vmw_binding_scrub_shader()
566 cmd->body.shid = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); in vmw_binding_scrub_shader()
579 static int vmw_binding_scrub_render_target(struct vmw_ctx_bindinfo *bi, in vmw_binding_scrub_render_target() argument
583 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_render_target()
584 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_render_target()
596 cmd->body.cid = bi->ctx->id; in vmw_binding_scrub_render_target()
598 cmd->body.target.sid = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); in vmw_binding_scrub_render_target()
615 static int vmw_binding_scrub_texture(struct vmw_ctx_bindinfo *bi, in vmw_binding_scrub_texture() argument
619 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_texture()
620 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_texture()
635 cmd->body.c.cid = bi->ctx->id; in vmw_binding_scrub_texture()
638 cmd->body.s1.value = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); in vmw_binding_scrub_texture()
650 static int vmw_binding_scrub_dx_shader(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_dx_shader() argument
653 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_dx_shader()
654 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_dx_shader()
660 cmd = VMW_FIFO_RESERVE_DX(dev_priv, sizeof(*cmd), bi->ctx->id); in vmw_binding_scrub_dx_shader()
667 cmd->body.shaderId = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); in vmw_binding_scrub_dx_shader()
679 static int vmw_binding_scrub_cb(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_cb() argument
682 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_cb()
683 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_cb()
689 cmd = VMW_FIFO_RESERVE_DX(dev_priv, sizeof(*cmd), bi->ctx->id); in vmw_binding_scrub_cb()
700 cmd->body.sid = bi->res->id; in vmw_binding_scrub_cb()
726 const struct vmw_ctx_bindinfo *bi, in vmw_collect_view_ids() argument
730 container_of(bi, struct vmw_ctx_bindinfo_view, bi); in vmw_collect_view_ids()
737 if (!biv->bi.ctx) in vmw_collect_view_ids()
741 ((biv->bi.scrubbed) ? in vmw_collect_view_ids()
742 SVGA3D_INVALID_ID : biv->bi.res->id); in vmw_collect_view_ids()
761 const struct vmw_ctx_bindinfo *bi, in vmw_collect_dirty_view_ids() argument
766 container_of(bi, struct vmw_ctx_bindinfo_view, bi); in vmw_collect_dirty_view_ids()
777 ((!biv->bi.ctx || biv->bi.scrubbed) ? in vmw_collect_dirty_view_ids()
778 SVGA3D_INVALID_ID : biv->bi.res->id); in vmw_collect_dirty_view_ids()
797 &cbs->per_shader[shader_slot].shader_res[0].bi; in vmw_emit_set_sr()
838 const struct vmw_ctx_bindinfo *loc = &cbs->render_targets[0].bi; in vmw_emit_set_rt()
856 if (cbs->ds_view.bi.ctx && !cbs->ds_view.bi.scrubbed) in vmw_emit_set_rt()
857 cmd->body.depthStencilViewId = cbs->ds_view.bi.res->id; in vmw_emit_set_rt()
884 const struct vmw_ctx_bindinfo *bi, in vmw_collect_so_targets() argument
888 container_of(bi, struct vmw_ctx_bindinfo_so_target, bi); in vmw_collect_so_targets()
897 if (!biso->bi.ctx) in vmw_collect_so_targets()
900 if (!biso->bi.scrubbed) { in vmw_collect_so_targets()
901 so_buffer->sid = biso->bi.res->id; in vmw_collect_so_targets()
919 const struct vmw_ctx_bindinfo *loc = &cbs->so_targets[0].bi; in vmw_emit_set_so_target()
989 const struct vmw_ctx_bindinfo *bi, in vmw_collect_dirty_vbs() argument
994 container_of(bi, struct vmw_ctx_bindinfo_vb, bi); in vmw_collect_dirty_vbs()
1005 if (!biv->bi.ctx || biv->bi.scrubbed) { in vmw_collect_dirty_vbs()
1010 vbs->sid = biv->bi.res->id; in vmw_collect_dirty_vbs()
1032 &cbs->vertex_buffers[0].bi; in vmw_emit_set_vb()
1066 const struct vmw_ctx_bindinfo *loc = &cbs->ua_views[0].views[0].bi; in vmw_emit_set_uav()
1096 const struct vmw_ctx_bindinfo *loc = &cbs->ua_views[1].views[0].bi; in vmw_emit_set_cs_uav()
1181 static int vmw_binding_scrub_sr(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_sr() argument
1184 container_of(bi, struct vmw_ctx_bindinfo_view, bi); in vmw_binding_scrub_sr()
1186 vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_sr()
1203 static int vmw_binding_scrub_dx_rt(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_dx_rt() argument
1206 vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_dx_rt()
1220 static int vmw_binding_scrub_so_target(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_so_target() argument
1223 vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_so_target()
1237 static int vmw_binding_scrub_vb(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_vb() argument
1240 container_of(bi, struct vmw_ctx_bindinfo_vb, bi); in vmw_binding_scrub_vb()
1242 vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_vb()
1256 static int vmw_binding_scrub_ib(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_ib() argument
1259 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_ib()
1260 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_ib()
1266 cmd = VMW_FIFO_RESERVE_DX(dev_priv, sizeof(*cmd), bi->ctx->id); in vmw_binding_scrub_ib()
1273 cmd->body.sid = bi->res->id; in vmw_binding_scrub_ib()
1287 static int vmw_binding_scrub_uav(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_uav() argument
1289 struct vmw_ctx_binding_state *cbs = vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_uav()
1295 static int vmw_binding_scrub_cs_uav(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_cs_uav() argument
1297 struct vmw_ctx_binding_state *cbs = vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_cs_uav()
1308 static int vmw_binding_scrub_so(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_so() argument
1311 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_so()
1312 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_so()
1318 cmd = VMW_FIFO_RESERVE_DX(dev_priv, sizeof(*cmd), bi->ctx->id); in vmw_binding_scrub_so()
1324 cmd->body.soid = rebind ? bi->res->id : SVGA3D_INVALID_ID; in vmw_binding_scrub_so()