From: Andreas Noever <andreas.noever@gmail.com>
To: Dirk Gouders <dirk@gouders.net>
Cc: Andreas Noever <andreas.noever@gmail.com>,
Yinghai Lu <yinghai@kernel.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Linux Kernel <linux-kernel@vger.kernel.org>,
linux-pci@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>
Subject: Re: [BUG] Bisected Problem with LSI PCI FC Adapter
Date: Sun, 14 Sep 2014 15:16:37 +0200 [thread overview]
Message-ID: <1410700597-27265-1-git-send-email-andreas.noever@gmail.com> (raw)
In-Reply-To: <ghfvfu1lc1.fsf@quad.gouders.net>
Updated version with dmi strings. Dirk can you test this (without pci=nocrs) and look for
PCI: Ignoring host bridge windows from ACPI
If it does not show up then I have messed up the DMI_MATCH macros. In that case
please try to boot with pci=nocrs.
Bjorn, this would expand the meaning of nocrs to also ignore the bus window from crs. I can also add a separate flag (like pci_ignore_seg) and match the old behavior.
Thanks,
Andreas
---
arch/x86/pci/acpi.c | 17 +++++++++++++----
arch/x86/pci/bus_numa.c | 12 +-----------
2 files changed, 14 insertions(+), 15 deletions(-)
diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c
index cfd1b13..c9ebc36 100644
--- a/arch/x86/pci/acpi.c
+++ b/arch/x86/pci/acpi.c
@@ -107,6 +107,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=84281 */
+ {
+ .callback = set_nouse_crs,
+ .ident = "TYAN Transport VX50 B4985",
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "TYAN Computer Corporation"),
+ DMI_MATCH(DMI_BOARD_NAME, "Tyan Transport VX50-B4985"),
+ DMI_MATCH(DMI_BIOS_VERSION, "TYAN Transport VX50 B4985 BIOS V3.01.B30"),
+ },
+ },
/* https://bugzilla.kernel.org/show_bug.cgi?id=15362 */
{
@@ -522,15 +532,14 @@ struct pci_bus *pci_acpi_scan_root(struct acpi_pci_root *root)
} else {
probe_pci_root_info(info, device, busnum, domain);
- /* insert busn res at first */
- pci_add_resource(&resources, &root->secondary);
/*
* _CRS with no apertures is normal, so only fall back to
* defaults or native bridge info if we're ignoring _CRS.
*/
- if (pci_use_crs)
+ if (pci_use_crs) {
+ pci_add_resource(&resources, &root->secondary);
add_resources(info, &resources);
- else {
+ } else {
free_pci_root_info_res(info);
x86_pci_root_bus_resources(busnum, &resources);
}
diff --git a/arch/x86/pci/bus_numa.c b/arch/x86/pci/bus_numa.c
index f3a2cfc..b735d0e 100644
--- a/arch/x86/pci/bus_numa.c
+++ b/arch/x86/pci/bus_numa.c
@@ -31,8 +31,6 @@ void x86_pci_root_bus_resources(int bus, struct list_head *resources)
{
struct pci_root_info *info = x86_find_pci_root_info(bus);
struct pci_root_res *root_res;
- struct pci_host_bridge_window *window;
- bool found = false;
if (!info)
goto default_resources;
@@ -40,15 +38,7 @@ void x86_pci_root_bus_resources(int bus, struct list_head *resources)
printk(KERN_DEBUG "PCI: root bus %02x: hardware-probed resources\n",
bus);
- /* already added by acpi ? */
- list_for_each_entry(window, resources, list)
- if (window->res->flags & IORESOURCE_BUS) {
- found = true;
- break;
- }
-
- if (!found)
- pci_add_resource(resources, &info->busn);
+ pci_add_resource(resources, &info->busn);
list_for_each_entry(root_res, &info->resources, list) {
struct resource *res;
--
2.1.0
next prev parent reply other threads:[~2014-09-14 13:17 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-03 10:57 [BUG] Bisected Problem with LSI PCI FC Adapter Dirk Gouders
2014-09-03 12:28 ` Andreas Noever
2014-09-03 12:47 ` Dirk Gouders
2014-09-03 15:54 ` Andreas Noever
2014-09-04 6:09 ` Dirk Gouders
2014-09-11 13:43 ` Dirk Gouders
2014-09-11 17:30 ` Bjorn Helgaas
2014-09-11 19:26 ` Yinghai Lu
2014-09-11 20:33 ` Dirk Gouders
2014-09-11 20:42 ` Bjorn Helgaas
2014-09-11 21:24 ` Dirk Gouders
2014-09-11 22:51 ` Bjorn Helgaas
2014-09-11 23:50 ` Dirk Gouders
2014-09-12 11:11 ` Dirk Gouders
2014-09-12 20:05 ` Dirk Gouders
2014-09-12 20:37 ` Andreas Noever
2014-09-12 20:38 ` Bjorn Helgaas
2014-09-12 20:39 ` Yinghai Lu
2014-09-12 20:54 ` Dirk Gouders
2014-09-12 21:49 ` Yinghai Lu
2014-09-12 22:05 ` Dirk Gouders
2014-09-12 23:09 ` Yinghai Lu
2014-09-13 0:11 ` Dirk Gouders
2014-09-13 1:59 ` Yinghai Lu
2014-09-13 4:07 ` Bjorn Helgaas
2014-09-13 9:30 ` Dirk Gouders
2014-09-13 19:41 ` Dirk Gouders
2014-09-14 10:42 ` Andreas Noever
2014-09-14 10:44 ` Andreas Noever
2014-09-14 11:40 ` Dirk Gouders
2014-09-14 13:16 ` Andreas Noever [this message]
2014-09-14 14:24 ` Dirk Gouders
2014-09-19 18:39 ` Bjorn Helgaas
2014-09-20 18:41 ` Dirk Gouders
2014-09-22 14:25 ` Bjorn Helgaas
2014-09-22 14:53 ` Andreas Noever
2014-09-22 15:23 ` Bjorn Helgaas
2014-09-19 17:12 ` Bjorn Helgaas
2014-09-19 15:03 ` Dirk Gouders
2014-09-19 18:21 ` Dirk Gouders
2014-09-11 20:35 ` Dirk Gouders
2014-09-11 20:42 ` Linus Torvalds
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1410700597-27265-1-git-send-email-andreas.noever@gmail.com \
--to=andreas.noever@gmail.com \
--cc=bhelgaas@google.com \
--cc=dirk@gouders.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
--cc=yinghai@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox