summaryrefslogtreecommitdiffstats
path: root/src/loader/pci_id_driver_map.c
diff options
context:
space:
mode:
authorIlia Mirkin <[email protected]>2016-08-27 19:46:25 -0400
committerIlia Mirkin <[email protected]>2016-08-30 00:21:42 -0400
commit91681302d0308a70aece883c3b56a18f9a44041f (patch)
tree5cc17f6ced120756f506410b353deece920e3edc /src/loader/pci_id_driver_map.c
parentab0917311fbf7b0f03afc4aa1239d7b02b00fc87 (diff)
nouveau: allow NV3x's to be used with nouveau_vieux
NV34 and possibly other NV3x hardware has the capability of exposing the NV25 graph class. This allows forcing nouveau_vieux to be used instead of the gallium driver, primarily for testing purposes. (Among other things, NV2x only ever came as AGP or inside an Xbox, never PCI/PCIe). Signed-off-by: Ilia Mirkin <[email protected]>
Diffstat (limited to 'src/loader/pci_id_driver_map.c')
-rw-r--r--src/loader/pci_id_driver_map.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/loader/pci_id_driver_map.c b/src/loader/pci_id_driver_map.c
index 3c4657fd014..8b2079e4354 100644
--- a/src/loader/pci_id_driver_map.c
+++ b/src/loader/pci_id_driver_map.c
@@ -25,6 +25,7 @@ int is_nouveau_vieux(int fd);
#ifdef HAVE_LIBDRM
+#include <stdlib.h>
#include <xf86drm.h>
#include <nouveau_drm.h>
@@ -45,7 +46,8 @@ int
is_nouveau_vieux(int fd)
{
int chipset = nouveau_chipset(fd);
- return chipset > 0 && chipset < 0x30;
+ return (chipset > 0 && chipset < 0x30) ||
+ (chipset < 0x40 && getenv("NOUVEAU_VIEUX") != NULL);
}
#else