[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1302598086-3622-1-git-send-email-jslaby@suse.cz>
Date: Tue, 12 Apr 2011 10:48:06 +0200
From: Jiri Slaby <jslaby@...e.cz>
To: jirislaby@...il.com
Cc: Robert Hancock <hancockrwd@...il.com>, mjg59@...f.ucam.org,
lenb@...nel.org, linux-pci@...r.kernel.org,
linux-acpi@...r.kernel.org, jbarnes@...tuousgeek.org,
linux-kernel@...r.kernel.org, Jiri Slaby <jslaby@...e.cz>
Subject: [RFC 1/1] ACPI: pci_irq, add PRT_ quirk for IBM Bartolo
On IBM Bartolo machines, cards in 00:09.0 are defunct (if use
interrupts). DSDT says that this slot (with function 0, i.e. pin A) is
routed to \_SB_.PCI0.PIB_.LNKB. But it's not, it's wired to LNKC, so
interrupts are misrouted. Add a quirk for this to workaround the
issue.
References: https://bugzilla.novell.com/show_bug.cgi?id=595683
References: https://bugzilla.kernel.org/show_bug.cgi?id=18092
---
Hi,
as Robert Hancock suggested at:
http://lkml.org/lkml/2010/9/7/206
I reported this in bugzilla (the link above). But I got only replies
requesting another infos which I provided. Could anybody look into
the bug and confirm whether this patch is correct or not. And if yes,
could you apply that?
---
Not-signed-off-by: Jiri Slaby <jslaby@...e.cz>
Cc: Len Brown <lenb@...nel.org>
Cc: Jesse Barnes <jbarnes@...tuousgeek.org>
---
drivers/acpi/pci_irq.c | 15 +++++++++++++++
1 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/drivers/acpi/pci_irq.c b/drivers/acpi/pci_irq.c
index f907cfb..e8fb00d 100644
--- a/drivers/acpi/pci_irq.c
+++ b/drivers/acpi/pci_irq.c
@@ -124,6 +124,18 @@ static const struct dmi_system_id hp_t5710[] = {
{ }
};
+/* https://bugzilla.novell.com/show_bug.cgi?id=595683 */
+static const struct dmi_system_id ibm_bartolo[] = {
+ {
+ .ident = "IBM Bartolo",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "IBM CORPORATION"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "4810320"),
+ },
+ },
+ { }
+};
+
struct prt_quirk {
const struct dmi_system_id *system;
unsigned int segment;
@@ -151,6 +163,9 @@ static const struct prt_quirk prt_quirks[] = {
{ hp_t5710, 0, 0, 1, PCI_INTX_PIN('A'),
"\\_SB_.PCI0.LNK1",
"\\_SB_.PCI0.LNK3"},
+ { ibm_bartolo, 0, 0, 9, PCI_INTX_PIN('A'),
+ "\\_SB_.PCI0.PIB_.LNKB",
+ "\\_SB_.PCI0.PIB_.LNKC"},
};
static void do_prt_fixups(struct acpi_prt_entry *entry,
--
1.7.4.2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists