Lines Matching refs:vcotbl

163 	struct vmw_cotable *vcotbl = vmw_cotable(res);  in vmw_cotable_unscrub()  local
181 WARN_ON(vcotbl->ctx->id == SVGA3D_INVALID_ID); in vmw_cotable_unscrub()
185 cmd->body.cid = vcotbl->ctx->id; in vmw_cotable_unscrub()
186 cmd->body.type = vcotbl->type; in vmw_cotable_unscrub()
188 cmd->body.validSizeInBytes = vcotbl->size_read_back; in vmw_cotable_unscrub()
191 vcotbl->scrubbed = false; in vmw_cotable_unscrub()
241 struct vmw_cotable *vcotbl = vmw_cotable(res); in vmw_cotable_scrub() local
254 if (vcotbl->scrubbed) in vmw_cotable_scrub()
257 if (co_info[vcotbl->type].unbind_func) in vmw_cotable_scrub()
258 co_info[vcotbl->type].unbind_func(dev_priv, in vmw_cotable_scrub()
259 &vcotbl->resource_list, in vmw_cotable_scrub()
272 vcotbl->size_read_back = 0; in vmw_cotable_scrub()
277 cmd0->body.cid = vcotbl->ctx->id; in vmw_cotable_scrub()
278 cmd0->body.type = vcotbl->type; in vmw_cotable_scrub()
280 vcotbl->size_read_back = res->backup_size; in vmw_cotable_scrub()
284 cmd1->body.cid = vcotbl->ctx->id; in vmw_cotable_scrub()
285 cmd1->body.type = vcotbl->type; in vmw_cotable_scrub()
289 vcotbl->scrubbed = true; in vmw_cotable_scrub()
311 struct vmw_cotable *vcotbl = vmw_cotable(res); in vmw_cotable_unbind() local
323 if (!vcotbl->scrubbed) in vmw_cotable_unbind()
324 vmw_dx_context_scrub_cotables(vcotbl->ctx, readback); in vmw_cotable_unbind()
344 struct vmw_cotable *vcotbl = vmw_cotable(res); in vmw_cotable_readback() local
353 if (!vcotbl->scrubbed) { in vmw_cotable_readback()
363 cmd->body.cid = vcotbl->ctx->id; in vmw_cotable_readback()
364 cmd->body.type = vcotbl->type; in vmw_cotable_readback()
365 vcotbl->size_read_back = res->backup_size; in vmw_cotable_readback()
392 struct vmw_cotable *vcotbl = vmw_cotable(res); in vmw_cotable_resize() local
396 size_t old_size_read_back = vcotbl->size_read_back; in vmw_cotable_resize()
406 cur_size_read_back = vcotbl->size_read_back; in vmw_cotable_resize()
407 vcotbl->size_read_back = old_size_read_back; in vmw_cotable_resize()
467 vcotbl->size_read_back = cur_size_read_back; in vmw_cotable_resize()
478 vcotbl->size_read_back = old_size_read_back; in vmw_cotable_resize()
486 res->id = vcotbl->type; in vmw_cotable_resize()
513 struct vmw_cotable *vcotbl = vmw_cotable(res); in vmw_cotable_create() local
519 needed_size = (vcotbl->seen_entries + 1) * co_info[vcotbl->type].size; in vmw_cotable_create()
524 if (vcotbl->scrubbed && !list_empty(&res->mob_head)) { in vmw_cotable_create()
529 res->id = vcotbl->type; in vmw_cotable_create()
575 struct vmw_cotable *vcotbl; in vmw_cotable_alloc() local
591 vcotbl = kzalloc(sizeof(*vcotbl), GFP_KERNEL); in vmw_cotable_alloc()
592 if (unlikely(!vcotbl)) { in vmw_cotable_alloc()
597 ret = vmw_resource_init(dev_priv, &vcotbl->res, true, in vmw_cotable_alloc()
602 INIT_LIST_HEAD(&vcotbl->resource_list); in vmw_cotable_alloc()
603 vcotbl->res.id = type; in vmw_cotable_alloc()
604 vcotbl->res.backup_size = PAGE_SIZE; in vmw_cotable_alloc()
607 vcotbl->res.backup_size = co_info[type].min_initial_entries * in vmw_cotable_alloc()
609 vcotbl->res.backup_size = in vmw_cotable_alloc()
610 (vcotbl->res.backup_size + PAGE_SIZE - 1) & PAGE_MASK; in vmw_cotable_alloc()
613 vcotbl->scrubbed = true; in vmw_cotable_alloc()
614 vcotbl->seen_entries = -1; in vmw_cotable_alloc()
615 vcotbl->type = type; in vmw_cotable_alloc()
616 vcotbl->ctx = ctx; in vmw_cotable_alloc()
618 vmw_resource_activate(&vcotbl->res, vmw_hw_cotable_destroy); in vmw_cotable_alloc()
620 return &vcotbl->res; in vmw_cotable_alloc()
623 kfree(vcotbl); in vmw_cotable_alloc()
637 struct vmw_cotable *vcotbl = vmw_cotable(res); in vmw_cotable_notify() local
641 (unsigned) vcotbl->type, id); in vmw_cotable_notify()
645 if (vcotbl->seen_entries < id) { in vmw_cotable_notify()
648 vcotbl->seen_entries = id; in vmw_cotable_notify()
663 struct vmw_cotable *vcotbl = in vmw_cotable_add_resource() local
666 list_add_tail(head, &vcotbl->resource_list); in vmw_cotable_add_resource()