aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/acpi/boot.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2011-03-09 10:38:55 +0100
committerIngo Molnar <mingo@elte.hu>2011-03-09 10:38:59 +0100
commitc8b44163b754612fc4769fe1c5df00e98fc9d3c6 (patch)
tree77706ff1f2a72ed294885b6cf0a7c0de0f92d6df /arch/x86/kernel/acpi/boot.c
parentac23f25355ef53f3d14352fcff3c6817527a9749 (diff)
parenta5abba989deceb731047425812d268daf7536575 (diff)
downloadkernel_samsung_smdk4412-c8b44163b754612fc4769fe1c5df00e98fc9d3c6.zip
kernel_samsung_smdk4412-c8b44163b754612fc4769fe1c5df00e98fc9d3c6.tar.gz
kernel_samsung_smdk4412-c8b44163b754612fc4769fe1c5df00e98fc9d3c6.tar.bz2
Merge commit 'v2.6.38-rc8' into x86/asm
Merge reason: Update with the latest fixes. Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/acpi/boot.c')
-rw-r--r--arch/x86/kernel/acpi/boot.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
index b3a7113..3e6e2d6 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
@@ -72,6 +72,7 @@ u8 acpi_sci_flags __initdata;
int acpi_sci_override_gsi __initdata;
int acpi_skip_timer_override __initdata;
int acpi_use_timer_override __initdata;
+int acpi_fix_pin2_polarity __initdata;
#ifdef CONFIG_X86_LOCAL_APIC
static u64 acpi_lapic_addr __initdata = APIC_DEFAULT_PHYS_BASE;
@@ -415,10 +416,15 @@ acpi_parse_int_src_ovr(struct acpi_subtable_header * header,
return 0;
}
- if (acpi_skip_timer_override &&
- intsrc->source_irq == 0 && intsrc->global_irq == 2) {
- printk(PREFIX "BIOS IRQ0 pin2 override ignored.\n");
- return 0;
+ if (intsrc->source_irq == 0 && intsrc->global_irq == 2) {
+ if (acpi_skip_timer_override) {
+ printk(PREFIX "BIOS IRQ0 pin2 override ignored.\n");
+ return 0;
+ }
+ if (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");
+ }
}
mp_override_legacy_irq(intsrc->source_irq,