diff --git a/src/etnaviv/common/etna_core_info.h b/src/etnaviv/common/etna_core_info.h index 6cd3d1d2d72..7e967ee2678 100644 --- a/src/etnaviv/common/etna_core_info.h +++ b/src/etnaviv/common/etna_core_info.h @@ -56,6 +56,7 @@ enum etna_feature { ETNA_FEATURE_RA_WRITE_DEPTH, ETNA_FEATURE_CACHE128B256BPERLINE, ETNA_FEATURE_NEW_GPIPE, + ETNA_FEATURE_NO_ANISO, ETNA_FEATURE_NO_ASTC, ETNA_FEATURE_V4_COMPRESSION, ETNA_FEATURE_RS_NEW_BASEADDR, diff --git a/src/etnaviv/hwdb/etna_hwdb.c b/src/etnaviv/hwdb/etna_hwdb.c index 9115a9699b7..b3d844475a8 100644 --- a/src/etnaviv/hwdb/etna_hwdb.c +++ b/src/etnaviv/hwdb/etna_hwdb.c @@ -94,6 +94,7 @@ etna_query_feature_db(struct etna_core_info *info) ETNA_FEATURE(CACHE128B256BPERLINE, CACHE128B256BPERLINE); ETNA_FEATURE(NEW_GPIPE, NEW_GPIPE); + ETNA_FEATURE(NO_ANISTRO_FILTER, NO_ANISO); ETNA_FEATURE(NO_ASTC, NO_ASTC); ETNA_FEATURE(V4Compression, V4_COMPRESSION); diff --git a/src/gallium/drivers/etnaviv/etnaviv_screen.c b/src/gallium/drivers/etnaviv/etnaviv_screen.c index 5d446697ed9..48aaaad2f3d 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_screen.c +++ b/src/gallium/drivers/etnaviv/etnaviv_screen.c @@ -244,6 +244,8 @@ etna_init_screen_caps(struct etna_screen *screen) caps->primitive_restart = caps->primitive_restart_fixed_index = VIV_FEATURE(screen, ETNA_FEATURE_HALTI0); + caps->anisotropic_filter &= !VIV_FEATURE(screen, ETNA_FEATURE_NO_ANISO); + caps->alpha_test = !VIV_FEATURE(screen, ETNA_FEATURE_PE_NO_ALPHA_TEST); caps->draw_indirect = VIV_FEATURE(screen, ETNA_FEATURE_HALTI5);