wined3d: Recognise virgl.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
oldstable
Henri Verbeet 2019-01-04 18:30:02 +03:30 committed by Alexandre Julliard
parent 535ef08b67
commit 86c773fc66
3 changed files with 24 additions and 0 deletions

View File

@ -1192,6 +1192,7 @@ static enum wined3d_gl_vendor wined3d_guess_gl_vendor(const struct wined3d_gl_in
|| strstr(gl_vendor_string, "DRI R300 Project") || strstr(gl_vendor_string, "DRI R300 Project")
|| strstr(gl_vendor_string, "Tungsten Graphics, Inc") || strstr(gl_vendor_string, "Tungsten Graphics, Inc")
|| strstr(gl_vendor_string, "VMware, Inc.") || strstr(gl_vendor_string, "VMware, Inc.")
|| strstr(gl_vendor_string, "Red Hat")
|| strstr(gl_vendor_string, "Intel") || strstr(gl_vendor_string, "Intel")
|| strstr(gl_renderer, "Mesa") || strstr(gl_renderer, "Mesa")
|| strstr(gl_renderer, "Gallium") || strstr(gl_renderer, "Gallium")
@ -1232,6 +1233,10 @@ static enum wined3d_pci_vendor wined3d_guess_card_vendor(const char *gl_vendor_s
|| strstr(gl_vendor_string, "Intel Inc.")) || strstr(gl_vendor_string, "Intel Inc."))
return HW_VENDOR_INTEL; return HW_VENDOR_INTEL;
if (strstr(gl_vendor_string, "Red Hat")
|| strstr(gl_renderer, "virgl"))
return HW_VENDOR_REDHAT;
if (strstr(gl_renderer, "SVGA3D")) if (strstr(gl_renderer, "SVGA3D"))
return HW_VENDOR_VMWARE; return HW_VENDOR_VMWARE;
@ -1790,6 +1795,10 @@ cards_nvidia_mesa[] =
{"nv04", CARD_NVIDIA_RIVA_TNT}, {"nv04", CARD_NVIDIA_RIVA_TNT},
{"nv03", CARD_NVIDIA_RIVA_128}, {"nv03", CARD_NVIDIA_RIVA_128},
}, },
cards_redhat[] =
{
{"virgl", CARD_REDHAT_VIRGL},
},
cards_vmware[] = cards_vmware[] =
{ {
{"SVGA3D", CARD_VMWARE_SVGA3D}, {"SVGA3D", CARD_VMWARE_SVGA3D},
@ -1814,6 +1823,10 @@ nvidia_gl_vendor_table[] =
{GL_VENDOR_MESA, "Mesa Nouveau driver", cards_nvidia_mesa, ARRAY_SIZE(cards_nvidia_mesa)}, {GL_VENDOR_MESA, "Mesa Nouveau driver", cards_nvidia_mesa, ARRAY_SIZE(cards_nvidia_mesa)},
{GL_VENDOR_NVIDIA, "NVIDIA binary driver", cards_nvidia_binary, ARRAY_SIZE(cards_nvidia_binary)}, {GL_VENDOR_NVIDIA, "NVIDIA binary driver", cards_nvidia_binary, ARRAY_SIZE(cards_nvidia_binary)},
}, },
redhat_gl_vendor_table[] =
{
{GL_VENDOR_MESA, "Red Hat driver", cards_redhat, ARRAY_SIZE(cards_redhat)},
},
vmware_gl_vendor_table[] = vmware_gl_vendor_table[] =
{ {
{GL_VENDOR_MESA, "VMware driver", cards_vmware, ARRAY_SIZE(cards_vmware)}, {GL_VENDOR_MESA, "VMware driver", cards_vmware, ARRAY_SIZE(cards_vmware)},
@ -1860,6 +1873,7 @@ card_vendor_table[] =
{ {
{HW_VENDOR_AMD, "AMD", amd_gl_vendor_table, ARRAY_SIZE(amd_gl_vendor_table)}, {HW_VENDOR_AMD, "AMD", amd_gl_vendor_table, ARRAY_SIZE(amd_gl_vendor_table)},
{HW_VENDOR_NVIDIA, "NVIDIA", nvidia_gl_vendor_table, ARRAY_SIZE(nvidia_gl_vendor_table)}, {HW_VENDOR_NVIDIA, "NVIDIA", nvidia_gl_vendor_table, ARRAY_SIZE(nvidia_gl_vendor_table)},
{HW_VENDOR_REDHAT, "Red Hat",redhat_gl_vendor_table, ARRAY_SIZE(redhat_gl_vendor_table)},
{HW_VENDOR_VMWARE, "VMware", vmware_gl_vendor_table, ARRAY_SIZE(vmware_gl_vendor_table)}, {HW_VENDOR_VMWARE, "VMware", vmware_gl_vendor_table, ARRAY_SIZE(vmware_gl_vendor_table)},
{HW_VENDOR_INTEL, "Intel", intel_gl_vendor_table, ARRAY_SIZE(intel_gl_vendor_table)}, {HW_VENDOR_INTEL, "Intel", intel_gl_vendor_table, ARRAY_SIZE(intel_gl_vendor_table)},
}; };

View File

@ -187,6 +187,9 @@ static const struct driver_version_information driver_version_table[] =
{DRIVER_NVIDIA_GEFORCE6, DRIVER_MODEL_NT6X, "nvd3dum.dll", 18, 13, 783}, {DRIVER_NVIDIA_GEFORCE6, DRIVER_MODEL_NT6X, "nvd3dum.dll", 18, 13, 783},
{DRIVER_NVIDIA_GEFORCE8, DRIVER_MODEL_NT6X, "nvd3dum.dll", 18, 13, 4052}, {DRIVER_NVIDIA_GEFORCE8, DRIVER_MODEL_NT6X, "nvd3dum.dll", 18, 13, 4052},
/* Red Hat */
{DRIVER_REDHAT_VIRGL, DRIVER_MODEL_GENERIC, "virgl.dll", 0, 0, 0},
/* VMware */ /* VMware */
{DRIVER_VMWARE, DRIVER_MODEL_NT5X, "vm3dum.dll", 14, 1, 1134}, {DRIVER_VMWARE, DRIVER_MODEL_NT5X, "vm3dum.dll", 14, 1, 1134},
@ -376,6 +379,9 @@ static const struct wined3d_gpu_description gpu_description_table[] =
{HW_VENDOR_AMD, CARD_AMD_RADEON_RX_480, "Radeon (TM) RX 480 Graphics", DRIVER_AMD_RX, 4096}, {HW_VENDOR_AMD, CARD_AMD_RADEON_RX_480, "Radeon (TM) RX 480 Graphics", DRIVER_AMD_RX, 4096},
{HW_VENDOR_AMD, CARD_AMD_RADEON_RX_VEGA, "Radeon RX Vega", DRIVER_AMD_RX, 8192}, {HW_VENDOR_AMD, CARD_AMD_RADEON_RX_VEGA, "Radeon RX Vega", DRIVER_AMD_RX, 8192},
/* Red Hat */
{HW_VENDOR_REDHAT, CARD_REDHAT_VIRGL, "Red Hat VirtIO GPU", DRIVER_REDHAT_VIRGL, 1024},
/* VMware */ /* VMware */
{HW_VENDOR_VMWARE, CARD_VMWARE_SVGA3D, "VMware SVGA 3D (Microsoft Corporation - WDDM)", DRIVER_VMWARE, 1024}, {HW_VENDOR_VMWARE, CARD_VMWARE_SVGA3D, "VMware SVGA 3D (Microsoft Corporation - WDDM)", DRIVER_VMWARE, 1024},

View File

@ -2252,6 +2252,7 @@ enum wined3d_pci_vendor
HW_VENDOR_AMD = 0x1002, HW_VENDOR_AMD = 0x1002,
HW_VENDOR_NVIDIA = 0x10de, HW_VENDOR_NVIDIA = 0x10de,
HW_VENDOR_VMWARE = 0x15ad, HW_VENDOR_VMWARE = 0x15ad,
HW_VENDOR_REDHAT = 0x1af4,
HW_VENDOR_INTEL = 0x8086, HW_VENDOR_INTEL = 0x8086,
}; };
@ -2435,6 +2436,8 @@ enum wined3d_pci_device
CARD_NVIDIA_TITANX_PASCAL = 0x1b00, CARD_NVIDIA_TITANX_PASCAL = 0x1b00,
CARD_NVIDIA_TITANV = 0x1d81, CARD_NVIDIA_TITANV = 0x1d81,
CARD_REDHAT_VIRGL = 0x1010,
CARD_VMWARE_SVGA3D = 0x0405, CARD_VMWARE_SVGA3D = 0x0405,
CARD_INTEL_830M = 0x3577, CARD_INTEL_830M = 0x3577,
@ -2623,6 +2626,7 @@ enum wined3d_display_driver
DRIVER_NVIDIA_GEFORCEFX, DRIVER_NVIDIA_GEFORCEFX,
DRIVER_NVIDIA_GEFORCE6, DRIVER_NVIDIA_GEFORCE6,
DRIVER_NVIDIA_GEFORCE8, DRIVER_NVIDIA_GEFORCE8,
DRIVER_REDHAT_VIRGL,
DRIVER_VMWARE, DRIVER_VMWARE,
DRIVER_WINE, DRIVER_WINE,
DRIVER_UNKNOWN, DRIVER_UNKNOWN,