Re: PCI-PCI bridges mess in 2.4.x

From: Ivan Kokshaysky (ink@jurassic.park.msu.ru)
Date: Thu Nov 09 2000 - 09:41:02 EST


On Wed, Nov 08, 2000 at 05:43:54PM -0500, Jeff Garzik wrote:
> I am still worried that the conditions which generate the following
> message indicate a problem still exists. (this message exists w/out
> your patch..)
> Unknown bridge resource 0: assuming transparent

Well, I believe that transparent bridge must use subtractive decoding.
Specification allows such thing, but the bridge with subtractive
decoding enabled _must_ have programming interface code == 01h.
If you're curious try this patch (not for applying, just for
testing).

Ivan.

--- 2.4.0t11p1/drivers/pci/pci.c Fri Oct 27 02:16:46 2000
+++ linux/drivers/pci/pci.c Thu Nov 9 17:08:16 2000
@@ -574,6 +574,14 @@ void __init pci_read_bridge_bases(struct
         if (!dev) /* It's a host bus, nothing to read */
                 return;
 
+ if (dev->class & 1) {
+ printk("Subtractive decoding bridge %s\nAssuming transparent\n",
+ dev->name);
+ for(i=0; i<3; i++)
+ child->resource[i] = child->parent->resource[i];
+ return;
+ }
+
         for(i=0; i<3; i++)
                 child->resource[i] = &dev->resource[PCI_BRIDGE_RESOURCES+i];
 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Nov 15 2000 - 21:00:14 EST