[PATCH] 2.4.2-acX does not recognize any bus on Intel Serverworks based motherboard

From: Petr Vandrovec (vandrove@vc.cvut.cz)
Date: Fri Mar 02 2001 - 13:34:44 EST


Hi Martin,
  what's idea behind 'pcibios_last_bus >= 0xff' ? On friend's STL2 Intel
motherboard Serverworks bridge contains 0x01 in reg. 0x44 (first bus behind
bridge) and 0xFF in reg. 0x45 (last bus behind bridge).
  This sets pcibios_last_bus to 0xFF in serverworks fixup code. After this
pcibios_fixup_peer_bridges() refuses to do anything, so devices connected
to secondary bus are not visible to system.
  With patch below system sees all devices again - patch is for 2.4.2-ac9.
                                        Thanks,
                                                Petr Vandrovec
                                                vandrove@vc.cvut.cz

diff -urdN linux/arch/i386/kernel/pci-pc.c linux/arch/i386/kernel/pci-pc.c
--- linux/arch/i386/kernel/pci-pc.c Fri Mar 2 17:55:05 2001
+++ linux/arch/i386/kernel/pci-pc.c Fri Mar 2 17:56:50 2001
@@ -784,7 +784,7 @@
         struct pci_dev dev;
         u16 l;
 
- if (pcibios_last_bus <= 0 || pcibios_last_bus >= 0xff)
+ if (pcibios_last_bus <= 0 || pcibios_last_bus > 0xff)
                 return;
         DBG("PCI: Peer bridge fixup\n");
         for (n=0; n <= pcibios_last_bus; n++) {
-
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/



This archive was generated by hypermail 2b29 : Wed Mar 07 2001 - 21:00:12 EST