mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] PCI-Devices and ServerWorks chipset
@ 2001-01-16 17:12 Adam Lackorzynski
  2001-01-17  8:52 ` Martin Mares
  0 siblings, 1 reply; 13+ messages in thread
From: Adam Lackorzynski @ 2001-01-16 17:12 UTC (permalink / raw)
  To: Kernel Mailing List


The patch below (against vanilla 2.4.0) makes Linux recognize
PCI-Devices sitting in another PCI bus than 0 (or 1).

This was tested on a Netfinity 7100-8666 using a ServerWorks chipset.


00:00.0 Host bridge: ServerWorks CNB20HE (rev 21)
00:00.1 Host bridge: ServerWorks CNB20HE (rev 01)
00:00.2 Host bridge: ServerWorks: Unknown device 0006
00:00.3 Host bridge: ServerWorks: Unknown device 0006
00:01.0 SCSI storage controller: Adaptec 7896
00:01.1 SCSI storage controller: Adaptec 7896
00:05.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet LANCE] (rev 44)
00:06.0 VGA compatible controller: S3 Inc. Trio 64 3D (rev 01)
00:0f.0 ISA bridge: ServerWorks OSB4 (rev 4f)
00:0f.1 IDE interface: ServerWorks: Unknown device 0211
00:0f.2 USB Controller: ServerWorks: Unknown device 0220 (rev 04)
02:04.0 Ethernet controller: Digital Equipment Corporation DECchip 21142/43 (rev 41)
02:06.0 RAID bus controller: IBM: Unknown device 01bd

The last two lines do not occur without the patch.


diff -ur linux-2.4.0/linux/arch/i386/kernel/pci-pc.c linux/arch/i386/kernel/pci-pc.c
--- linux-2.4.0/linux/arch/i386/kernel/pci-pc.c Thu Jun 22 16:17:16 2000
+++ linux/arch/i386/kernel/pci-pc.c     Tue Jan 16 18:10:30 2001
@@ -849,10 +849,13 @@
         * ServerWorks host bridges -- Find and scan all secondary buses.
         * Register 0x44 contains first, 0x45 last bus number routed there.
         */
-       u8 busno;
-       pci_read_config_byte(d, 0x44, &busno);
-       printk("PCI: ServerWorks host bridge: secondary bus %02x\n", busno);
-       pci_scan_bus(busno, pci_root_ops, NULL);
+       u8 busno_first, busno_last, i;
+       pci_read_config_byte(d, 0x44, &busno_first);
+       pci_read_config_byte(d, 0x45, &busno_last);
+       for (i = busno_first; i <= busno_last; i++) {
+               printk("PCI: ServerWorks host bridge: secondary bus %02x\n", i);
+               pci_scan_bus(i, pci_root_ops, NULL);
+       }
        pcibios_last_bus = -1;
 }
 


Adam
-- 
Adam                 al10@inf.tu-dresden.de
  Lackorzynski         http://a.home.dhs.org
-
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/

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2001-02-08  8:34 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-01-16 17:12 [PATCH] PCI-Devices and ServerWorks chipset Adam Lackorzynski
2001-01-17  8:52 ` Martin Mares
2001-01-17 10:14   ` Adam Lackorzynski
2001-01-17 11:25   ` Maciej W. Rozycki
2001-01-17 21:17     ` Dan Hollis
2001-01-18  8:37       ` Maciej W. Rozycki
2001-01-18 10:01         ` Andre Hedrick
2001-01-18 11:08           ` Maciej W. Rozycki
2001-01-18 17:40             ` Andre Hedrick
2001-01-19 12:24               ` Maciej W. Rozycki
2001-01-23  3:01     ` Tim Hockin
2001-02-08  8:34       ` Martin Mares
2001-01-23 18:18   ` Adam Lackorzynski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®