diff options
author | Marek Olšák <marek.olsak@amd.com> | 2016-04-11 19:56:07 +0200 |
---|---|---|
committer | Marek Olšák <marek.olsak@amd.com> | 2016-04-12 14:29:48 +0200 |
commit | 5a4b74d1ba2c156766a7a5dbfef099c7db5d6694 (patch) | |
tree | 71de243318b9d8709e92c2436af86415f5e09a4f /src/gallium/drivers/radeon/r600_buffer_common.c | |
parent | a57309f807dc1e4450cd8c5ac132de0de4e17f89 (diff) |
gallium/radeon: relax requirements on VRAM placements on APUs
This makes Tonga with vramlimit=128 2x faster in Heaven.
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Diffstat (limited to 'src/gallium/drivers/radeon/r600_buffer_common.c')
-rw-r--r-- | src/gallium/drivers/radeon/r600_buffer_common.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeon/r600_buffer_common.c b/src/gallium/drivers/radeon/r600_buffer_common.c index 0f892c0e6e..ae4b57904f 100644 --- a/src/gallium/drivers/radeon/r600_buffer_common.c +++ b/src/gallium/drivers/radeon/r600_buffer_common.c @@ -163,6 +163,14 @@ bool r600_init_resource(struct r600_common_screen *rscreen, flags |= RADEON_FLAG_NO_CPU_ACCESS; } + /* If VRAM is just stolen system memory, allow both VRAM and GTT, + * whichever has free space. If a buffer is evicted from VRAM to GTT, + * it will stay there. + */ + if (!rscreen->info.has_dedicated_vram && + res->domains == RADEON_DOMAIN_VRAM) + res->domains = RADEON_DOMAIN_VRAM_GTT; + if (rscreen->debug_flags & DBG_NO_WC) flags &= ~RADEON_FLAG_GTT_WC; |