]> git.openfabrics.org - ~shefty/rdma-dev.git/commitdiff
Revert "PCI: use ACPI _CRS data by default"
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 24 Jun 2009 23:23:03 +0000 (16:23 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 24 Jun 2009 23:23:03 +0000 (16:23 -0700)
This reverts commit 9e9f46c44e487af0a82eb61b624553e2f7118f5b.

Quoting from the commit message:

 "At this point, it seems to solve more problems than it causes, so let's
  try using it by default.  It's an easy revert if it ends up causing
  trouble."

And guess what? The _CRS code causes trouble.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Documentation/kernel-parameters.txt
arch/x86/include/asm/pci_x86.h
arch/x86/pci/acpi.c
arch/x86/pci/amd_bus.c
arch/x86/pci/common.c

index 040fee60728276610e54c0596b7127a2b11e81b8..d08759aa0903c8499c5b422a8161f5cdb900bdcc 100644 (file)
@@ -1855,7 +1855,7 @@ and is between 256 and 4096 characters. It is defined in the file
                                IRQ routing is enabled.
                noacpi          [X86] Do not use ACPI for IRQ routing
                                or for PCI scanning.
-               nocrs           [X86] Don't use _CRS for PCI resource
+               use_crs         [X86] Use _CRS for PCI resource
                                allocation.
                routeirq        Do IRQ routing for all PCI devices.
                                This is normally done in pci_enable_device(),
index d419f5c02669467f07cfa5c2b8392f8186e1b716..b399988eee3a3105e60be5fe760089d6cf57d3f0 100644 (file)
@@ -25,7 +25,7 @@
 #define PCI_BIOS_IRQ_SCAN      0x2000
 #define PCI_ASSIGN_ALL_BUSSES  0x4000
 #define PCI_CAN_SKIP_ISA_ALIGN 0x8000
-#define PCI_NO_ROOT_CRS                0x10000
+#define PCI_USE__CRS           0x10000
 #define PCI_CHECK_ENABLE_AMD_MMCONF    0x20000
 #define PCI_HAS_IO_ECS         0x40000
 #define PCI_NOASSIGN_ROMS      0x80000
index 16c3fda85bbad502317bafedc37159bf9847b278..b26626dc517c0a4f706c0b07ac3e491e6327501e 100644 (file)
@@ -238,7 +238,7 @@ struct pci_bus * __devinit pci_acpi_scan_root(struct acpi_device *device, int do
 #endif
        }
 
-       if (bus && !(pci_probe & PCI_NO_ROOT_CRS))
+       if (bus && (pci_probe & PCI_USE__CRS))
                get_current_resources(device, busnum, domain, bus);
        return bus;
 }
index 2255f880678bb198af08f8fd43452c2e3370167a..f893d6a6e803e266f3d36030f8744fecda130bf9 100644 (file)
@@ -101,7 +101,7 @@ void x86_pci_root_bus_res_quirks(struct pci_bus *b)
        struct pci_root_info *info;
 
        /* don't go for it if _CRS is used */
-       if (!(pci_probe & PCI_NO_ROOT_CRS))
+       if (pci_probe & PCI_USE__CRS)
                return;
 
        /* if only one root bus, don't need to anything */
index 4740119e4bb73389e66ff08ed47e30c7d12c56c6..2202b6257b82b84bb9ef17f33630ca7dac929610 100644 (file)
@@ -515,8 +515,8 @@ char * __devinit  pcibios_setup(char *str)
        } else if (!strcmp(str, "assign-busses")) {
                pci_probe |= PCI_ASSIGN_ALL_BUSSES;
                return NULL;
-       } else if (!strcmp(str, "nocrs")) {
-               pci_probe |= PCI_NO_ROOT_CRS;
+       } else if (!strcmp(str, "use_crs")) {
+               pci_probe |= PCI_USE__CRS;
                return NULL;
        } else if (!strcmp(str, "earlydump")) {
                pci_early_dump_regs = 1;