Lines Matching refs:tex
183 struct svga_texture *tex,
209 key->size.width = u_minify(tex->b.width0, start_mip);
210 key->size.height = u_minify(tex->b.height0, start_mip);
211 key->size.depth = zslice_pick < 0 ? u_minify(tex->b.depth0, start_mip) : 1;
217 key->sampleCount = tex->b.nr_samples > 1 ? tex->b.nr_samples : 0;
224 if (tex->b.target == PIPE_TEXTURE_CUBE && layer_pick < 0) {
227 } else if (tex->b.target == PIPE_TEXTURE_1D_ARRAY ||
228 tex->b.target == PIPE_TEXTURE_2D_ARRAY) {
237 if (cacheable && tex->backed_handle &&
238 memcmp(key, &tex->backed_key, sizeof *key) == 0) {
239 handle = tex->backed_handle;
240 needCopyResource = tex->backed_age < tex->age;
247 if (cacheable && !tex->backed_handle) {
248 tex->backed_handle = handle;
249 memcpy(&tex->backed_key, key, sizeof *key);
264 svga_texture_copy_handle_resource(svga, tex, handle,
268 tex->backed_age = tex->age;
290 struct svga_texture *tex = svga_texture(pt);
307 layer = surf_tmpl->u.tex.first_layer;
313 layer = surf_tmpl->u.tex.first_layer;
315 nlayers = surf_tmpl->u.tex.last_layer - surf_tmpl->u.tex.first_layer + 1;
319 zslice = surf_tmpl->u.tex.first_layer;
326 s->base.width = u_minify(pt->width0, surf_tmpl->u.tex.level);
327 s->base.height = u_minify(pt->height0, surf_tmpl->u.tex.level);
328 s->base.u.tex.level = surf_tmpl->u.tex.level;
329 s->base.u.tex.first_layer = surf_tmpl->u.tex.first_layer;
330 s->base.u.tex.last_layer = surf_tmpl->u.tex.last_layer;
346 if (tex->imported) {
348 format = tex->key.format;
363 pt, surf_tmpl->u.tex.level, layer, zslice, s);
395 s->handle = svga_texture_view_surface(svga, tex, bind, flags,
396 tex->key.format,
397 surf_tmpl->u.tex.level, 1,
412 pt, surf_tmpl->u.tex.level, layer, zslice, s);
416 s->handle = tex->handle;
419 s->real_level = surf_tmpl->u.tex.level;
446 if (surf_tmpl->u.tex.level != 0 &&
471 struct svga_texture *tex = svga_texture(s->base.texture);
480 &tex->b,
490 else if (s->backed->handle != tex->handle &&
491 s->backed->age < tex->age) {
502 switch (tex->b.target) {
507 layer = s->base.u.tex.first_layer;
512 zslice = s->base.u.tex.first_layer;
515 svga_texture_copy_handle_resource(svga, tex, bs->handle,
518 zslice, s->base.u.tex.level, layer);
522 s->backed->age = tex->age;
597 desc.tex.mipSlice = s->real_level;
598 desc.tex.firstArraySlice = s->real_layer + s->real_zslice;
599 desc.tex.arraySize =
600 s->base.u.tex.last_layer - s->base.u.tex.first_layer + 1;
681 SVGA_DBG(DEBUG_DMA, "unref sid %p (tex surface)\n", s->handle);
723 struct svga_texture *tex = svga_texture(surf->texture);
728 if (s->handle == tex->handle) {
730 svga_define_texture_level(tex, surf->u.tex.first_layer,
731 surf->u.tex.level);
743 if (s->handle == tex->handle)
744 svga_age_texture_view(tex, surf->u.tex.level);
785 struct svga_texture *tex = svga_texture(surf->texture);
802 svga_age_texture_view(tex, surf->u.tex.level);
804 if (s->handle != tex->handle) {
808 unsigned numMipLevels = tex->b.last_level + 1;
810 unsigned dstLevel = surf->u.tex.level;
811 unsigned width = u_minify(tex->b.width0, dstLevel);
812 unsigned height = u_minify(tex->b.height0, dstLevel);
816 layer = surf->u.tex.first_layer;
822 layer = surf->u.tex.first_layer;
823 nlayers = surf->u.tex.last_layer - surf->u.tex.first_layer + 1;
826 zslice = surf->u.tex.first_layer;
832 surf, tex, surf->u.tex.level);
843 tex->handle, dstSubResource, 0, 0, zslice,
845 svga_define_texture_level(tex, layer + i, dstLevel);
853 tex->handle, 0, 0, zslice, dstLevel,
857 svga_define_texture_level(tex, layer + i, dstLevel);
862 s->age = tex->age;
867 if (tex->backed_handle == s->handle) {
868 tex->backed_age = tex->age;
913 struct svga_texture *tex = svga_texture(surf->texture);
915 return s->dirty && s->handle != tex->handle;