Date: Sat, 9 Sep 2006 14:41:43 -0700 (PDT) From: -MM- <workdamyou@yahoo.ca> To: freebsd-stable@freebsd.org Subject: missing hardware Message-ID: <20060909214143.39623.qmail@web32103.mail.mud.yahoo.com>
next in thread | raw e-mail | index | archive | help
Greetings, Currently I have FBSD 6.1 release (custom build, DMI, DRM, took out some drivers that I don't use) however, 6.1 release generic didn't quite work either*. (Works on a different (slower) harddrive controller) ACPI doesn't seem to work on this computer. The problem is that I have two host -> PCI adapters, and two PCI -> PCI bridges in my computer, and a Symbios 53c896 behind one of them isn't being seen. Essentally, there is... (edited output from pciconf -lv) =================================================================================== hostb0@pci0:0:0: class=0x060000 card=0x00000000 chip=0x00071166 rev=0x04 hdr=0x00 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'NB6635 (CNB20-LE/HE) CPU to PCI Bridge' class = bridge subclass = HOST-PCI pcib1@pci0:0:1: class=0x060400 card=0x00000080 chip=0x00051166 rev=0x02 hdr=0x01 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'NB6536 (CNB20-LE) PCI to PCI Bridge, bus/dev/func 0/0/1' class = bridge subclass = PCI-PCI hostb1@pci0:17:0: class=0x060000 card=0x00000000 chip=0x00071166 rev=0x04 hdr=0x00 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'NB6635 (CNB20-LE/HE) CPU to PCI Bridge' class = bridge subclass = HOST-PCI hostb2@pci0:17:1: class=0x060000 card=0x00000000 chip=0x00051166 rev=0x02 hdr=0x00 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'NB6536 (CNB20-LE) PCI to PCI Bridge, bus/dev/func 0/0/1' class = bridge subclass = HOST-PCI =================================================================================== However, (edited dmesg (boot -v)) =================================================================================== pcib0: <MPTable Host-PCI bridge> pcibus 0 on motherboard pci0: <PCI bus> on pcib0 pci0: physical bus=0 found-> vendor=0x1166, dev=0x0007, revid=0x04 bus=0, slot=0, func=0 class=06-00-00, hdrtype=0x00, mfdev=1 cmdreg=0x0106, statreg=0x6200, cachelnsz=8 (dwords) lattimer=0x40 (1920 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) map[10]: type 3, range 32, base e0000000, size 28, enabled map[14]: type 1, range 32, base febee000, size 12, enabled found-> vendor=0x1166, dev=0x0005, revid=0x02 bus=0, slot=0, func=1 class=06-04-00, hdrtype=0x01, mfdev=1 cmdreg=0x0007, statreg=0x22b0, cachelnsz=8 (dwords) lattimer=0x40 (1920 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) found-> vendor=0x1166, dev=0x0007, revid=0x04 bus=0, slot=17, func=0 class=06-00-00, hdrtype=0x00, mfdev=1 cmdreg=0x0106, statreg=0x6200, cachelnsz=8 (dwords) lattimer=0x30 (1440 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) found-> vendor=0x1166, dev=0x0005, revid=0x02 bus=0, slot=17, func=1 class=06-00-00, hdrtype=0x00, mfdev=1 cmdreg=0x0107, statreg=0x2200, cachelnsz=8 (dwords) lattimer=0x30 (1440 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) pcib1: <PCI-PCI bridge> at device 0.1 on pci0 pcib1: secondary bus 1 pcib1: subordinate bus 1 pcib1: I/O decode 0xf000-0xfff pcib1: memory decode 0xfff00000-0xfffff pcib1: prefetched decode 0xfff00000-0xfffff pci1: <PCI bus> on pcib1 pci1: physical bus=1 <snip> xl0: miibus0: xlphy0: drm0: isab0: isa0:... <snip> pcib3: <MPTable Host-PCI bridge> pcibus 3 on motherboard pci3: <PCI bus> on pcib3 pci3: physical bus=3 =================================================================================== As you can see, pcib2 and pci2 have been dropped. I can see that within the source code (pci_bus.c L#387) there is an if statement that looks for duplicate busses. I inserted a quick printf statement in there, and it showed up, once. Thus, something, somehow is being kicked. (Due to my lack of knowledge with regards to C code, I don't know how to find out what board is, because I don't know how to find out how the variable has been defined in C. (%x, %d ...) lspci -Mvvv =================================================================================== 00:00.0 0600: 1166:0007 (rev 04) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR+ <PERR- Latency: 64, Cache Line Size 08 Region 0: Memory at e0000000 (32-bit, prefetchable) Region 1: Memory at febee000 (32-bit, non-prefetchable) 00:00.1 0604: 1166:0005 (rev 02) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR- Latency: 64, Cache Line Size 08 Bus: primary=00, secondary=01, subordinate=01, sec-latency=64 I/O behind bridge: 0000f000-00000fff Memory behind bridge: fff00000-000fffff Prefetchable memory behind bridge: fff00000-000fffff Secondary status: 66MHz+ FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- Capabilities: [80] AGP version 1.0 Status: RQ=17 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW- AGP3- Rate=x1,x2 Command: RQ=1 ArqSz=0 Cal=0 SBA- AGP+ GART64- 64bit- FW- Rate=x1 ## 00.00:1 is a bridge from 00 to 01-01 00:01.0 0200: 10b7:9055 (rev 24) Subsystem: 1091:9055 <snip ISA stuffs> 00:11.0 0600: 1166:0007 (rev 04) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR+ <PERR- Latency: 48, Cache Line Size 08 Region 0: Memory at <unassigned> (32-bit, prefetchable) 00:11.1 0600: 1166:0005 (rev 02) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR- Latency: 48, Cache Line Size 08 Interrupt: pin ? routed to IRQ 255 Summary of buses: 00: Primary host bus 00.1 Bridge to 01-01 03: Secondary host bus (?) =================================================================================== if you look at 00:11.0 & 00:11.1, the last lines have "Region 0: Memory at <unassigned> (32-bit, prefetchable)" and "Interrupt: pin ? routed to IRQ 255", respectively. scanpci -v =================================================================================== pci bus 0x0000 cardnum 0x11 function 0x00: vendor 0x1166 device 0x0007 Broadcom CNB20-LE Host Bridge STATUS 0x6200 COMMAND 0x0106 CLASS 0x06 0x00 0x00 REVISION 0x04 BIST 0x00 HEADER 0x80 LATENCY 0x30 CACHE 0x08 BASE0 0x00000008 addr 0x00000000 MEM PREFETCHABLE pci bus 0x0000 cardnum 0x11 function 0x01: vendor 0x1166 device 0x0005 Broadcom CNB20-LE Host Bridge STATUS 0x2200 COMMAND 0x0107 CLASS 0x06 0x00 0x00 REVISION 0x02 BIST 0x00 HEADER 0x80 LATENCY 0x30 CACHE 0x08 MAX_LAT 0x00 MIN_GNT 0x00 INT_PIN 0x00 INT_LINE 0xff =================================================================================== So, 0:11.0 has a base address, it's 0x8 As for 00:11.1, perhaps the code is attempting to assign an irq to the pci-pci bridge (thinking that it's a host), thus, can't find it, assigns a irq of 255 and something along the lines kicks out irq=255. Any suggestions for hacks?? Thank you for your time.. More info will be provided upon request. ~Mike. -- ** dmesg 6.1 / 4.9; MP Table; scanPCI (4.9) http://groups.google.com/group/comp.unix.bsd.freebsd.misc/browse_thread/thread/49dfc32ab3593bbd/8bdd58ee98b58589#8bdd58ee98b58589 ** BIOS decode, pirtool, lspci, scanPCI (6.1) http://lists.freebsd.org/pipermail/freebsd-i386/2006-September/004489.html __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060909214143.39623.qmail>