Date: Wed, 24 Dec 2003 16:55:07 -0600 (GMT-06:00) From: Sean Welch <welchsm@earthlink.net> To: freebsd-questions@freebsd.org Subject: Unprobed PCI bus on VXPro II chipset Message-ID: <24862179.1072306507323.JavaMail.root@daisy.psp.pas.earthlink.net>
next in thread | raw e-mail | index | archive | help
As I'm not quite sure where I should be asking for help with this I figured I'd try shooting the info over to freebsd-hackers (as it seemed the closest match) and to freebsd-questions (as there seems to be a requirement to join the list for hackers mail). I've got an oldish machine (EDO RAM and such) running a VXPro II chipset. I have successfully configured FreeBSD from 2.2.8 up to 5-CURRENT to run on this thing but I've never managed to get it to probe and attach anything on the PCI bus. Here's what I've found and what I've tried. I believe the motherboard was sold as PCChips kit. Looking up the stats I find that it was a rebrand of Hint Co. hardware. The PCI IDs are actually listed in /usr/share/misc/pci_vendors and look like this: 3388 Hint Corp. 0020 HB6 UNIVERSAL PCI-PCI BRIDGE 0021 HB1-SE33 PCI-to-PCI Bridge 8011 VXPro II Chipset CPU to PCI Bridge 8012 VXPro II Chipset PCI to ISA Bridge 8013 VXPro II Chipset EIDE Controller I found a commit notice online to the linux kernel that contained these same IDs so it looks like the complete string should be "33880020", "33880021", etc. I also managed to find this message from *long* ago: http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&threadm=Pine.BSF.3.96.990120135600.28221A-100000_gate1.ilhadamagia.com.br%40ns.sol.net&rnum=5&prev=/groups%3Fhl%3Den%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26q%3Dfreebsd%2Bvxpro%26btnG%3DGoogle%2BSearch I'm currently running 4.9-RELEASE. The uname -a output is: FreeBSD 4.9-RELEASE FreeBSD 4.9-RELEASE #5: Tue Oct 14 11:51:28 CDT 2003 root@:/usr/src/sys/compile/WARPPHYS i386 Poking around I discovered that pcibus.c no longer contains the code referenced in the above message (but that didn't stop me). I found it instead in pci_cfgreg.c and tried adding the explicit set of oldval1 to zero but no joy. I ended up adding the PCI IDs to both /usr/src/sys/i386/isa/pcibus.c and also /usr/src/sys/pci/pcisupport.c in the effort to get the chipset recognized. No go. When I boot verbose this is all I can get about the PCI bus: pci_open(1): mode 1 addr port (0x0cf8) is 0x0000ff00 pci_open(1a): mode1res=0x00000000 (0x80000000) pci_open(1b): mode1res=0x00007020 (0xff000001) pci_open(2): mode 2 enable port (0x0cf8) is 0xff Infuriatingly, the BIOS sees everything on the bus and labels the devices with reasonable categories. Likewise, scanpci (comes with XFree86) identifies the chipsets and the devices without any trouble at all -- that at least explains why I've never had any trouble using the PCI video card under X. The output of scanpci identifies the last three chipsets from that snipet I put above (from pci_vendors) with the last being labeled as IDE rather than EIDE (which is correct). Based on this digging around I'm convinced that there must be some ugly hack that is posible to get FreeBSD to probe and attach the bus and devices on it. I've only got this desktop and while I've been able to live without the PCI USB card, I need to test out a PCI WinTV card. The whole machine is old enough that isn't feasible to just try swapping out the motherboard (the case isn't even ATX compatible) and I've not got the money to just buy something else. Would anyone be willing to help me get this sorted out? I'm out of my depth here but to my inexperienced eyes this doesn't look to be an insurmountable issue. Sean
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?24862179.1072306507323.JavaMail.root>