[lkml]   [2000]   [Oct]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: Updated 2.4 TODO List -- new addition WAS(test9 PCI resource collisions (fwd)

On Tue, 24 Oct 2000, jamal wrote:
> (Now that i see Martin alive).
> Could we pursue this further?

The trouble definitely seems to be the fact that your PCI-PCI bridge does
not seem to have been set up for bridging:

bus res 0 0 00000000-00000000
bus res 1 0 00000000-00000000
bus res 2 1200 e4000000-e5ffffff

and it appears that the reason 2.2.x works is simply that 2.2.x doesn't
care because it doesn't keep track of resources at all - it just takes
what the devices say their resources are. And the bridge obviously
_works_, it just doesn't tell which area it bridges.

Can you do a "lspci -vvxxx" on a 2.2.x setup, so that I can take a look at
what the bridge claims it is doing.

I quite frankly have no idea what to do otherwise. We could special-case a
bridge resource that is all zeroes, and say that it's a "transparent"
bridge and just say that the resource is the same as the parent resource.
That might get you going. It's probably not the right thing to do, but you
_can_ try something like this in pci_read_bridge_bases(), where it does

if (base && base <= limit) {
res->flags |= ...
- }
+ } else {
+ /* Transparent bridge */
+ child->resource[0] = child->bus->resource[0];
+ }


(and do same thing for resource[1] and resource[2]..)

Does the above make it work for you? I don't know if PCI even has the
notion of transparent bridging, and quite frankly I doubt it does. The
above would be nothing but a hack that basically says "I don't understand
the resources of this bridge, so I'll just say it bridges everything".


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

 \ /
  Last update: 2005-03-22 12:41    [W:0.117 / U:4.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site