Hendrik Hasenbein wrote:


Does somebody use the nvidia driver together with a nforce2 chipset?

The driver won't enable the agp port:


nvidia0: <Unknown> at device 0.1 on pci0 nvidia0: Unable to enable PCI busmastering. device_probe_and_attach: nvidia0 attach returned 6


These messages are actually bogus.
The problem is that the driver tries to attach any devices whose vendorid is nVIDIA.
In the port, there's a file called nvidia_pci.c. I've modified the probe to ignore the mb devices -


Try this version -

int nvidia_pci_probe(device_t dev)
{
   U016 vendor;
   U016 device;
   char name[NV_DEVICE_NAME_LENGTH];

   vendor = pci_get_vendor(dev);
   device = pci_get_device(dev);

if (vendor != NVIDIA_VENDORID || device < 0x0020)
return ENXIO;
switch ( device ) {
/* exclude these nForce and nForce2 devices from the probe */
case 0x01e0: /* nForce2 AGP Controller */
case 0x01e8: /* nForce2 AGP Host to PCI Bridge */
case 0x01eb: /* nForce2 Memory Controller 1 */
case 0x01ee: /* nForce2 Memory Controller 4 */
case 0x01ed: /* nForce2 Memory Controller 3 */
case 0x01ec: /* nForce2 Memory Controller 2 */
case 0x01ef: /* nForce2 Memory Controller 5 */
case 0x0060: /* nForce MCP2 ISA Bridge */
case 0x0064: /* nForce MCP-T? SMBus Controller */
case 0x0067: /* nForce MCP2 OpenHCI USB Controller */
case 0x006b: /* nForce MCP-T? Audio Processing Unit (Dolby Digital) */
case 0x006a: /* nForce MCP2 Audio Codec Interface */
case 0x006c: /* nForce PCI to PCI Bridge */
case 0x0065: /* nForce MCP2 EIDE Controller */
case 0x006d: /* Nvidia (unknown) PCI to PCI Bridge */
case 0x006e: /* nForce MCP2 OHCI Compliant IEEE 1394 Controller */
return ENXIO;
break;
default:
break;
}


   if (rm_get_device_name(device, NV_DEVICE_NAME_LENGTH, name)
           != RM_OK) {
       strcpy(name, "Unknown");
   }
   device_set_desc_copy(dev, name);
   return 0;
}

Note that I don't have the usb2.0 controller (ehci) enabled, because it's not supported yet in -STABLE. Because it's not support I've disabled it in the bios and didn't add the device id to the switch statement for it (actually I don't know what it is :) )... If you have USB2.0 support enabled in your bios you can do a 'pciconf -l -v' to extract the device id, and then add that device to the 'ignore list' aka switch statement :)

Here's an example snippet of pciconf output -

[EMAIL PROTECTED]:9:0: class=0x01018a card=0x0c111043 chip=0x006510de rev=0xa2 hdr=0x00
^^
0x10de is the vendorid, and the top part 0x0065 is your device id.




The combination that works for me (in -STABLE) is nvidia gart and no hacks. I spent some time trying to get Matt Dodd's os agp to work, again in -STABLE, and while it does probe and attach the agp correctly - and from what I could tell seems to follow the linux code very closely - I can't get the nvidia driver to work with it.

Good luck,

Andrew.


_______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to