There's a slight problem with this that I had a discussion with the -nv maintainer about while attempting to submit the id's upstream. 01_gen_pci_ids.diff which creates the nv.ids only adds the things explicitly defined in the tables in src/nv_driver.c but the AGP cards report a pci id of the AGP-PCIe bridge chip initially. The driver then figures out what chip it actually is behind the bridge (if the nv driver is actually loaded) via NVGetPCIXpressChip in the code, but when nv.ids exists that internal detection logic is lost and xserver only loads the nv driver automatically for cards that exist in nv.ids. In jaunty you then get a fall back to vesa because of a patch in xserver to make vesa the default when no driver can load. In karmic currently you get a failsafe X boot because the fallback to vesa patch was dropped. If nv is explicitly defined for the device in xorg.conf it will work fine though in karmic as long as the driver supports your actual card (which it will for the AGP variants for the above mentioned reason).
The current method being used to add these cards is to add them to the tables in ubuntu's patches (102_geforce_7300_gt.patch and 104_geforce_6600gt_9100mg.patch). The maintainer suggested that was a bad idea in this specific case because the cards are already defined which could cause problems, and the problem instead is the detection logic brought in from 01_gen_pci_ids.diff. I've attached a patch that adds support for every AGP-PCIe bridge chip I could find in a manner that will only permit the id's to be included in the nv.ids generation and not interfere with any actual card detections as suggested by the driver maintainer. Adding them behind a #if 0/#endif makes sure they are never actually used for anything, but will get included by the nv.ids generation so that the server will pick the -nv driver and let it do its detection work. There is still the small problem of the nv.ids generation routine not accounting for the catchall cases set up so that it will work for newer chips in series that haven't been explicitly added to the tables though.. For example, look around lines 713 and 738 here- http://cgit.freedesktop.org/xorg/driver/xf86-video- nv/tree/src/nv_driver.c?id=36eb96854b34bee6b65a2b2d4df25f53b47194e4 That will expand each supported chip range from 10DE0390 through 10DE039F for instance to account for unreleased future cards or things not explicitly defined in the tables..The pci id generation routine ignores all of that though so it would probably be a good idea to expand each one hidden behind the #if 0/#endif from my patch so 01_gen_pci_ids.diff will actually create id's for them for better support on older releases. I've submitted the patch upstream to the maintainer but since it is a debian/ubuntu specific thing and nv.ids generation is going the way of the dodo now (debian already dropped it) I'm not sure its relevant there. ** Attachment added: "101_agp_bridge_pci_id.patch" http://launchpadlibrarian.net/27885379/101_agp_bridge_pci_id.patch -- nv, autodetection fails because of missing PCI-IDs, in nv.ids, for a large number of supported cards in Jaunty https://bugs.launchpad.net/bugs/385703 You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs