Bug 1352016 - P4. Also check AMD cards with 0x1002 device id. r=mattwoodrow
☠☠ backed out by 08a75460a0d8 ☠ ☠
authorJean-Yves Avenard <jyavenard@mozilla.com>
Sun, 10 Sep 2017 18:17:14 +0200
changeset 429892 dd7342e18e671d2d90586ff1fc1b0c028cf87609
parent 429891 ebc7c92e8dc0a5575d51a3b21b7cf426b1516f74
child 429893 8e2e49f43ea760c13085cc11988e305eb3601a8e
push id7761
push userjlund@mozilla.com
push dateFri, 15 Sep 2017 00:19:52 +0000
treeherdermozilla-beta@c38455951db4 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmattwoodrow
bugs1352016
milestone57.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1352016 - P4. Also check AMD cards with 0x1002 device id. r=mattwoodrow MozReview-Commit-ID: DjCMDNfsfXe
dom/media/platforms/wmf/DXVA2Manager.cpp
--- a/dom/media/platforms/wmf/DXVA2Manager.cpp
+++ b/dom/media/platforms/wmf/DXVA2Manager.cpp
@@ -424,17 +424,18 @@ D3D9DXVA2Manager::Init(layers::KnowsComp
   D3DADAPTER_IDENTIFIER9 adapter;
   hr = d3d9Ex->GetAdapterIdentifier(D3DADAPTER_DEFAULT, 0, &adapter);
   if (!SUCCEEDED(hr)) {
     aFailureReason = nsPrintfCString(
       "IDirect3D9Ex::GetAdapterIdentifier failed with error %X", hr);
     return hr;
   }
 
-  if (adapter.VendorId == 0x1022 && !gfxPrefs::PDMWMFSkipBlacklist()) {
+  if ((adapter.VendorId == 0x1022  || adapter.VendorId == 0x1002) &&
+      !gfxPrefs::PDMWMFSkipBlacklist()) {
     for (const auto& model : sAMDPreUVD4) {
       if (adapter.DeviceId == model) {
         mIsAMDPreUVD4 = true;
         break;
       }
     }
   }
 
@@ -903,17 +904,18 @@ D3D11DXVA2Manager::InitInternal(layers::
   DXGI_ADAPTER_DESC adapterDesc;
   hr = adapter->GetDesc(&adapterDesc);
   if (!SUCCEEDED(hr)) {
     aFailureReason =
       nsPrintfCString("IDXGIAdapter::GetDesc failed with code %X", hr);
     return hr;
   }
 
-  if (adapterDesc.VendorId == 0x1022 && !gfxPrefs::PDMWMFSkipBlacklist()) {
+  if ((adapterDesc.VendorId == 0x1022 || adapterDesc.VendorId == 0x1002) &&
+      !gfxPrefs::PDMWMFSkipBlacklist()) {
     for (const auto& model : sAMDPreUVD4) {
       if (adapterDesc.DeviceId == model) {
         mIsAMDPreUVD4 = true;
         break;
       }
     }
   }
 
@@ -1302,17 +1304,17 @@ DXVA2Manager::IsUnsupportedResolution(co
          aFramerate > 45;
 }
 
 /* static */ bool
 DXVA2Manager::IsNV12Supported(uint32_t aVendorID,
                               uint32_t aDeviceID,
                               const nsAString& aDriverVersionString)
 {
-  if (aVendorID == 0x1022) {
+  if (aVendorID == 0x1022 || aVendorID == 0x1002) {
     // AMD
     // Block old cards regardless of driver version.
     for (const auto& model : sAMDPreUVD4) {
       if (aDeviceID == model) {
         return false;
       }
     }
     // AMD driver earlier than 21.19.411.0 have bugs in their handling of NV12