mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 06:58:05 +02:00
etnaviv: use TX_SEAMLESS_CUBE to determine seamless cubemap support
I have no idea why the HWDB includes two distinct bits that seem to relate to seamless cubemap support. However, the only cores where both bits disagree are NPUs (which don't have any samplers) and the GC880, which is currently special cased in the driver. Use TX_SEAMLESS_CUBE to determine seamless cubemap support, which seems to accurately reflect the real support status. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35666>
This commit is contained in:
parent
d31b0c9b3b
commit
4b424e9b86
3 changed files with 3 additions and 8 deletions
|
|
@ -69,7 +69,7 @@ etna_query_feature_db(struct etna_core_info *info)
|
|||
ETNA_FEATURE(REG_SuperTiledTexture, SUPERTILED_TEXTURE);
|
||||
ETNA_FEATURE(REG_LogicOp, LOGIC_OP);
|
||||
ETNA_FEATURE(REG_Halti1, HALTI1);
|
||||
ETNA_FEATURE(REG_SeamlessCubeMap, SEAMLESS_CUBE_MAP);
|
||||
ETNA_FEATURE(TX_SEAMLESS_CUBE, SEAMLESS_CUBE_MAP);
|
||||
ETNA_FEATURE(REG_LineLoop, LINE_LOOP);
|
||||
ETNA_FEATURE(REG_TextureTileStatus, TEXTURE_TILED_READ);
|
||||
ETNA_FEATURE(REG_BugFixes8, BUG_FIXES8);
|
||||
|
|
|
|||
|
|
@ -89,8 +89,6 @@ struct etna_specs {
|
|||
unsigned tex_astc : 1;
|
||||
/* has BLT engine instead of RS */
|
||||
unsigned use_blt : 1;
|
||||
/* supports seamless cube map */
|
||||
unsigned seamless_cube_map : 1;
|
||||
/* number of bits per TS tile */
|
||||
unsigned bits_per_tile;
|
||||
/* clear value for TS (dependent on bits_per_tile) */
|
||||
|
|
|
|||
|
|
@ -277,8 +277,8 @@ etna_init_screen_caps(struct etna_screen *screen)
|
|||
|
||||
caps->min_texel_offset = -8;
|
||||
caps->max_texel_offset = 7;
|
||||
caps->seamless_cube_map = screen->specs.seamless_cube_map;
|
||||
caps->seamless_cube_map_per_texture = screen->specs.seamless_cube_map;
|
||||
caps->seamless_cube_map_per_texture =
|
||||
caps->seamless_cube_map = VIV_FEATURE(screen, ETNA_FEATURE_SEAMLESS_CUBE_MAP);
|
||||
|
||||
/* Render targets. */
|
||||
caps->max_render_targets = VIV_FEATURE(screen, ETNA_FEATURE_HALTI2) ?
|
||||
|
|
@ -826,9 +826,6 @@ etna_get_specs(struct etna_screen *screen)
|
|||
VIV_FEATURE(screen, ETNA_FEATURE_SH_NO_ONECONST_LIMIT);
|
||||
screen->specs.v4_compression =
|
||||
VIV_FEATURE(screen, ETNA_FEATURE_V4_COMPRESSION);
|
||||
screen->specs.seamless_cube_map =
|
||||
(screen->info->model != 0x880) && /* Seamless cubemap is broken on GC880? */
|
||||
VIV_FEATURE(screen, ETNA_FEATURE_SEAMLESS_CUBE_MAP);
|
||||
|
||||
if (screen->info->halti >= 5) {
|
||||
/* GC7000 - this core must load shaders from memory. */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue