]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.0.8/x86-pci-use-host-bridge-_crs-info-on-foxconn-k8m890-8237a.patch
5.0-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 4.0.8 / x86-pci-use-host-bridge-_crs-info-on-foxconn-k8m890-8237a.patch
1 From 1dace0116d0b05c967d94644fc4dfe96be2ecd3d Mon Sep 17 00:00:00 2001
2 From: Bjorn Helgaas <bhelgaas@google.com>
3 Date: Tue, 9 Jun 2015 18:54:07 -0500
4 Subject: x86/PCI: Use host bridge _CRS info on Foxconn K8M890-8237A
5
6 From: Bjorn Helgaas <bhelgaas@google.com>
7
8 commit 1dace0116d0b05c967d94644fc4dfe96be2ecd3d upstream.
9
10 The Foxconn K8M890-8237A has two PCI host bridges, and we can't assign
11 resources correctly without the information from _CRS that tells us which
12 address ranges are claimed by which bridge. In the bugs mentioned below,
13 we incorrectly assign a sound card address (this example is from 1033299):
14
15 bus: 00 index 2 [mem 0x80000000-0xfcffffffff]
16 ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-7f])
17 pci_root PNP0A08:00: host bridge window [mem 0x80000000-0xbfefffff] (ignored)
18 pci_root PNP0A08:00: host bridge window [mem 0xc0000000-0xdfffffff] (ignored)
19 pci_root PNP0A08:00: host bridge window [mem 0xf0000000-0xfebfffff] (ignored)
20 ACPI: PCI Root Bridge [PCI1] (domain 0000 [bus 80-ff])
21 pci_root PNP0A08:01: host bridge window [mem 0xbff00000-0xbfffffff] (ignored)
22 pci 0000:80:01.0: [1106:3288] type 0 class 0x000403
23 pci 0000:80:01.0: reg 10: [mem 0xbfffc000-0xbfffffff 64bit]
24 pci 0000:80:01.0: address space collision: [mem 0xbfffc000-0xbfffffff 64bit] conflicts with PCI Bus #00 [mem 0x80000000-0xfcffffffff]
25 pci 0000:80:01.0: BAR 0: assigned [mem 0xfd00000000-0xfd00003fff 64bit]
26 BUG: unable to handle kernel paging request at ffffc90000378000
27 IP: [<ffffffffa0345f63>] azx_create+0x37c/0x822 [snd_hda_intel]
28
29 We assigned 0xfd_0000_0000, but that is not in any of the host bridge
30 windows, and the sound card doesn't work.
31
32 Turn on pci=use_crs automatically for this system.
33
34 Link: https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/931368
35 Link: https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1033299
36 Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
37 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
38
39 ---
40 arch/x86/pci/acpi.c | 11 +++++++++++
41 1 file changed, 11 insertions(+)
42
43 --- a/arch/x86/pci/acpi.c
44 +++ b/arch/x86/pci/acpi.c
45 @@ -81,6 +81,17 @@ static const struct dmi_system_id pci_cr
46 DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies, LTD"),
47 },
48 },
49 + /* https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/931368 */
50 + /* https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1033299 */
51 + {
52 + .callback = set_use_crs,
53 + .ident = "Foxconn K8M890-8237A",
54 + .matches = {
55 + DMI_MATCH(DMI_BOARD_VENDOR, "Foxconn"),
56 + DMI_MATCH(DMI_BOARD_NAME, "K8M890-8237A"),
57 + DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies, LTD"),
58 + },
59 + },
60
61 /* Now for the blacklist.. */
62