PCI: add set_nouse_crs for use by a pci=nocrs blacklist
authorDave Jones <davej@redhat.com>
Fri, 30 Dec 2011 19:37:05 +0000 (14:37 -0500)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Fri, 6 Jan 2012 20:08:44 +0000 (12:08 -0800)
Some machines don't boot unless passed pci=nocrs.
(See https://bugzilla.redhat.com/show_bug.cgi?id=770308 for details of
  one report. Waiting on dmidecode output for others).

Currently there is a DMI whitelist, even though the default is on.

v2: drop the 1536 blacklist entry, superceded by the PNP/MMCONFIG changes from
    Bjorn

Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
arch/x86/pci/acpi.c

index 404f21a3ff9e27fa1ef75a233559f2623f4507ab..f5ccf29cd6aa0a7d8df46ce81ba43c09e91dad15 100644 (file)
@@ -24,6 +24,12 @@ static int __init set_use_crs(const struct dmi_system_id *id)
        return 0;
 }
 
+static int __init set_nouse_crs(const struct dmi_system_id *id)
+{
+       pci_use_crs = false;
+       return 0;
+}
+
 static const struct dmi_system_id pci_use_crs_table[] __initconst = {
        /* http://bugzilla.kernel.org/show_bug.cgi?id=14183 */
        {
@@ -54,6 +60,7 @@ static const struct dmi_system_id pci_use_crs_table[] __initconst = {
                        DMI_MATCH(DMI_BIOS_VENDOR, "American Megatrends Inc."),
                },
        },
+
        {}
 };