Lines Matching refs:tex
905 struct r300_resource *tex,
912 struct pipe_resource *pt = &tex->b;
913 struct r300_texture_desc *desc = &tex->tex;
991 struct r300_resource *tex = r300_resource(surf->base.texture);
992 unsigned level = surf->base.u.tex.level;
994 r300_stride_to_width(surf->base.format, tex->tex.stride_in_bytes[level]);
1000 R300_DEPTHMACROTILE(tex->tex.macrotile[level]) |
1001 R300_DEPTHMICROTILE(tex->tex.microtile) |
1004 surf->pitch_zmask = tex->tex.zmask_stride_in_pixels[level];
1005 surf->pitch_hiz = tex->tex.hiz_stride_in_pixels[level];
1012 R300_COLOR_TILE(tex->tex.macrotile[level]) |
1013 R300_COLOR_MICROTILE(tex->tex.microtile) |
1018 surf->pitch_cmask = tex->tex.cmask_stride_in_pixels;
1029 struct r300_resource* tex = (struct r300_resource*)texture;
1031 if (!tex) {
1035 whandle->stride = tex->tex.stride_in_bytes[0];
1038 return rws->buffer_get_handle(rws, tex->buf, whandle);
1051 struct r300_resource *tex = NULL;
1054 tex = CALLOC_STRUCT(r300_resource);
1055 if (!tex) {
1059 pipe_reference_init(&tex->b.reference, 1);
1060 tex->b.screen = &rscreen->screen;
1061 tex->b.usage = base->usage;
1062 tex->b.bind = base->bind;
1063 tex->b.flags = base->flags;
1064 tex->tex.microtile = microtile;
1065 tex->tex.macrotile[0] = macrotile;
1066 tex->tex.stride_in_bytes_override = stride_in_bytes_override;
1067 tex->domain = (base->flags & R300_RESOURCE_FLAG_TRANSFER ||
1071 tex->buf = buffer;
1073 r300_texture_desc_init(rscreen, tex, base);
1076 if (tex->domain & RADEON_DOMAIN_VRAM &&
1077 tex->tex.size_in_bytes >= (uint64_t)rscreen->info.vram_size_kb * 1024) {
1078 tex->domain &= ~RADEON_DOMAIN_VRAM;
1079 tex->domain |= RADEON_DOMAIN_GTT;
1081 if (tex->domain & RADEON_DOMAIN_GTT &&
1082 tex->tex.size_in_bytes >= (uint64_t)rscreen->info.gart_size_kb * 1024) {
1083 tex->domain &= ~RADEON_DOMAIN_GTT;
1086 if (!tex->domain) {
1091 if (!tex->buf) {
1094 tex->domain & RADEON_DOMAIN_VRAM ? RADEON_DOMAIN_VRAM :
1097 tex->buf = rws->buffer_create(rws, tex->tex.size_in_bytes, 2048,
1103 if (!tex->buf) {
1114 tiling.u.legacy.microtile = tex->tex.microtile;
1115 tiling.u.legacy.macrotile = tex->tex.macrotile[0];
1116 tiling.u.legacy.stride = tex->tex.stride_in_bytes[0];
1117 rws->buffer_set_metadata(rws, tex->buf, &tiling, NULL);
1119 return tex;
1122 FREE(tex);
1199 struct r300_resource* tex = r300_resource(texture);
1201 unsigned level = surf_tmpl->u.tex.level;
1203 assert(surf_tmpl->u.tex.first_layer == surf_tmpl->u.tex.last_layer);
1214 surface->base.u.tex.level = level;
1215 surface->base.u.tex.first_layer = surf_tmpl->u.tex.first_layer;
1216 surface->base.u.tex.last_layer = surf_tmpl->u.tex.last_layer;
1218 surface->buf = tex->buf;
1221 surface->domain = tex->domain;
1225 surface->offset = r300_texture_get_offset(tex, level,
1226 surf_tmpl->u.tex.first_layer);
1230 surface->cbzb_allowed = tex->tex.cbzb_allowed[level];
1235 tex->b.nr_samples,
1236 tex->tex.microtile,
1237 tex->tex.macrotile[level],
1246 tex->tex.stride_in_bytes[level] * surface->cbzb_height;
1261 tex->tex.microtile ? "YES" : " NO",
1262 tex->tex.macrotile[level] ? "YES" : " NO");