From: Feng Tang <feng.tang@intel.com>
To: len.brown@intel.com, linux-kernel@vger.kernel.org,
linux-acpi@vger.kernel.org
Cc: rui.zhang@intel.com, fazerxlo@o2.pl,
Feng Tang <feng.tang@intel.com>,
x86@kernel.org
Subject: [PATCH] ACPI: Fix the irq0 assigning issue for AMILO PRO V2030 platform
Date: Tue, 29 May 2012 10:43:38 +0800 [thread overview]
Message-ID: <1338259418-6167-1-git-send-email-feng.tang@intel.com> (raw)
This is to fix the kernel bugzilla 40002: "IRQ 0 assigned to VGA"
https://bugzilla.kernel.org/show_bug.cgi?id=40002
The root cause is the buggy FW, whose ACPI tables assign the GSI 16
to 2 irqs 0 and 16(VGA), and the VGA is the right owner of GSI 16.
So add a quirk to ignore the irq0 overriding GSI 16 for the
FUJITSU SIEMENS AMILO PRO V2030 platform will solve this issue.
This also slightly modify the current irq0 override handling, as it
only covered the irq0 overriding GSI 2 case.
Reported-and-tested-by: Szymon Kowalczyk <fazerxlo@o2.pl>
Signed-off-by: Feng Tang <feng.tang@intel.com>
Cc: x86@kernel.org
---
arch/x86/kernel/acpi/boot.c | 17 ++++++++++++++---
1 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
index 4558f0d..06c78c3 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
@@ -416,12 +416,14 @@ acpi_parse_int_src_ovr(struct acpi_subtable_header * header,
return 0;
}
- if (intsrc->source_irq == 0 && intsrc->global_irq == 2) {
+ if (intsrc->source_irq == 0) {
if (acpi_skip_timer_override) {
- printk(PREFIX "BIOS IRQ0 pin2 override ignored.\n");
+ printk(PREFIX "BIOS IRQ0 override ignored.\n");
return 0;
}
- if (acpi_fix_pin2_polarity && (intsrc->inti_flags & ACPI_MADT_POLARITY_MASK)) {
+
+ if ((intsrc->global_irq == 2) && acpi_fix_pin2_polarity
+ && (intsrc->inti_flags & ACPI_MADT_POLARITY_MASK)) {
intsrc->inti_flags &= ~ACPI_MADT_POLARITY_MASK;
printk(PREFIX "BIOS IRQ0 pin2 override: forcing polarity to high active.\n");
}
@@ -1466,6 +1468,15 @@ static struct dmi_system_id __initdata acpi_dmi_table_late[] = {
DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq 6715b"),
},
},
+ {
+ .callback = dmi_ignore_irq0_timer_override,
+ .ident = "FUJITSU SIEMENS",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "AMILO PRO V2030"),
+ },
+ },
+
{}
};
--
1.7.9
next reply other threads:[~2012-05-29 2:47 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-29 2:43 Feng Tang [this message]
2012-06-01 16:53 ` [PATCH] ACPI: Fix the irq0 assigning issue for AMILO PRO V2030 platform Len Brown
2012-06-04 3:17 ` Feng Tang
2012-06-04 5:23 ` [PATCH 1/3] ACPI: Make acpi_skip_timer_override cover all source_irq==0 cases Feng Tang
2012-06-04 5:23 ` [PATCH 2/3] ACPI: Remove one board specific WARN when ignoring timer overriding Feng Tang
2012-06-04 5:23 ` [PATCH 3/3] ACPI: Add a quirk for "AMILO PRO V2030" to ignore the " Feng Tang
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=1338259418-6167-1-git-send-email-feng.tang@intel.com \
--to=feng.tang@intel.com \
--cc=fazerxlo@o2.pl \
--cc=len.brown@intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rui.zhang@intel.com \
--cc=x86@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;
as well as URLs for NNTP newsgroup(s).