Date: Mon, 20 Nov 2006 10:49:11 -0800 (PST) From: John Polstra <jdp@polstra.com> To: John Baldwin <jhb@freebsd.org> Cc: freebsd-arch@freebsd.org Subject: Re: Where do MSI quirks belong? Message-ID: <XFMail.20061120104911.jdp@polstra.com> In-Reply-To: <200611201242.58088.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 20-Nov-2006 John Baldwin wrote:
> On Sunday 19 November 2006 23:11, John Polstra wrote:
>> First, I assume that whether MSI works or not is at least partially
>> a function of the motherboard and maybe the BIOS, as opposed to the
>> chipset. Is that right? At least on this Tyan board, there seem
>> to be some nice kenv variables (e.g., smbus.planar.product) already
>> set that could help me recognize the board. Is that a reasonable
>> approach?
>
> It's going to be a function of the chipset, as something in the chipset
> (presumably a Host -> PCI bridge) has to listen for writes to 0xfeeXXXXXX and
> convert them into APIC messages.
Hmm, this Tyan 2721 board has the Intel E7501 chipset. Isn't it
supposed to support MSI? It doesn't work, and that's why I thought
the motherboard might also be a factor. I'll paste in the pciconf
output below.
John
hostb0@pci0:0:0: class=0x060000 card=0x00000000 chip=0x254c8086 rev=0x01 hdr=0x00
vendor = 'Intel Corporation'
device = 'E7501 Host Controller'
class = bridge
subclass = HOST-PCI
pcib1@pci0:2:0: class=0x060400 card=0x00000000 chip=0x25438086 rev=0x01 hdr=0x01
vendor = 'Intel Corporation'
device = 'E7500/E7501 HI_B Virtual PCI-to-PCI Bridge'
class = bridge
subclass = PCI-PCI
pcib4@pci0:3:0: class=0x060400 card=0x00000000 chip=0x25458086 rev=0x01 hdr=0x01
vendor = 'Intel Corporation'
device = 'E7500/E7501 HI_C Virtual PCI-to-PCI Bridge'
class = bridge
subclass = PCI-PCI
none0@pci0:29:0: class=0x0c0300 card=0x24808086 chip=0x24828086 rev=0x02 hdr=0x00
vendor = 'Intel Corporation'
device = '82801CA/CAM (ICH3-S/ICH3-M) USB Controller'
class = serial bus
subclass = USB
none1@pci0:29:1: class=0x0c0300 card=0x24808086 chip=0x24848086 rev=0x02 hdr=0x00
vendor = 'Intel Corporation'
device = '82801CA/CAM (ICH3-S/ICH3-M) USB Controller'
class = serial bus
subclass = USB
pcib7@pci0:30:0: class=0x060400 card=0x00000000 chip=0x244e8086 rev=0x42 hdr=0x01
vendor = 'Intel Corporation'
device = '82801BA/CA/DB/DBL/EB/ER/FB (ICH2/3/4/4/5/5/6), 6300ESB Hub Interface to PCI Bridge'
class = bridge
subclass = PCI-PCI
isab0@pci0:31:0: class=0x060100 card=0x00000000 chip=0x24808086 rev=0x02 hdr=0x00
vendor = 'Intel Corporation'
device = '82801CA/CAM (ICH3-S/ICH3-M) LPC Interface'
class = bridge
subclass = PCI-ISA
atapci0@pci0:31:1: class=0x01018a card=0x24808086 chip=0x248b8086 rev=0x02 hdr=0x00
vendor = 'Intel Corporation'
device = '82801CA (ICH3) UltraATA/100 EIDE Controller'
class = mass storage
subclass = ATA
none2@pci0:31:3: class=0x0c0500 card=0x24808086 chip=0x24838086 rev=0x02 hdr=0x00
vendor = 'Intel Corporation'
device = '82801CA/CAM (ICH3-S/ICH3-M) SMBus Controller'
class = serial bus
subclass = SMBus
none3@pci5:28:0: class=0x080020 card=0x14618086 chip=0x14618086 rev=0x04 hdr=0x00
vendor = 'Intel Corporation'
device = 'P64H2 I/O Advanced Programmable Interrupt Controller'
class = base peripheral
subclass = interrupt controller
pcib2@pci5:29:0: class=0x060400 card=0x00000050 chip=0x14608086 rev=0x04 hdr=0x01
vendor = 'Intel Corporation'
device = '82870P2 P64H2 PCI/PCI-X Hub Controller'
class = bridge
subclass = PCI-PCI
none4@pci5:30:0: class=0x080020 card=0x14618086 chip=0x14618086 rev=0x04 hdr=0x00
vendor = 'Intel Corporation'
device = 'P64H2 I/O Advanced Programmable Interrupt Controller'
class = base peripheral
subclass = interrupt controller
pcib3@pci5:31:0: class=0x060400 card=0x00000050 chip=0x14608086 rev=0x04 hdr=0x01
vendor = 'Intel Corporation'
device = '82870P2 P64H2 PCI/PCI-X Hub Controller'
class = bridge
subclass = PCI-PCI
em0@pci7:1:0: class=0x020000 card=0x10118086 chip=0x10108086 rev=0x01 hdr=0x00
vendor = 'Intel Corporation'
device = '82546EB Dual Port Gigabit Ethernet Controller (Copper)'
class = network
subclass = ethernet
em1@pci7:1:1: class=0x020000 card=0x10118086 chip=0x10108086 rev=0x01 hdr=0x00
vendor = 'Intel Corporation'
device = '82546EB Dual Port Gigabit Ethernet Controller (Copper)'
class = network
subclass = ethernet
bge0@pci6:3:0: class=0x020000 card=0x164814e4 chip=0x164814e4 rev=0x10 hdr=0x00
vendor = 'Broadcom Corporation'
device = 'BCM5704 NetXtreme Dual Gigabit Adapter'
class = network
subclass = ethernet
bge1@pci6:3:1: class=0x020000 card=0x164814e4 chip=0x164814e4 rev=0x10 hdr=0x00
vendor = 'Broadcom Corporation'
device = 'BCM5704 NetXtreme Dual Gigabit Adapter'
class = network
subclass = ethernet
none5@pci2:28:0: class=0x080020 card=0x14618086 chip=0x14618086 rev=0x04 hdr=0x00
vendor = 'Intel Corporation'
device = 'P64H2 I/O Advanced Programmable Interrupt Controller'
class = base peripheral
subclass = interrupt controller
pcib5@pci2:29:0: class=0x060400 card=0x00000050 chip=0x14608086 rev=0x04 hdr=0x01
vendor = 'Intel Corporation'
device = '82870P2 P64H2 PCI/PCI-X Hub Controller'
class = bridge
subclass = PCI-PCI
none6@pci2:30:0: class=0x080020 card=0x14618086 chip=0x14618086 rev=0x04 hdr=0x00
vendor = 'Intel Corporation'
device = 'P64H2 I/O Advanced Programmable Interrupt Controller'
class = base peripheral
subclass = interrupt controller
pcib6@pci2:31:0: class=0x060400 card=0x00000050 chip=0x14608086 rev=0x04 hdr=0x01
vendor = 'Intel Corporation'
device = '82870P2 P64H2 PCI/PCI-X Hub Controller'
class = bridge
subclass = PCI-PCI
fxp0@pci1:1:0: class=0x020000 card=0x10408086 chip=0x12298086 rev=0x10 hdr=0x00
vendor = 'Intel Corporation'
device = '82550/1/7/8/9 EtherExpress PRO/100(B) Ethernet Adapter'
class = network
subclass = ethernet
vgapci0@pci1:2:0: class=0x030000 card=0x80081002 chip=0x47521002 rev=0x27 hdr=0x00
vendor = 'ATI Technologies Inc'
device = 'Rage XL PCI'
class = display
subclass = VGA
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20061120104911.jdp>
