mesa/src/util/drirc
Samuel Pitoiset dd79aa4ad3 radeonsi: update hack for HTILE corruption in ARK: Survival Evolved
It appears that flushing the DB metadata is actually not sufficient
since the driver uses the new VS blit shaders. This looks quite
strange though, but it seems like we need to flush DB for fixing
the corruption.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102955
Fixes: 69ccb9dae7 (radeonsi: use new VS blit shaders (VS inputs in SGPRs)
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2017-10-27 10:47:30 +02:00

270 lines
12 KiB
Text

<!--
============================================
Application bugs worked around in this file:
============================================
* Unigine Heaven 3.0 and older contain too many bugs and can't be supported
by drivers that want to be compliant.
* Various Unigine products don't use the #version and #extension GLSL
directives, meaning they only get GLSL 1.10 and no extensions for their
shaders.
Enabling all extensions for Unigine fixes most issues, but the GLSL version
is still 1.10.
* If ARB_sample_shading is supported, Unigine Heaven 4.0 and Valley 1.0 uses
an #extension directive in the middle of its shaders, which is illegal
in GLSL.
* Dying Light and Dead Island Definitive Edition redeclare vertex shader
built-ins (specifically gl_VertexID), which causes the vertex shaders to fail
to compile.
TODO: document the other workarounds.
-->
<driconf>
<!-- Please always enable app-specific workarounds for all drivers and
screens. -->
<device>
<application name="Unigine Sanctuary" executable="Sanctuary">
<option name="force_glsl_extensions_warn" value="true" />
<option name="disable_blend_func_extended" value="true" />
</application>
<application name="Unigine Tropics" executable="Tropics">
<option name="force_glsl_extensions_warn" value="true" />
<option name="disable_blend_func_extended" value="true" />
</application>
<application name="Unigine Heaven (32-bit)" executable="heaven_x86">
<option name="allow_glsl_extension_directive_midshader" value="true" />
<!-- remove dual_color_blend_by_location if 4.1 ever comes out -->
<option name="dual_color_blend_by_location" value="true" />
</application>
<application name="Unigine Heaven (64-bit)" executable="heaven_x64">
<option name="allow_glsl_extension_directive_midshader" value="true" />
<!-- remove dual_color_blend_by_location if 4.1 ever comes out -->
<option name="dual_color_blend_by_location" value="true" />
</application>
<application name="Unigine Valley (32-bit)" executable="valley_x86">
<option name="allow_glsl_extension_directive_midshader" value="true" />
<!-- remove dual_color_blend_by_location if 1.1 ever comes out -->
<option name="dual_color_blend_by_location" value="true" />
</application>
<application name="Unigine Valley (64-bit)" executable="valley_x64">
<option name="allow_glsl_extension_directive_midshader" value="true" />
<!-- remove dual_color_blend_by_location if 1.1 ever comes out -->
<option name="dual_color_blend_by_location" value="true" />
</application>
<application name="Unigine OilRush (32-bit)" executable="OilRush_x86">
<option name="disable_blend_func_extended" value="true" />
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Unigine OilRush (64-bit)" executable="OilRush_x64">
<option name="disable_blend_func_extended" value="true" />
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Savage 2" executable="savage2.bin">
<option name="disable_glsl_line_continuations" value="true" />
</application>
<application name="Topogun (32-bit)" executable="topogun32">
<option name="always_have_depth_buffer" value="true" />
</application>
<application name="Topogun (64-bit)" executable="topogun64">
<option name="always_have_depth_buffer" value="true" />
</application>
<application name="Dead Island (incl. Definitive Edition)" executable="DeadIslandGame">
<option name="allow_glsl_extension_directive_midshader" value="true" />
<!-- For the Definitive Edition which shares the same executable name -->
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
</application>
<application name="Dead Island Riptide Definitive Edition" executable="DeadIslandRiptideGame">
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
</application>
<application name="Dying Light" executable="DyingLightGame">
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
</application>
<application name="Second Life" executable="do-not-directly-run-secondlife-bin">
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Warsow (32-bit)" executable="warsow.i386">
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Warsow (64-bit)" executable="warsow.x86_64">
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Rust" executable="rust">
<option name="glsl_zero_init" value="true"/>
</application>
<application name="Divinity: Original Sin Enhanced Edition" executable="EoCApp">
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Worms W.M.D" executable="Worms W.M.Dx64">
<option name="allow_higher_compat_version" value="true" />
</application>
<application name="Crookz - The Big Heist" executable="Crookz">
<option name="allow_higher_compat_version" value="true" />
</application>
<application name="Tropico 5" executable="Tropico5">
<option name="allow_higher_compat_version" value="true" />
</application>
<application name="The Culling" executable="Victory">
<option name="force_glsl_version" value="440" />
</application>
<application name="Spec Ops: The Line (32-bit)" executable="specops.i386">
<option name="force_glsl_abs_sqrt" value="true" />
</application>
<application name="Spec Ops: The Line (64-bit)" executable="specops">
<option name="force_glsl_abs_sqrt" value="true" />
</application>
<application name="Kerbal Space Program (32-bit)" executable="KSP.x86">
<option name="glsl_zero_init" value="true"/>
</application>
<application name="Kerbal Space Program (64-bit)" executable="KSP.x86_64">
<option name="glsl_zero_init" value="true"/>
</application>
<application name="Rocket League" executable="RocketLeague">
<option name="glsl_correct_derivatives_after_discard" value="true"/>
</application>
<application name="The Witcher 2" executable="witcher2">
<option name="glsl_correct_derivatives_after_discard" value="true"/>
</application>
<!-- The GL thread whitelist is below, workarounds are above.
Keep it that way. -->
<application name="Alien Isolation" executable="AlienIsolation">
<option name="mesa_glthread" value="true"/>
</application>
<application name="BioShock Infinite" executable="bioshock.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Borderlands 2" executable="Borderlands2">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Civilization 5" executable="Civ5XP">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Civilization 6" executable="Civ6">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Dreamfall Chapters" executable="Dreamfall Chapters">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Hitman" executable="HitmanPro">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Renowned Explorers: International Society" executable="abbeycore_steam">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Saints Row 2" executable="saintsrow2.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Saints Row: The Third" executable="SaintsRow3.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Saints Row IV" executable="SaintsRow4.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Saints Row: Gat out of Hell" executable="SaintsRow4GooH.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Sid Meier's: Civilization Beyond Earth" executable="CivBE">
<option name="mesa_glthread" value="true"/>
</application>
<application name="The Witcher 2" executable="witcher2">
<option name="mesa_glthread" value="true"/>
</application>
<application name="American Truck Simulator" executable="amtrucks">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Euro Truck Simulator 2" executable="eurotrucks2">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Overlord" executable="overlord.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Overlord 2" executable="overlord2.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Oil Rush" executable="OilRush_x86">
<option name="mesa_glthread" value="true"/>
</application>
<application name="War Thunder" executable="aces">
<option name="mesa_glthread" value="true"/>
</application>
<application name="War Thunder (Wine)" executable="aces.exe">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Outlast" executable="OLGame.x86_64">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Spec Ops: The Line (32-bit)" executable="specops.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Spec Ops: The Line (64-bit)" executable="specops">
<option name="mesa_glthread" value="true"/>
</application>
</device>
<!-- vmwgfx doesn't like full buffer swaps and can't sync to vertical retraces.-->
<device driver="vmwgfx">
<application name="gnome-shell" executable="gnome-shell">
<option name="glx_disable_ext_buffer_age" value="true" />
<option name="glx_disable_oml_sync_control" value="true" />
</application>
<application name="Compiz" executable="Compiz">
<option name="glx_disable_ext_buffer_age" value="true" />
<option name="glx_disable_oml_sync_control" value="true" />
</application>
</device>
<device driver="radeonsi">
<application name="ARK: Survival Evolved (and unintentionally the UE4 demo template)" executable="ShooterGame">
<option name="radeonsi_clear_db_cache_before_clear" value="true" />
</application>
</device>
</driconf>