[LinuxBIOS] badly initialized (?) pci bridge on the M57SLI (with irq table and mptable)
Ward Vandewege
ward at gnu.org
Mon Sep 17 02:47:27 CEST 2007
Hi there,
We've had a bit of a chat on the IRC channel today about the M57SLI and how
the pci bridge does not seem to be initialized properly under LinuxBIOS. The
pci-e bridge is initialized ok - pci-e vga cards work fine; pci vga cards
do not.
Here's an lspci of the pci bridge (device 06.0), booted from the
proprietary bios:
0000:00:06.0 0604: 10de:0370 (rev a2) (prog-if 01)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 0
Bus: primary=00, secondary=01, subordinate=01, sec-latency=32
I/O behind bridge: 0000f000-00000fff
Memory behind bridge: fb000000-fb0fffff
Prefetchable memory behind bridge: fff00000-000fffff
BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B-
Capabilities: [b8] #0d [0000]
Capabilities: [8c] #08 [a800]
00: de 10 70 03 07 00 b0 00 a2 01 04 06 00 00 81 00
10: 00 00 00 00 00 00 00 00 00 01 01 20 f0 00 80 02
20: 00 fb 00 fb f0 ff 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 b8 00 00 00 00 00 00 00 00 00 00 0a
and from linuxbios:
0000:00:06.0 0604: 10de:0370 (rev a2)
Control: I/O- Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 0
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
I/O behind bridge: 0000f000-00000fff
Memory behind bridge: fff00000-000fffff
Prefetchable memory behind bridge: fff00000-000fffff
BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B-
Capabilities: [b8] #0d [0000]
Capabilities: [8c] #08 [a800]
00: de 10 70 03 04 01 b0 00 a2 00 04 06 00 00 81 00
10: 00 00 00 00 00 00 00 00 00 01 01 00 f0 00 80 02
20: f0 ff 00 00 f0 ff 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 b8 00 00 00 00 00 00 00 00 00 03 0a
Uwe thought that perhaps there was an issue with the IRQ or MP table. I've
run getpir and mptable while running the proprietary BIOS, and here's the
output:
http://ward.vandewege.net/m57sli_mptable.output
http://ward.vandewege.net/m57sli_irq_tables.c
I've also saved a proprietary and linuxbios dmesg output, since there seems
to be something funny going on with the PCI bridge detection - under
LinuxBIOS no less than 7 devices show up as PCI bridges, rather than the 2
that show up under the proprietary BIOS.
http://ward.vandewege.net/m57sli_dmesg_linuxbios.txt
http://ward.vandewege.net/m57sli_dmesg_proprietary.txt
Suggestions? Things to try?
Thanks,
Ward.
--
Ward Vandewege <ward at fsf.org>
Free Software Foundation - Senior System Administrator
More information about the coreboot
mailing list