Lines Matching refs:shader
44 struct vmw_shader shader; member
165 struct vmw_shader *shader = vmw_res_to_shader(res); in vmw_gb_shader_init() local
184 shader->size = size; in vmw_gb_shader_init()
185 shader->type = type; in vmw_gb_shader_init()
186 shader->num_input_sig = num_input_sig; in vmw_gb_shader_init()
187 shader->num_output_sig = num_output_sig; in vmw_gb_shader_init()
200 struct vmw_shader *shader = vmw_res_to_shader(res); in vmw_gb_shader_create() local
232 cmd->body.type = shader->type; in vmw_gb_shader_create()
233 cmd->body.sizeInBytes = shader->size; in vmw_gb_shader_create()
365 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_commit_notify() local
370 vmw_cotable_add_resource(shader->cotable, in vmw_dx_shader_commit_notify()
371 &shader->cotable_head); in vmw_dx_shader_commit_notify()
372 shader->committed = true; in vmw_dx_shader_commit_notify()
373 res->id = shader->id; in vmw_dx_shader_commit_notify()
377 list_del_init(&shader->cotable_head); in vmw_dx_shader_commit_notify()
378 shader->committed = false; in vmw_dx_shader_commit_notify()
393 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_unscrub() local
400 if (!list_empty(&shader->cotable_head) || !shader->committed) in vmw_dx_shader_unscrub()
404 shader->ctx->id); in vmw_dx_shader_unscrub()
413 cmd->body.cid = shader->ctx->id; in vmw_dx_shader_unscrub()
414 cmd->body.shid = shader->id; in vmw_dx_shader_unscrub()
419 vmw_cotable_add_resource(shader->cotable, &shader->cotable_head); in vmw_dx_shader_unscrub()
435 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_create() local
438 WARN_ON_ONCE(!shader->committed); in vmw_dx_shader_create()
446 res->id = shader->id; in vmw_dx_shader_create()
483 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_scrub() local
490 if (list_empty(&shader->cotable_head)) in vmw_dx_shader_scrub()
493 WARN_ON_ONCE(!shader->committed); in vmw_dx_shader_scrub()
503 cmd->body.cid = shader->ctx->id; in vmw_dx_shader_scrub()
509 list_del_init(&shader->cotable_head); in vmw_dx_shader_scrub()
584 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_res_free() local
586 vmw_resource_unreference(&shader->cotable); in vmw_dx_shader_res_free()
587 kfree(shader); in vmw_dx_shader_res_free()
607 struct vmw_dx_shader *shader; in vmw_dx_shader_add() local
617 vmw_shader_dx_size = ttm_round_pot(sizeof(*shader)); in vmw_dx_shader_add()
631 shader = kmalloc(sizeof(*shader), GFP_KERNEL); in vmw_dx_shader_add()
632 if (!shader) { in vmw_dx_shader_add()
637 res = &shader->res; in vmw_dx_shader_add()
638 shader->ctx = ctx; in vmw_dx_shader_add()
639 shader->cotable = vmw_context_cotable(ctx, SVGA_COTABLE_DXSHADER); in vmw_dx_shader_add()
640 shader->id = user_key; in vmw_dx_shader_add()
641 shader->committed = false; in vmw_dx_shader_add()
642 INIT_LIST_HEAD(&shader->cotable_head); in vmw_dx_shader_add()
658 res->id = shader->id; in vmw_dx_shader_add()
677 shader.res); in vmw_user_shader_base_to_res()
683 container_of(res, struct vmw_user_shader, shader.res); in vmw_user_shader_free()
693 struct vmw_shader *shader = vmw_res_to_shader(res); in vmw_shader_free() local
696 kfree(shader); in vmw_shader_free()
769 res = &ushader->shader.res; in vmw_user_shader_alloc()
809 struct vmw_shader *shader; in vmw_shader_alloc() local
835 shader = kzalloc(sizeof(*shader), GFP_KERNEL); in vmw_shader_alloc()
836 if (unlikely(!shader)) { in vmw_shader_alloc()
843 res = &shader->res; in vmw_shader_alloc()