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()
340 const struct vmw_ctx_bindinfo *bi, in vmw_binding_add() argument
344 vmw_binding_loc(cbs, bi->bt, shader_slot, slot); in vmw_binding_add()
345 const struct vmw_binding_info *b = &vmw_binding_infos[bi->bt]; in vmw_binding_add()
350 memcpy(loc, bi, b->size); in vmw_binding_add()
378 const struct vmw_ctx_bindinfo *bi) in vmw_binding_transfer() argument
380 size_t offset = (unsigned long)bi - (unsigned long)from; in vmw_binding_transfer()
385 WARN_ON(bi->scrubbed); in vmw_binding_transfer()
390 if (bi->res != NULL) { in vmw_binding_transfer()
391 memcpy(loc, bi, vmw_binding_infos[bi->bt].size); in vmw_binding_transfer()
550 static int vmw_binding_scrub_shader(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_shader() argument
553 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_shader()
554 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_shader()
566 cmd->body.cid = bi->ctx->id; in vmw_binding_scrub_shader()
568 cmd->body.shid = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); in vmw_binding_scrub_shader()
581 static int vmw_binding_scrub_render_target(struct vmw_ctx_bindinfo *bi, in vmw_binding_scrub_render_target() argument
585 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_render_target()
586 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_render_target()
598 cmd->body.cid = bi->ctx->id; in vmw_binding_scrub_render_target()
600 cmd->body.target.sid = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); in vmw_binding_scrub_render_target()
617 static int vmw_binding_scrub_texture(struct vmw_ctx_bindinfo *bi, in vmw_binding_scrub_texture() argument
621 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_texture()
622 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_texture()
637 cmd->body.c.cid = bi->ctx->id; in vmw_binding_scrub_texture()
640 cmd->body.s1.value = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); in vmw_binding_scrub_texture()
652 static int vmw_binding_scrub_dx_shader(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_dx_shader() argument
655 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_dx_shader()
656 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_dx_shader()
662 cmd = VMW_CMD_CTX_RESERVE(dev_priv, sizeof(*cmd), bi->ctx->id); in vmw_binding_scrub_dx_shader()
669 cmd->body.shaderId = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); in vmw_binding_scrub_dx_shader()
681 static int vmw_binding_scrub_cb(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_cb() argument
684 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_cb()
685 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_cb()
691 cmd = VMW_CMD_CTX_RESERVE(dev_priv, sizeof(*cmd), bi->ctx->id); in vmw_binding_scrub_cb()
702 cmd->body.sid = bi->res->id; in vmw_binding_scrub_cb()
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()
798 &cbs->per_shader[shader_slot].shader_res[0].bi; in vmw_emit_set_sr()
857 if (cbs->ds_view.bi.ctx && !cbs->ds_view.bi.scrubbed) in vmw_emit_set_rt()
858 cmd->body.depthStencilViewId = cbs->ds_view.bi.res->id; in vmw_emit_set_rt()
896 if (!biso->bi.ctx) in vmw_collect_so_targets()
899 if (!biso->bi.scrubbed) { in vmw_collect_so_targets()
900 so_buffer->sid = biso->bi.res->id; in vmw_collect_so_targets()
988 const struct vmw_ctx_bindinfo *bi, in vmw_collect_dirty_vbs() argument
993 container_of(bi, struct vmw_ctx_bindinfo_vb, bi); in vmw_collect_dirty_vbs()
1004 if (!biv->bi.ctx || biv->bi.scrubbed) { in vmw_collect_dirty_vbs()
1009 vbs->sid = biv->bi.res->id; in vmw_collect_dirty_vbs()
1031 &cbs->vertex_buffers[0].bi; in vmw_emit_set_vb()
1180 static int vmw_binding_scrub_sr(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_sr() argument
1183 container_of(bi, struct vmw_ctx_bindinfo_view, bi); in vmw_binding_scrub_sr()
1185 vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_sr()
1202 static int vmw_binding_scrub_dx_rt(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_dx_rt() argument
1205 vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_dx_rt()
1219 static int vmw_binding_scrub_so_target(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_so_target() argument
1222 vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_so_target()
1236 static int vmw_binding_scrub_vb(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_vb() argument
1239 container_of(bi, struct vmw_ctx_bindinfo_vb, bi); in vmw_binding_scrub_vb()
1241 vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_vb()
1255 static int vmw_binding_scrub_ib(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_ib() argument
1258 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_ib()
1259 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_ib()
1265 cmd = VMW_CMD_CTX_RESERVE(dev_priv, sizeof(*cmd), bi->ctx->id); in vmw_binding_scrub_ib()
1272 cmd->body.sid = bi->res->id; in vmw_binding_scrub_ib()
1286 static int vmw_binding_scrub_uav(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_uav() argument
1288 struct vmw_ctx_binding_state *cbs = vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_uav()
1294 static int vmw_binding_scrub_cs_uav(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_cs_uav() argument
1296 struct vmw_ctx_binding_state *cbs = vmw_context_binding_state(bi->ctx); in vmw_binding_scrub_cs_uav()
1307 static int vmw_binding_scrub_so(struct vmw_ctx_bindinfo *bi, bool rebind) in vmw_binding_scrub_so() argument
1310 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_so()
1311 struct vmw_private *dev_priv = bi->ctx->dev_priv; in vmw_binding_scrub_so()
1317 cmd = VMW_CMD_CTX_RESERVE(dev_priv, sizeof(*cmd), bi->ctx->id); in vmw_binding_scrub_so()
1323 cmd->body.soid = rebind ? bi->res->id : SVGA3D_INVALID_ID; in vmw_binding_scrub_so()