diff --git a/src/amd/common/ac_gpu_info.c b/src/amd/common/ac_gpu_info.c index 3687e20f8d6..5be47ffaef1 100644 --- a/src/amd/common/ac_gpu_info.c +++ b/src/amd/common/ac_gpu_info.c @@ -1101,6 +1101,12 @@ bool ac_query_gpu_info(int fd, void *dev_p, struct radeon_info *info) info->has_vgt_flush_ngg_legacy_bug = info->gfx_level == GFX10 || info->family == CHIP_NAVI21; + /* First Navi2x chips have a hw bug that doesn't allow to write + * depth/stencil from a FS for multi-pixel fragments. + */ + info->has_vrs_ds_export_bug = info->family == CHIP_NAVI21 || + info->family == CHIP_NAVI22; + /* HW bug workaround when CS threadgroups > 256 threads and async compute * isn't used, i.e. only one compute job can run at a time. If async * compute is possible, the threadgroup size must be limited to 256 threads diff --git a/src/amd/common/ac_gpu_info.h b/src/amd/common/ac_gpu_info.h index 4d34297ceb4..94b8f05b394 100644 --- a/src/amd/common/ac_gpu_info.h +++ b/src/amd/common/ac_gpu_info.h @@ -117,6 +117,7 @@ struct radeon_info { bool never_send_perfcounter_stop; bool discardable_allows_big_page; bool has_export_conflict_bug; + bool has_vrs_ds_export_bug; /* Display features. */ /* There are 2 display DCC codepaths, because display expects unaligned DCC. */