diff options
author | Marek Olšák <[email protected]> | 2018-06-08 19:09:02 -0400 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2018-06-19 12:52:28 -0400 |
commit | a2451a4c2343acf0e6b79a50a8bd2febd2572cc6 (patch) | |
tree | 8c1f8c5f0ee33b786fae3e99838a081e9ee81d84 /src/gallium/winsys/radeon | |
parent | 166c00e28e453e1510e2cabed028eb18bf7d8bd9 (diff) |
ac/gpu_info: add radeon_info::num_tcc_blocks
The values for the radeon winsys were copied from the kernel driver.
Tested-by: Dieter Nützel <[email protected]>
Diffstat (limited to 'src/gallium/winsys/radeon')
-rw-r--r-- | src/gallium/winsys/radeon/drm/radeon_drm_winsys.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c index 76eea67521d..86df2ac055e 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c @@ -471,6 +471,32 @@ static bool do_winsys_init(struct radeon_drm_winsys *ws) radeon_get_drm_value(ws->fd, RADEON_INFO_MAX_SE, NULL, &ws->info.max_se); + switch (ws->info.family) { + case CHIP_HAINAN: + case CHIP_KABINI: + case CHIP_MULLINS: + ws->info.num_tcc_blocks = 2; + break; + case CHIP_VERDE: + case CHIP_OLAND: + case CHIP_BONAIRE: + case CHIP_KAVERI: + ws->info.num_tcc_blocks = 4; + break; + case CHIP_PITCAIRN: + ws->info.num_tcc_blocks = 8; + break; + case CHIP_TAHITI: + ws->info.num_tcc_blocks = 12; + break; + case CHIP_HAWAII: + ws->info.num_tcc_blocks = 16; + break; + default: + ws->info.num_tcc_blocks = 0; + break; + } + if (!ws->info.max_se) { switch (ws->info.family) { default: |