Bug 1673939 - Block WebRender for AMD R600 GPUs with Mesa drivers due to garbled text. r=jrmuizel

Note R600 refers to the GPU generation, not the r600 Mesa driver.

Differential Revision: https://phabricator.services.mozilla.com/D96115
This commit is contained in:
Andrew Osmond 2020-11-06 15:50:54 +00:00
parent 601c4f6678
commit 02ff8b6e97
3 changed files with 49 additions and 0 deletions

View file

@ -418,6 +418,45 @@ const GfxDeviceFamily* GfxDriverInfo::GetDeviceFamily(DeviceFamily id) {
APPEND_DEVICE(0xa011);
APPEND_DEVICE(0xa012);
break;
case DeviceFamily::AmdR600:
// AMD R600 generation GPUs
// R600
APPEND_RANGE(0x9400, 0x9403);
APPEND_DEVICE(0x9405);
APPEND_RANGE(0x940a, 0x940b);
APPEND_DEVICE(0x940f);
// RV610
APPEND_RANGE(0x94c0, 0x94c1);
APPEND_RANGE(0x94c3, 0x94c9);
APPEND_RANGE(0x94cb, 0x94cd);
// RV630
APPEND_RANGE(0x9580, 0x9581);
APPEND_DEVICE(0x9583);
APPEND_RANGE(0x9586, 0x958f);
// RV670
APPEND_RANGE(0x9500, 0x9501);
APPEND_RANGE(0x9504, 0x9509);
APPEND_DEVICE(0x950f);
APPEND_DEVICE(0x9511);
APPEND_DEVICE(0x9515);
APPEND_DEVICE(0x9517);
APPEND_DEVICE(0x9519);
// RV620
APPEND_DEVICE(0x95c0);
APPEND_DEVICE(0x95c2);
APPEND_RANGE(0x95c4, 0x95c7);
APPEND_DEVICE(0x95c9);
APPEND_RANGE(0x95cc, 0x95cf);
// RV635
APPEND_RANGE(0x9590, 0x9591);
APPEND_DEVICE(0x9593);
APPEND_RANGE(0x9595, 0x9599);
APPEND_DEVICE(0x959b);
// RS780
APPEND_RANGE(0x9610, 0x9616);
// RS880
APPEND_RANGE(0x9710, 0x9715);
break;
case DeviceFamily::NvidiaBlockWebRender:
/* GT218 */
APPEND_DEVICE(0x0a60);
@ -858,6 +897,7 @@ const nsAString& GfxDriverInfo::GetDeviceVendor(DeviceFamily id) {
case DeviceFamily::RadeonCaicos:
case DeviceFamily::RadeonX1000:
case DeviceFamily::Bug1447141:
case DeviceFamily::AmdR600:
case DeviceFamily::AtiRolloutWebRender:
vendor = DeviceVendor::ATI;
break;

View file

@ -194,6 +194,7 @@ enum class DeviceFamily : uint8_t {
Bug1155608,
Bug1207665,
Bug1447141,
AmdR600,
NvidiaBlockWebRender,
NvidiaRolloutWebRender,
IntelRolloutWebRender,

View file

@ -534,6 +534,14 @@ const nsTArray<GfxDriverInfo>& GfxInfo::GetGfxDriverInfo() {
nsIGfxInfo::FEATURE_BLOCKED_DEVICE, DRIVER_COMPARISON_IGNORED,
V(0, 0, 0, 0), "FEATURE_FAILURE_WEBRENDER_NO_LINUX_ATI", "");
// Bug 1673939 - Garbled text on RS880 GPUs with Mesa drivers.
APPEND_TO_DRIVER_BLOCKLIST_EXT(
OperatingSystem::Linux, ScreenSizeStatus::All, BatteryStatus::All,
DesktopEnvironment::All, WindowProtocol::All, DriverVendor::MesaAll,
DeviceFamily::AmdR600, nsIGfxInfo::FEATURE_WEBRENDER,
nsIGfxInfo::FEATURE_BLOCKED_DEVICE, DRIVER_COMPARISON_IGNORED,
V(0, 0, 0, 0), "FEATURE_FAILURE_WEBRENDER_BUG_1673939", "");
////////////////////////////////////
// FEATURE_WEBRENDER - ALLOWLIST