Date: Fri, 27 Jun 2003 17:03:26 -0400 (EDT) From: John Baldwin <jhb@FreeBSD.org> To: Thomas Moestl <t.moestl@tu-bs.de> Cc: freebsd-hackers@freebsd.org Subject: Re: PLEASE REVIEW: Adding a pci_if method to facilitate specialized PCI bus drivers Message-ID: <XFMail.20030627170326.jhb@FreeBSD.org> In-Reply-To: <20030627195127.GC847@crow.dom2ip.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On 27-Jun-2003 Thomas Moestl wrote: >> Doing it in the bus might actually make life simpler. Right now >> when using different tables for routing PCI interrupts on x86, I >> have to write two different bridge drivers all >> the time, one for host bridges and one for PCI-PCI bridges, thus we have >> ACPI host-PCI and PCI-PCI bridge drivers, PCIBIOS $PIR host-PCI and PCI-PCI >> bridge drivers and MPTable host-PCI and PCI-PCI bridge drivers. Being >> able to just have an ACPI PCI bus driver, a PCIBIOS PCI bus driver, and >> an MPTable PCI bus driver would be nice. > > I don't know much about these tables, so I don't know how well this > would work. Is it guaranteed that all bridges will have > ACP/PCIBIOS/MPTable tables, and generic drivers will never be used? No. The generic driver will always be used in the case of a PCI-PCI bridge in a card in an add-on slot. Or should at least. The only > At least the PCIBIOS method seems to just offer routing as far as I > can see (no special enumeration, and no extra per-device information > to be considered), so having a bus driver for it would probably be > overkill, since it can be handled well in a bridge driver. Needing an > extra one for host bridges is a bit annoying, but most of the code > could be shared, and it is probably much worse to not be able to > interact with the generic drivers any more. If it were in the bus driver, I would only have to have one such driver I think rather than two. For now I will just leave it as is I guess. ACPI already has a PCI bus driver that caches ACPI handles for each PCI device, but the other routing methods (PCIBIOS/MPTable) have bridge drivers that just route interrupts. -- John Baldwin <jhb@FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20030627170326.jhb>