| From efd4a9b461290b295d56a1f7c5a5d893488ce7d6 Mon Sep 17 00:00:00 2001 |
| From: Bjorn Helgaas <bhelgaas@google.com> |
| Date: Wed, 28 Dec 2016 14:55:16 -0600 |
| Subject: [PATCH] x86/PCI: Ignore _CRS on Supermicro X8DTH-i/6/iF/6F |
| |
| commit 89e9f7bcd8744ea25fcf0ac671b8d72c10d7d790 upstream. |
| |
| Martin reported that the Supermicro X8DTH-i/6/iF/6F advertises incorrect |
| host bridge windows via _CRS: |
| |
| pci_root PNP0A08:00: host bridge window [io 0xf000-0xffff] |
| pci_root PNP0A08:01: host bridge window [io 0xf000-0xffff] |
| |
| Both bridges advertise the 0xf000-0xffff window, which cannot be correct. |
| |
| Work around this by ignoring _CRS on this system. The downside is that we |
| may not assign resources correctly to hot-added PCI devices (if they are |
| possible on this system). |
| |
| Link: https://bugzilla.kernel.org/show_bug.cgi?id=42606 |
| Reported-by: Martin Burnicki <martin.burnicki@meinberg.de> |
| Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> |
| CC: stable@vger.kernel.org |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c |
| index 3cd69832d7f4..3961103e9176 100644 |
| --- a/arch/x86/pci/acpi.c |
| +++ b/arch/x86/pci/acpi.c |
| @@ -114,6 +114,16 @@ static const struct dmi_system_id pci_crs_quirks[] __initconst = { |
| DMI_MATCH(DMI_BIOS_VERSION, "6JET85WW (1.43 )"), |
| }, |
| }, |
| + /* https://bugzilla.kernel.org/show_bug.cgi?id=42606 */ |
| + { |
| + .callback = set_nouse_crs, |
| + .ident = "Supermicro X8DTH", |
| + .matches = { |
| + DMI_MATCH(DMI_SYS_VENDOR, "Supermicro"), |
| + DMI_MATCH(DMI_PRODUCT_NAME, "X8DTH-i/6/iF/6F"), |
| + DMI_MATCH(DMI_BIOS_VERSION, "2.0a"), |
| + }, |
| + }, |
| |
| /* https://bugzilla.kernel.org/show_bug.cgi?id=15362 */ |
| { |
| -- |
| 2.10.1 |
| |