[lkml]   [2005]   [Dec]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [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.


greg k-h
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-12-12 22:38    [W:0.057 / U:0.596 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site