diff options
author | Dave Airlie <[email protected]> | 2018-04-23 09:56:43 +1000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2018-04-24 09:05:38 +1000 |
commit | 5e2ef28390bdb6fdaff885f147c9b29686fa6a46 (patch) | |
tree | c269bdd6a15728752b05165591dbaf8c3d5aa35d /src | |
parent | b25f6cde89c21b19f4582f19630f6d7e96a04913 (diff) |
ac/info: move gs table depth to common code.
Reviewed-by: Nicolai Hähnle <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/amd/common/ac_gpu_info.c | 33 | ||||
-rw-r--r-- | src/amd/common/ac_gpu_info.h | 1 |
2 files changed, 34 insertions, 0 deletions
diff --git a/src/amd/common/ac_gpu_info.c b/src/amd/common/ac_gpu_info.c index ef0364b0534..12b03c4ea29 100644 --- a/src/amd/common/ac_gpu_info.c +++ b/src/amd/common/ac_gpu_info.c @@ -521,3 +521,36 @@ void ac_print_gpu_info(struct radeon_info *info) G_0098F8_NUM_LOWER_PIPES(info->gb_addr_config)); } } + +int +ac_get_gs_table_depth(enum chip_class chip_class, enum radeon_family family) +{ + if (chip_class >= GFX9) + return -1; + + switch (family) { + case CHIP_OLAND: + case CHIP_HAINAN: + case CHIP_KAVERI: + case CHIP_KABINI: + case CHIP_MULLINS: + case CHIP_ICELAND: + case CHIP_CARRIZO: + case CHIP_STONEY: + return 16; + case CHIP_TAHITI: + case CHIP_PITCAIRN: + case CHIP_VERDE: + case CHIP_BONAIRE: + case CHIP_HAWAII: + case CHIP_TONGA: + case CHIP_FIJI: + case CHIP_POLARIS10: + case CHIP_POLARIS11: + case CHIP_POLARIS12: + case CHIP_VEGAM: + return 32; + default: + unreachable("Unknown GPU"); + } +} diff --git a/src/amd/common/ac_gpu_info.h b/src/amd/common/ac_gpu_info.h index 75cb98020d2..003d340e0c1 100644 --- a/src/amd/common/ac_gpu_info.h +++ b/src/amd/common/ac_gpu_info.h @@ -130,6 +130,7 @@ void ac_compute_driver_uuid(char *uuid, size_t size); void ac_compute_device_uuid(struct radeon_info *info, char *uuid, size_t size); void ac_print_gpu_info(struct radeon_info *info); +int ac_get_gs_table_depth(enum chip_class chip_class, enum radeon_family family); #ifdef __cplusplus } |