Lines Matching refs:shader
45 struct vmw_shader shader; member
167 struct vmw_shader *shader = vmw_res_to_shader(res); in vmw_gb_shader_init() local
186 shader->size = size; in vmw_gb_shader_init()
187 shader->type = type; in vmw_gb_shader_init()
188 shader->num_input_sig = num_input_sig; in vmw_gb_shader_init()
189 shader->num_output_sig = num_output_sig; in vmw_gb_shader_init()
202 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()
357 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_commit_notify() local
362 vmw_cotable_add_resource(shader->cotable, in vmw_dx_shader_commit_notify()
363 &shader->cotable_head); in vmw_dx_shader_commit_notify()
364 shader->committed = true; in vmw_dx_shader_commit_notify()
365 res->id = shader->id; in vmw_dx_shader_commit_notify()
369 list_del_init(&shader->cotable_head); in vmw_dx_shader_commit_notify()
370 shader->committed = false; in vmw_dx_shader_commit_notify()
385 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_unscrub() local
392 if (!list_empty(&shader->cotable_head) || !shader->committed) in vmw_dx_shader_unscrub()
395 cmd = VMW_CMD_CTX_RESERVE(dev_priv, sizeof(*cmd), shader->ctx->id); in vmw_dx_shader_unscrub()
401 cmd->body.cid = shader->ctx->id; in vmw_dx_shader_unscrub()
402 cmd->body.shid = shader->id; in vmw_dx_shader_unscrub()
407 vmw_cotable_add_resource(shader->cotable, &shader->cotable_head); in vmw_dx_shader_unscrub()
423 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_create() local
426 WARN_ON_ONCE(!shader->committed); in vmw_dx_shader_create()
434 res->id = shader->id; in vmw_dx_shader_create()
471 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_scrub() local
478 if (list_empty(&shader->cotable_head)) in vmw_dx_shader_scrub()
481 WARN_ON_ONCE(!shader->committed); in vmw_dx_shader_scrub()
488 cmd->body.cid = shader->ctx->id; in vmw_dx_shader_scrub()
494 list_del_init(&shader->cotable_head); in vmw_dx_shader_scrub()
568 struct vmw_dx_shader *shader = vmw_res_to_dx_shader(res); in vmw_dx_shader_res_free() local
570 vmw_resource_unreference(&shader->cotable); in vmw_dx_shader_res_free()
571 kfree(shader); in vmw_dx_shader_res_free()
590 struct vmw_dx_shader *shader; in vmw_dx_shader_add() local
598 shader = kmalloc(sizeof(*shader), GFP_KERNEL); in vmw_dx_shader_add()
599 if (!shader) { in vmw_dx_shader_add()
603 res = &shader->res; in vmw_dx_shader_add()
604 shader->ctx = ctx; in vmw_dx_shader_add()
605 shader->cotable = vmw_resource_reference in vmw_dx_shader_add()
607 shader->id = user_key; in vmw_dx_shader_add()
608 shader->committed = false; in vmw_dx_shader_add()
609 INIT_LIST_HEAD(&shader->cotable_head); in vmw_dx_shader_add()
625 res->id = shader->id; in vmw_dx_shader_add()
644 shader.res); in vmw_user_shader_base_to_res()
650 container_of(res, struct vmw_user_shader, shader.res); in vmw_user_shader_free()
657 struct vmw_shader *shader = vmw_res_to_shader(res); in vmw_shader_free() local
659 kfree(shader); in vmw_shader_free()
705 res = &ushader->shader.res; in vmw_user_shader_alloc()
745 struct vmw_shader *shader; in vmw_shader_alloc() local
749 shader = kzalloc(sizeof(*shader), GFP_KERNEL); in vmw_shader_alloc()
750 if (unlikely(!shader)) { in vmw_shader_alloc()
755 res = &shader->res; in vmw_shader_alloc()