radeonsi: enable 64K x 64K textures

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38587>
This commit is contained in:
Marek Olšák 2025-11-21 20:30:29 -05:00 committed by Marge Bot
parent 6feb3e49f8
commit ae36b9e345
2 changed files with 4 additions and 5 deletions

View file

@ -1268,10 +1268,9 @@ void si_init_screen_caps(struct si_screen *sscreen)
caps->max_vertex_attrib_stride = 2048;
/* TODO: Gfx12 supports 64K textures, but Gallium can't represent them at the moment. */
caps->max_texture_2d_size = sscreen->info.gfx_level >= GFX12 ? 32768 : 16384;
caps->max_texture_2d_size = sscreen->info.gfx_level >= GFX12 ? 65536 : 16384;
caps->max_texture_cube_levels = sscreen->info.has_3d_cube_border_color_mipmap ?
(sscreen->info.gfx_level >= GFX12 ? 16 : 15) /* 32K : 16K */ : 0;
(sscreen->info.gfx_level >= GFX12 ? 17 : 15) /* 64K : 16K */ : 0;
caps->max_texture_3d_levels = sscreen->info.has_3d_cube_border_color_mipmap ?
/* This is limited by maximums that both the texture unit and layered rendering support. */
(sscreen->info.gfx_level >= GFX12 ? 15 : /* 16K */

View file

@ -447,8 +447,8 @@ struct si_surface {
struct pipe_surface base;
/* These can vary with block-compressed textures. */
uint16_t width0;
uint16_t height0;
unsigned width0;
unsigned height0;
bool color_initialized : 1;
bool depth_initialized : 1;