summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon
diff options
context:
space:
mode:
authorMatthew Parlane <parlane@gmail.com>2013-08-28 00:57:37 +1200
committerMatthew Parlane <parlane@gmail.com>2013-08-28 00:57:37 +1200
commit2a68b65cda35d325efcd347b090f76f14a5a033e (patch)
treee91f460f870b518bb249e08ce5f41bb3c33d9f53 /Source/Core/VideoCommon
parent75c398118fb1d470a82735f93f5c0d1fe0a91664 (diff)
parent40a1cb5dfed6d5b255d1f330af2cdc14446e0b53 (diff)
Merge branch 'master' into wii-network
Diffstat (limited to 'Source/Core/VideoCommon')
-rw-r--r--Source/Core/VideoCommon/Src/DriverDetails.cpp15
-rw-r--r--Source/Core/VideoCommon/Src/DriverDetails.h16
2 files changed, 25 insertions, 6 deletions
diff --git a/Source/Core/VideoCommon/Src/DriverDetails.cpp b/Source/Core/VideoCommon/Src/DriverDetails.cpp
index 0a115e1354..cdecc71cd1 100644
--- a/Source/Core/VideoCommon/Src/DriverDetails.cpp
+++ b/Source/Core/VideoCommon/Src/DriverDetails.cpp
@@ -27,12 +27,15 @@ namespace DriverDetails
// This is a list of all known bugs for each vendor
// We use this to check if the device and driver has a issue
BugInfo m_known_bugs[] = {
- {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_NODYNUBOACCESS, 14.0, -1.0, true},
- {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_BROKENCENTROID, 14.0, -1.0, true},
- {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_BROKENINFOLOG, -1.0, -1.0, true},
- {VENDOR_MESA, DRIVER_NOUVEAU, BUG_BROKENUBO, 900, 916, true},
- {VENDOR_MESA, DRIVER_R600, BUG_BROKENUBO, 900, 913, true},
- {VENDOR_MESA, DRIVER_I965, BUG_BROKENUBO, 900, 920, true},
+ {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_NODYNUBOACCESS, 14.0, -1.0, true},
+ {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_BROKENCENTROID, 14.0, -1.0, true},
+ {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_BROKENINFOLOG, -1.0, -1.0, true},
+ {VENDOR_MESA, DRIVER_NOUVEAU, BUG_BROKENUBO, 900, 916, true},
+ {VENDOR_MESA, DRIVER_R600, BUG_BROKENUBO, 900, 913, true},
+ {VENDOR_MESA, DRIVER_I965, BUG_BROKENUBO, 900, 920, true},
+ {VENDOR_ATI, DRIVER_ATI, BUG_BROKENHACKEDBUFFER, -1.0, -1.0, true},
+ {VENDOR_MESA, DRIVER_NOUVEAU, BUG_BROKENHACKEDBUFFER, -1.0, -1.0, true},
+ {VENDOR_ATI, DRIVER_ATI, BUG_BROKENPINNEDMEMORY, -1.0, -1.0, true}
};
std::map<Bug, BugInfo> m_bugs;
diff --git a/Source/Core/VideoCommon/Src/DriverDetails.h b/Source/Core/VideoCommon/Src/DriverDetails.h
index efb0c7c6c0..dc0d2900eb 100644
--- a/Source/Core/VideoCommon/Src/DriverDetails.h
+++ b/Source/Core/VideoCommon/Src/DriverDetails.h
@@ -83,6 +83,22 @@ namespace DriverDetails
// Nouveau stored the offset as u16 which isn't enough for all cases with range until 9.1.6
// I965 has broken data fetches from uniform buffers which results in a dithering until 9.2.0
BUG_BROKENUBO,
+ // Bug: The hacked buffer upload method isn't working
+ // This isn't a bug as the hacked buffer itself isn't used to work.
+ // I'm still surprised that it works on so many drivers.
+ // Affected devices: - amd close sourced driver
+ // - nouveau
+ // - maybe also some others
+ // This hack is evil. It's like free(pointer); *pointer = data;
+ BUG_BROKENHACKEDBUFFER,
+ // Bug: The pinned memory extension isn't working for index buffers
+ // Affected devices: AMD as they are the only vendor providing this extension
+ // Started Version: ?
+ // Ended Version: -1
+ // Pinned memory is disabled for index buffer as the amd driver (the only one with pinned memory support) seems
+ // to be broken. We just get flickering/black rendering when using pinned memory here -- degasus - 2013/08/20
+ // Please see issue #6105 on google code. Let's hope buffer storage solves this issues.
+ BUG_BROKENPINNEDMEMORY,
};
// Initializes our internal vendor, device family, and driver version