diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c index 74016af..9c296f5 100644 --- a/hw/xfree86/common/xf86pciBus.c +++ b/hw/xfree86/common/xf86pciBus.c @@ -1118,7 +1118,23 @@ videoPtrToDriverList(struct pci_device *dev, break; case 0x102b: driverList[0] = "mga"; break; case 0x10c8: driverList[0] = "neomagic"; break; - case 0x10de: case 0x12d2: driverList[0] = "nv"; break; + case 0x10de: case 0x12d2: + switch (dev->device_id) { + /* NV1 */ + case 0x0008: + case 0x0009: + driverList[0] = "vesa"; + break; + /* NV3 */ + case 0x0018: + case 0x0019: + driverList[0] = "nv"; + break; + default: + driverList[0] = "nouveau"; + break; + } + break; case 0x1106: driverList[0] = "openchrome"; break; case 0x1b36: driverList[0] = "qxl"; break; case 0x1163: driverList[0] = "rendition"; break; --