]> Pileus Git - ~andy/linux/commitdiff
frv/PCI: Remove pcibios_last_bus
authorBjorn Helgaas <bhelgaas@google.com>
Wed, 23 Oct 2013 02:55:46 +0000 (20:55 -0600)
committerBjorn Helgaas <bhelgaas@google.com>
Tue, 29 Oct 2013 22:55:58 +0000 (16:55 -0600)
pcibios_last_bus was apparently copied from x86.  On FR-V, it is
statically initialized to -1 and never changed unless the user boots
with "pci=lastbus=<X>".  I doubt that option is used on FR-V, so this
patch removes all the code related to pcibios_last_bus.

Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
arch/frv/mb93090-mb00/pci-frv.h
arch/frv/mb93090-mb00/pci-vdk.c

index 76c4e73d643d3f8c7dea7d3b59546489aa6f7d96..a7e487fe76edeaf7cf36846e779481535e13eb5e 100644 (file)
@@ -30,7 +30,6 @@ void pcibios_resource_survey(void);
 
 /* pci-vdk.c */
 
-extern int __nongpreldata pcibios_last_bus;
 extern struct pci_ops *__nongpreldata pci_root_ops;
 
 /* pci-irq.c */
index deb67843693cddbf94ce2c2044999730a9425845..efa5d65b000789e9bc7615d1e1e4335be2eb06c6 100644 (file)
@@ -25,7 +25,6 @@
 
 unsigned int __nongpreldata pci_probe = 1;
 
-int  __nongpreldata pcibios_last_bus = -1;
 struct pci_ops *__nongpreldata pci_root_ops;
 
 /*
@@ -219,37 +218,6 @@ static struct pci_ops * __init pci_check_direct(void)
        return NULL;
 }
 
-/*
- * Discover remaining PCI buses in case there are peer host bridges.
- * We use the number of last PCI bus provided by the PCI BIOS.
- */
-static void __init pcibios_fixup_peer_bridges(void)
-{
-       struct pci_bus bus;
-       struct pci_dev dev;
-       int n;
-       u16 l;
-
-       if (pcibios_last_bus <= 0 || pcibios_last_bus >= 0xff)
-               return;
-       printk("PCI: Peer bridge fixup\n");
-       for (n=0; n <= pcibios_last_bus; n++) {
-               if (pci_find_bus(0, n))
-                       continue;
-               bus.number = n;
-               bus.ops = pci_root_ops;
-               dev.bus = &bus;
-               for(dev.devfn=0; dev.devfn<256; dev.devfn += 8)
-                       if (!pci_read_config_word(&dev, PCI_VENDOR_ID, &l) &&
-                           l != 0x0000 && l != 0xffff) {
-                               printk("Found device at %02x:%02x [%04x]\n", n, dev.devfn, l);
-                               printk("PCI: Discovered peer bus %02x\n", n);
-                               pci_scan_bus(n, pci_root_ops, NULL);
-                               break;
-                       }
-       }
-}
-
 /*
  * Exceptions for specific devices. Usually work-arounds for fatal design flaws.
  */
@@ -418,7 +386,6 @@ int __init pcibios_init(void)
        pci_scan_root_bus(NULL, 0, pci_root_ops, NULL, &resources);
 
        pcibios_irq_init();
-       pcibios_fixup_peer_bridges();
        pcibios_fixup_irqs();
        pcibios_resource_survey();
 
@@ -432,9 +399,6 @@ char * __init pcibios_setup(char *str)
        if (!strcmp(str, "off")) {
                pci_probe = 0;
                return NULL;
-       } else if (!strncmp(str, "lastbus=", 8)) {
-               pcibios_last_bus = simple_strtol(str+8, NULL, 0);
-               return NULL;
        }
        return str;
 }