Lines Matching refs:trans
125 struct virgl_transfer *trans;
127 trans = virgl_resource_create_transfer(vctx, resource,
129 if (!trans)
168 &trans->resolve_transfer);
172 /* trans->resolve_transfer owns resolve_tmp now */
175 *transfer = &trans->base;
177 trans->base.stride = trans->resolve_transfer->stride;
178 trans->base.layer_stride = trans->resolve_transfer->layer_stride;
190 trans->base.stride,
191 trans->base.layer_stride,
195 trans->resolve_transfer->stride,
196 trans->resolve_transfer->layer_stride,
209 pipe_resource_reference(&trans->resolve_transfer->resource, NULL);
211 return ptr + trans->offset;
216 virgl_resource_destroy_transfer(vctx, trans);
248 struct virgl_transfer *trans,
252 vws->transfer_put(vws, trans->hw_res, box,
253 trans->base.stride, trans->l_stride, trans->offset,
254 trans->base.level);
261 struct virgl_transfer *trans = virgl_transfer(transfer);
267 if (trans->resolve_transfer && (trans->base.resource->format ==
268 trans->resolve_transfer->resource->format)) {
269 flush_data(ctx, virgl_transfer(trans->resolve_transfer),
270 &trans->resolve_transfer->box);
279 trans->base.resource, trans->base.level,
281 trans->resolve_transfer->resource, 0,
282 &trans->resolve_transfer->box);
288 if (trans->resolve_transfer) {
290 virgl_transfer(trans->resolve_transfer));
294 if (trans->copy_src_hw_res && trans->direction == VIRGL_TRANSFER_TO_HOST) {
295 virgl_encode_copy_transfer(vctx, trans);
296 virgl_resource_destroy_transfer(vctx, trans);
297 } else if (trans->copy_src_hw_res && trans->direction == VIRGL_TRANSFER_FROM_HOST) {
299 virgl_resource_destroy_transfer(vctx, trans);
301 virgl_transfer_queue_unmap(&vctx->queue, trans);
304 virgl_resource_destroy_transfer(vctx, trans);