diff options
Diffstat (limited to 'arch/i386')
-rw-r--r-- | arch/i386/kernel/acpi/boot.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c index 92f79cdd9a48..ab974ff97073 100644 --- a/arch/i386/kernel/acpi/boot.c +++ b/arch/i386/kernel/acpi/boot.c | |||
@@ -332,7 +332,7 @@ acpi_parse_ioapic(acpi_table_entry_header * header, const unsigned long end) | |||
332 | /* | 332 | /* |
333 | * Parse Interrupt Source Override for the ACPI SCI | 333 | * Parse Interrupt Source Override for the ACPI SCI |
334 | */ | 334 | */ |
335 | static void acpi_sci_ioapic_setup(u32 gsi, u16 polarity, u16 trigger) | 335 | static void acpi_sci_ioapic_setup(u32 bus_irq, u32 gsi, u16 polarity, u16 trigger) |
336 | { | 336 | { |
337 | if (trigger == 0) /* compatible SCI trigger is level */ | 337 | if (trigger == 0) /* compatible SCI trigger is level */ |
338 | trigger = 3; | 338 | trigger = 3; |
@@ -352,13 +352,13 @@ static void acpi_sci_ioapic_setup(u32 gsi, u16 polarity, u16 trigger) | |||
352 | * If GSI is < 16, this will update its flags, | 352 | * If GSI is < 16, this will update its flags, |
353 | * else it will create a new mp_irqs[] entry. | 353 | * else it will create a new mp_irqs[] entry. |
354 | */ | 354 | */ |
355 | mp_override_legacy_irq(gsi, polarity, trigger, gsi); | 355 | mp_override_legacy_irq(bus_irq, polarity, trigger, gsi); |
356 | 356 | ||
357 | /* | 357 | /* |
358 | * stash over-ride to indicate we've been here | 358 | * stash over-ride to indicate we've been here |
359 | * and for later update of acpi_fadt | 359 | * and for later update of acpi_fadt |
360 | */ | 360 | */ |
361 | acpi_sci_override_gsi = gsi; | 361 | acpi_sci_override_gsi = bus_irq; |
362 | return; | 362 | return; |
363 | } | 363 | } |
364 | 364 | ||
@@ -376,7 +376,7 @@ acpi_parse_int_src_ovr(acpi_table_entry_header * header, | |||
376 | acpi_table_print_madt_entry(header); | 376 | acpi_table_print_madt_entry(header); |
377 | 377 | ||
378 | if (intsrc->bus_irq == acpi_fadt.sci_int) { | 378 | if (intsrc->bus_irq == acpi_fadt.sci_int) { |
379 | acpi_sci_ioapic_setup(intsrc->global_irq, | 379 | acpi_sci_ioapic_setup(intsrc->bus_irq, intsrc->global_irq, |
380 | intsrc->flags.polarity, | 380 | intsrc->flags.polarity, |
381 | intsrc->flags.trigger); | 381 | intsrc->flags.trigger); |
382 | return 0; | 382 | return 0; |
@@ -879,7 +879,7 @@ static int __init acpi_parse_madt_ioapic_entries(void) | |||
879 | * pretend we got one so we can set the SCI flags. | 879 | * pretend we got one so we can set the SCI flags. |
880 | */ | 880 | */ |
881 | if (!acpi_sci_override_gsi) | 881 | if (!acpi_sci_override_gsi) |
882 | acpi_sci_ioapic_setup(acpi_fadt.sci_int, 0, 0); | 882 | acpi_sci_ioapic_setup(acpi_fadt.sci_int, acpi_fadt.sci_int, 0, 0); |
883 | 883 | ||
884 | /* Fill in identity legacy mapings where no override */ | 884 | /* Fill in identity legacy mapings where no override */ |
885 | mp_config_acpi_legacy_irqs(); | 885 | mp_config_acpi_legacy_irqs(); |