Lines Matching refs:shader
43 struct vmw_shader shader; member
164 struct vmw_shader *shader = vmw_res_to_shader(res); in vmw_gb_shader_init() local
183 shader->size = size; in vmw_gb_shader_init()
184 shader->type = type; in vmw_gb_shader_init()
185 shader->num_input_sig = num_input_sig; in vmw_gb_shader_init()
186 shader->num_output_sig = num_output_sig; in vmw_gb_shader_init()
199 struct vmw_shader *shader = vmw_res_to_shader(res); in vmw_gb_shader_create() local
231 cmd->body.type = shader->type; in vmw_gb_shader_create()
232 cmd->body.sizeInBytes = shader->size; in vmw_gb_shader_create()
364 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_commit_notify() local
369 vmw_cotable_add_resource(shader->cotable, in vmw_dx_shader_commit_notify()
370 &shader->cotable_head); in vmw_dx_shader_commit_notify()
371 shader->committed = true; in vmw_dx_shader_commit_notify()
372 res->id = shader->id; in vmw_dx_shader_commit_notify()
376 list_del_init(&shader->cotable_head); in vmw_dx_shader_commit_notify()
377 shader->committed = false; in vmw_dx_shader_commit_notify()
392 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_unscrub() local
399 if (!list_empty(&shader->cotable_head) || !shader->committed) in vmw_dx_shader_unscrub()
403 shader->ctx->id); in vmw_dx_shader_unscrub()
412 cmd->body.cid = shader->ctx->id; in vmw_dx_shader_unscrub()
413 cmd->body.shid = shader->id; in vmw_dx_shader_unscrub()
418 vmw_cotable_add_resource(shader->cotable, &shader->cotable_head); in vmw_dx_shader_unscrub()
434 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_create() local
437 WARN_ON_ONCE(!shader->committed); in vmw_dx_shader_create()
445 res->id = shader->id; in vmw_dx_shader_create()
482 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_scrub() local
489 if (list_empty(&shader->cotable_head)) in vmw_dx_shader_scrub()
492 WARN_ON_ONCE(!shader->committed); in vmw_dx_shader_scrub()
502 cmd->body.cid = shader->ctx->id; in vmw_dx_shader_scrub()
508 list_del_init(&shader->cotable_head); in vmw_dx_shader_scrub()
583 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_res_free() local
585 vmw_resource_unreference(&shader->cotable); in vmw_dx_shader_res_free()
586 kfree(shader); in vmw_dx_shader_res_free()
606 struct vmw_dx_shader *shader; in vmw_dx_shader_add() local
612 vmw_shader_dx_size = ttm_round_pot(sizeof(*shader)); in vmw_dx_shader_add()
626 shader = kmalloc(sizeof(*shader), GFP_KERNEL); in vmw_dx_shader_add()
627 if (!shader) { in vmw_dx_shader_add()
632 res = &shader->res; in vmw_dx_shader_add()
633 shader->ctx = ctx; in vmw_dx_shader_add()
634 shader->cotable = vmw_context_cotable(ctx, SVGA_COTABLE_DXSHADER); in vmw_dx_shader_add()
635 shader->id = user_key; in vmw_dx_shader_add()
636 shader->committed = false; in vmw_dx_shader_add()
637 INIT_LIST_HEAD(&shader->cotable_head); in vmw_dx_shader_add()
653 res->id = shader->id; in vmw_dx_shader_add()
672 shader.res); in vmw_user_shader_base_to_res()
678 container_of(res, struct vmw_user_shader, shader.res); in vmw_user_shader_free()
688 struct vmw_shader *shader = vmw_res_to_shader(res); in vmw_shader_free() local
691 kfree(shader); in vmw_shader_free()
760 res = &ushader->shader.res; in vmw_user_shader_alloc()
800 struct vmw_shader *shader; in vmw_shader_alloc() local
822 shader = kzalloc(sizeof(*shader), GFP_KERNEL); in vmw_shader_alloc()
823 if (unlikely(shader == NULL)) { in vmw_shader_alloc()
830 res = &shader->res; in vmw_shader_alloc()