Re: Linux and IBM : "unauthorized" mini-PCI : Cisco mpi350 _way_ sub-optimal

Gerald Britton (gbritton@alum.mit.edu)
Tue, 8 Jul 2003 13:24:17 -0400


On Tue, Jul 08, 2003 at 04:42:30PM +0100, Alan Cox wrote:
> On Maw, 2003-07-08 at 16:20, Gerald Britton wrote:
> > Some of them have issues with PCI resource allocation though. Their BIOSes
> > don't allocate resources to Cardbus bridges so insertted devices can't get
> > resources and last i checked, we didn't handle this fixup.
>
> Thats actually a Linux bug.
>
> > On the notebooks I worked with it required relocating the AGP bridge and
> > several other devices to make all the resources work out (quick hack is to
> > just shove new resources into the config registers prior to the kernel's
> > initial pci scan).
>
> Interesting. I wonder why our fixup would have failed - its not something I've
> seen but we should fixup cardbus resource blocks (2.4 isnt smart enough to
> handle multidevice cardbus but Rmk has 2.5 code that is), but for the normal
> case it ought to have worked.

Is it smart enough to handle a case like this:

[device resource 00-01]
[bridge resource 01-04]
[device resource 01-02]
[cardbus bridge no resources]
[cardbus bridge no resources]
[device resource 02-04]
[bridge resoruce 04-06]
[device resource 04-06]
[device resource 06-07]

Numbers simplified for example purposes. The cardbus bridges are behind a
PCI-PCI bridge, and in this case, that bridge's resources need to be expanded
to allow the cardbus cards to have any resources since it's already full.
and the top level devices will need to be moved to allow space for the bridge
to expand. Glancing through the 2.5 pci init for i386 it doesn't look like it
does things differently from 2.4. IIRC, it's smart enough to handle things
if the cardbus bridge is at the top level (we allocate when the cardbus bridge
driver is loaded), but this will fail if it cannot allocate it (as is the case
when it's behind a full bridge).

-- Gerald

-
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/