diff --git a/docs/envvars.rst b/docs/envvars.rst index 060119cdd41..a79a785f6cb 100644 --- a/docs/envvars.rst +++ b/docs/envvars.rst @@ -393,12 +393,6 @@ Intel driver environment variables assembly. -Radeon driver environment variables (radeon, r200, and r300g) -------------------------------------------------------------- - -:envvar:`RADEON_NO_TCL` - if set, disable hardware-accelerated Transform/Clip/Lighting. - DRI environment variables ------------------------- @@ -1026,6 +1020,8 @@ r300 driver environment variables Disable AA compression and fast AA clear ``use_tgsi`` Request TGSI shaders from the state tracker + ``notcl`` + Disable hardware accelerated Transform/Clip/Lighting Other Gallium drivers have their own environment variables. These may change frequently so the source code should be consulted for details. diff --git a/src/gallium/drivers/r300/r300_chipset.c b/src/gallium/drivers/r300/r300_chipset.c index 505b764023a..82a084d56cd 100644 --- a/src/gallium/drivers/r300/r300_chipset.c +++ b/src/gallium/drivers/r300/r300_chipset.c @@ -175,9 +175,5 @@ void r300_parse_chipset(uint32_t pci_id, struct r300_capabilities* caps) caps->has_us_format = caps->family == CHIP_R520; caps->has_tcl = caps->num_vert_fpus > 0; - if (caps->has_tcl) { - caps->has_tcl = debug_get_bool_option("RADEON_NO_TCL", FALSE) ? FALSE : TRUE; - } - r300_apply_hyperz_blacklist(caps); } diff --git a/src/gallium/drivers/r300/r300_debug.c b/src/gallium/drivers/r300/r300_debug.c index bb595b26b1a..dc5568dcbcb 100644 --- a/src/gallium/drivers/r300/r300_debug.c +++ b/src/gallium/drivers/r300/r300_debug.c @@ -51,6 +51,7 @@ static const struct debug_named_value r300_debug_options[] = { { "nohiz", DBG_NO_HIZ, "Disable hierarchical zbuffer" }, { "nocmask", DBG_NO_CMASK, "Disable AA compression and fast AA clear" }, { "use_tgsi", DBG_USE_TGSI, "Request TGSI shaders from the state tracker" }, + { "notcl", DBG_NO_TCL, "Disable hardware accelerated Transform/Clip/Lighting" }, /* must be last */ DEBUG_NAMED_VALUE_END diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index 89502d46ff6..27c6835e339 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -851,6 +851,8 @@ struct pipe_screen* r300_screen_create(struct radeon_winsys *rws, r300screen->caps.zmask_ram = 0; if (SCREEN_DBG_ON(r300screen, DBG_NO_HIZ)) r300screen->caps.hiz_ram = 0; + if (SCREEN_DBG_ON(r300screen, DBG_NO_TCL)) + r300screen->caps.has_tcl = FALSE; r300screen->rws = rws; r300screen->screen.destroy = r300_destroy_screen; diff --git a/src/gallium/drivers/r300/r300_screen.h b/src/gallium/drivers/r300/r300_screen.h index 1fe9e861308..71903289fac 100644 --- a/src/gallium/drivers/r300/r300_screen.h +++ b/src/gallium/drivers/r300/r300_screen.h @@ -104,6 +104,7 @@ radeon_winsys(struct pipe_screen *screen) { #define DBG_NO_HIZ (1 << 22) #define DBG_NO_CMASK (1 << 23) #define DBG_USE_TGSI (1 << 24) +#define DBG_NO_TCL (1 << 25) /*@}*/ static inline boolean SCREEN_DBG_ON(struct r300_screen * screen, unsigned flags) {