i965: Configure bufmgr debug options from intel_screen.c
We need the debug flag parsing and INTEL_DEBUG in the compiler, but we don't want the dependency on bufmgr (libdrm_intel) in there. Move to intel_screen.c. There are now only two lines left in brw_process_intel_debug_variable(), but we keep it in intel_debug.h to avoid having to expose 'debug_control' as a global variable. Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com> Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
This commit is contained in:
@@ -92,22 +92,10 @@ intel_debug_flag_for_shader_stage(gl_shader_stage stage)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
brw_process_intel_debug_variable(struct intel_screen *screen)
|
brw_process_intel_debug_variable(void)
|
||||||
{
|
{
|
||||||
uint64_t intel_debug = parse_debug_string(getenv("INTEL_DEBUG"), debug_control);
|
uint64_t intel_debug = parse_debug_string(getenv("INTEL_DEBUG"), debug_control);
|
||||||
(void) p_atomic_cmpxchg(&INTEL_DEBUG, 0, intel_debug);
|
(void) p_atomic_cmpxchg(&INTEL_DEBUG, 0, intel_debug);
|
||||||
|
|
||||||
if (INTEL_DEBUG & DEBUG_BUFMGR)
|
|
||||||
dri_bufmgr_set_debug(screen->bufmgr, true);
|
|
||||||
|
|
||||||
if ((INTEL_DEBUG & DEBUG_SHADER_TIME) && screen->devinfo->gen < 7) {
|
|
||||||
fprintf(stderr,
|
|
||||||
"shader_time debugging requires gen7 (Ivybridge) or better.\n");
|
|
||||||
INTEL_DEBUG &= ~DEBUG_SHADER_TIME;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (INTEL_DEBUG & DEBUG_AUB)
|
|
||||||
drm_intel_bufmgr_gem_set_aub_dump(screen->bufmgr, true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -115,8 +115,6 @@ extern uint64_t INTEL_DEBUG;
|
|||||||
|
|
||||||
extern uint64_t intel_debug_flag_for_shader_stage(gl_shader_stage stage);
|
extern uint64_t intel_debug_flag_for_shader_stage(gl_shader_stage stage);
|
||||||
|
|
||||||
struct intel_screen;
|
extern void brw_process_intel_debug_variable(void);
|
||||||
|
|
||||||
extern void brw_process_intel_debug_variable(struct intel_screen *);
|
|
||||||
|
|
||||||
extern bool brw_env_var_as_boolean(const char *var_name, bool default_value);
|
extern bool brw_env_var_as_boolean(const char *var_name, bool default_value);
|
||||||
|
@@ -1421,7 +1421,19 @@ __DRIconfig **intelInitScreen2(__DRIscreen *psp)
|
|||||||
if (!intelScreen->devinfo)
|
if (!intelScreen->devinfo)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
brw_process_intel_debug_variable(intelScreen);
|
brw_process_intel_debug_variable();
|
||||||
|
|
||||||
|
if (INTEL_DEBUG & DEBUG_BUFMGR)
|
||||||
|
dri_bufmgr_set_debug(intelScreen->bufmgr, true);
|
||||||
|
|
||||||
|
if ((INTEL_DEBUG & DEBUG_SHADER_TIME) && intelScreen->devinfo->gen < 7) {
|
||||||
|
fprintf(stderr,
|
||||||
|
"shader_time debugging requires gen7 (Ivybridge) or better.\n");
|
||||||
|
INTEL_DEBUG &= ~DEBUG_SHADER_TIME;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (INTEL_DEBUG & DEBUG_AUB)
|
||||||
|
drm_intel_bufmgr_gem_set_aub_dump(intelScreen->bufmgr, true);
|
||||||
|
|
||||||
intelScreen->hw_must_use_separate_stencil = intelScreen->devinfo->gen >= 7;
|
intelScreen->hw_must_use_separate_stencil = intelScreen->devinfo->gen >= 7;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user