Lines Matching refs:transfer

881 panfrost_load_tiled_images(struct panfrost_transfer *transfer,
884 struct pipe_transfer *ptrans = &transfer->base;
900 void *dst = transfer->map + (ptrans->layer_stride * z);
914 panfrost_store_tiled_images(struct panfrost_transfer *transfer,
918 struct pipe_transfer *ptrans = &transfer->base;
926 void *src = transfer->map + (ptrans->layer_stride * z);
968 struct panfrost_transfer *transfer = rzalloc(pctx, struct panfrost_transfer);
969 transfer->base.level = level;
970 transfer->base.usage = usage;
971 transfer->base.box = *box;
973 pipe_resource_reference(&transfer->base.resource, resource);
974 *out_transfer = &transfer->base;
987 transfer->base.stride = staging->image.layout.slices[0].row_stride;
988 transfer->base.layer_stride =
991 transfer->staging.rsrc = &staging->base;
993 transfer->staging.box = *box;
994 transfer->staging.box.x = 0;
995 transfer->staging.box.y = 0;
996 transfer->staging.box.z = 0;
998 assert(transfer->staging.rsrc != NULL);
1003 pan_blit_to_staging(pctx, transfer);
1126 transfer->base.stride = box_blocks.width * bytes_per_block;
1127 transfer->base.layer_stride = transfer->base.stride * box_blocks.height;
1128 transfer->map = ralloc_size(transfer, transfer->base.layer_stride * box->depth);
1131 panfrost_load_tiled_images(transfer, rsrc);
1133 return transfer->map;
1146 transfer->base.stride = rsrc->image.layout.slices[level].row_stride;
1147 transfer->base.layer_stride =
1155 panfrost_minmax_cache_invalidate(rsrc->index_cache, &transfer->base);
1160 + box->z * transfer->base.layer_stride
1243 struct pipe_transfer *transfer)
1262 transfer->box.width == prsrc->base.width0 &&
1263 transfer->box.height == prsrc->base.height0 &&
1264 transfer->box.x == 0 &&
1265 transfer->box.y == 0;
1280 struct pipe_transfer *transfer)
1284 struct panfrost_transfer *trans = pan_transfer(transfer);
1285 struct panfrost_resource *prsrc = (struct panfrost_resource *) transfer->resource;
1288 if (transfer->usage & PIPE_MAP_WRITE)
1297 if (transfer->usage & PIPE_MAP_WRITE) {
1298 if (panfrost_should_linear_convert(dev, prsrc, transfer)) {
1324 if (transfer->usage & PIPE_MAP_WRITE) {
1325 BITSET_SET(prsrc->valid.data, transfer->level);
1328 if (panfrost_should_linear_convert(dev, prsrc, transfer)) {
1344 transfer->box.width,
1345 transfer->box.height,
1347 transfer->stride,
1358 transfer->box.x,
1359 transfer->box.x + transfer->box.width);
1361 panfrost_minmax_cache_invalidate(prsrc->index_cache, transfer);
1364 pipe_resource_reference(&transfer->resource, NULL);
1367 ralloc_free(transfer);
1372 struct pipe_transfer *transfer,
1375 struct panfrost_resource *rsc = pan_resource(transfer->resource);
1377 if (transfer->resource->target == PIPE_BUFFER) {
1379 transfer->box.x + box->x,
1380 transfer->box.x + box->x + box->width);
1382 BITSET_SET(rsc->valid.data, transfer->level);