radeonsi: add radeonsi_zerovram driconfig option
More and more games seem to require this so lets make it a config option. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
parent
406c3d748d
commit
5566dd8a61
3 changed files with 13 additions and 3 deletions
|
|
@ -3,6 +3,7 @@ DRI_CONF_SECTION_PERFORMANCE
|
|||
DRI_CONF_RADEONSI_ENABLE_SISCHED("false")
|
||||
DRI_CONF_RADEONSI_ASSUME_NO_Z_FIGHTS("false")
|
||||
DRI_CONF_RADEONSI_COMMUTATIVE_BLEND_ADD("false")
|
||||
DRI_CONF_RADEONSI_ZERO_ALL_VRAM_ALLOCS("false")
|
||||
DRI_CONF_SECTION_END
|
||||
|
||||
DRI_CONF_SECTION_DEBUG
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@
|
|||
|
||||
#include "util/u_hash_table.h"
|
||||
#include "util/hash_table.h"
|
||||
#include "util/xmlconfig.h"
|
||||
#include <amdgpu_drm.h>
|
||||
#include <xf86drm.h>
|
||||
#include <stdio.h>
|
||||
|
|
@ -49,7 +50,9 @@ static simple_mtx_t dev_tab_mutex = _SIMPLE_MTX_INITIALIZER_NP;
|
|||
DEBUG_GET_ONCE_BOOL_OPTION(all_bos, "RADEON_ALL_BOS", false)
|
||||
|
||||
/* Helper function to do the ioctls needed for setup and init. */
|
||||
static bool do_winsys_init(struct amdgpu_winsys *ws, int fd)
|
||||
static bool do_winsys_init(struct amdgpu_winsys *ws,
|
||||
const struct pipe_screen_config *config,
|
||||
int fd)
|
||||
{
|
||||
if (!ac_query_gpu_info(fd, ws->dev, &ws->info, &ws->amdinfo))
|
||||
goto fail;
|
||||
|
|
@ -63,7 +66,8 @@ static bool do_winsys_init(struct amdgpu_winsys *ws, int fd)
|
|||
ws->check_vm = strstr(debug_get_option("R600_DEBUG", ""), "check_vm") != NULL;
|
||||
ws->debug_all_bos = debug_get_option_all_bos();
|
||||
ws->reserve_vmid = strstr(debug_get_option("R600_DEBUG", ""), "reserve_vmid") != NULL;
|
||||
ws->zero_all_vram_allocs = strstr(debug_get_option("R600_DEBUG", ""), "zerovram") != NULL;
|
||||
ws->zero_all_vram_allocs = strstr(debug_get_option("R600_DEBUG", ""), "zerovram") != NULL ||
|
||||
driQueryOptionb(config->options, "radeonsi_zerovram");
|
||||
|
||||
return true;
|
||||
|
||||
|
|
@ -279,7 +283,7 @@ amdgpu_winsys_create(int fd, const struct pipe_screen_config *config,
|
|||
ws->info.drm_major = drm_major;
|
||||
ws->info.drm_minor = drm_minor;
|
||||
|
||||
if (!do_winsys_init(ws, fd))
|
||||
if (!do_winsys_init(ws, config, fd))
|
||||
goto fail_alloc;
|
||||
|
||||
/* Create managers. */
|
||||
|
|
|
|||
|
|
@ -414,3 +414,8 @@ DRI_CONF_OPT_END
|
|||
DRI_CONF_OPT_BEGIN_B(radeonsi_clear_db_cache_before_clear, def) \
|
||||
DRI_CONF_DESC(en,"Clear DB cache before fast depth clear") \
|
||||
DRI_CONF_OPT_END
|
||||
|
||||
#define DRI_CONF_RADEONSI_ZERO_ALL_VRAM_ALLOCS(def) \
|
||||
DRI_CONF_OPT_BEGIN_B(radeonsi_zerovram, def) \
|
||||
DRI_CONF_DESC(en,"Zero all vram allocations") \
|
||||
DRI_CONF_OPT_END
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue