summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/video_core/renderer_opengl/gl_device.cpp31
1 files changed, 28 insertions, 3 deletions
diff --git a/src/video_core/renderer_opengl/gl_device.cpp b/src/video_core/renderer_opengl/gl_device.cpp
index 3d2674232..3b00614e7 100644
--- a/src/video_core/renderer_opengl/gl_device.cpp
+++ b/src/video_core/renderer_opengl/gl_device.cpp
@@ -282,14 +282,21 @@ std::string Device::GetVendorName() const {
282 if (vendor_name == "ATI Technologies Inc.") { 282 if (vendor_name == "ATI Technologies Inc.") {
283 return "AMD"; 283 return "AMD";
284 } 284 }
285 if (vendor_name == "Intel" || vendor_name == "Intel Open Source Technology Center") { 285 if (vendor_name == "Intel") {
286 // For Mesa, `Intel` is an overloaded vendor string that could mean crocus or iris.
287 // Simply return `INTEL` for those as well as the Windows driver.
286 return "INTEL"; 288 return "INTEL";
287 } 289 }
290 if (vendor_name == "Intel Open Source Technology Center") {
291 return "I965";
292 }
288 if (vendor_name == "Mesa Project") { 293 if (vendor_name == "Mesa Project") {
289 return "MESA"; 294 return "I915";
290 } 295 }
291 if (vendor_name == "Mesa/X.org") { 296 if (vendor_name == "Mesa/X.org") {
292 return "LLVMPIPE"; 297 // This vendor string is overloaded between llvmpipe, softpipe, and virgl, so just return
298 // MESA instead of one of those driver names.
299 return "MESA";
293 } 300 }
294 if (vendor_name == "AMD") { 301 if (vendor_name == "AMD") {
295 return "RADEONSI"; 302 return "RADEONSI";
@@ -297,6 +304,24 @@ std::string Device::GetVendorName() const {
297 if (vendor_name == "nouveau") { 304 if (vendor_name == "nouveau") {
298 return "NOUVEAU"; 305 return "NOUVEAU";
299 } 306 }
307 if (vendor_name == "X.Org") {
308 return "R600";
309 }
310 if (vendor_name == "Collabora Ltd") {
311 return "ZINK";
312 }
313 if (vendor_name == "Intel Corporation") {
314 return "OPENSWR";
315 }
316 if (vendor_name == "Microsoft Corporation") {
317 return "D3D12";
318 }
319 if (vendor_name == "NVIDIA") {
320 // Mesa's tegra driver reports `NVIDIA`. Only present in this list because the default
321 // strategy would have returned `NVIDIA` here for this driver, the same result as the
322 // proprietary driver.
323 return "TEGRA";
324 }
300 return vendor_name; 325 return vendor_name;
301} 326}
302 327