Messages in this thread | | | Date | Mon, 12 Dec 2005 13:15:54 -0800 | From | Greg KH <> | Subject | Re: [patch 2/4] i386/x86-64: Implement fallback for PCI mmconfig to type1 |
| |
On Mon, Dec 12, 2005 at 01:26:43PM -0700, Matthew Wilcox wrote: > On Mon, Dec 12, 2005 at 12:01:23PM -0800, Greg Kroah-Hartman wrote: > > When there is no entry for a bus in MCFG fall back to type1. This is > > especially important on K8 systems where always some devices can't be > > accessed using mmconfig (in particular the builtin northbridge doesn't > > support it for its own devices) > [...] > > -static int pci_conf1_read(unsigned int seg, unsigned int bus, > > +int pci_conf1_read(unsigned int seg, unsigned int bus, > > I don't like this at all. We already have a mechanism to use different > accessors per-bus (bus->ops->read()); calling the type1 accessors from > the mmconfig accessors just seems wrong.
From what I can tell, it's too late in the callstack for us to change the read ops for this device to be the other one. The problem is (and Andi can correct me if I'm wrong), some boxes basically have incomplete MCFG acpi tables (the tables do not describe all PCI busses that are present in the box). But we don't realize this until we are about to do the read function.
I remember I looked into trying to set this up at probe/init time, and it was almost impossible to do so, due to the structure of the code.
However, I might have missed something, and if you can point how to do this easier, please do.
As it is, this patch is needed to fix boxes that do not work at all with the current kernel.
thanks,
greg k-h - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |