diff options
author | Ingo Molnar <mingo@kernel.org> | 2015-03-05 14:52:18 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2015-03-05 14:52:18 -0500 |
commit | 33ca8a53f262b4af40611bea331b8c87d133af72 (patch) | |
tree | d6468c820a556c4915bcb5b761204a0fb19e8225 /arch/x86/kernel/acpi/boot.c | |
parent | db2dcb4f91d5fec5c346a82c309187ee821e2495 (diff) | |
parent | 13a7a6ac0a11197edcd0f756a035f472b42cdf8b (diff) |
Merge tag 'v4.0-rc2' into irq/core, to refresh the tree before applying new changes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/x86/kernel/acpi/boot.c')
-rw-r--r-- | arch/x86/kernel/acpi/boot.c | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c index b9e30daa0881..3d525c6124f6 100644 --- a/arch/x86/kernel/acpi/boot.c +++ b/arch/x86/kernel/acpi/boot.c | |||
@@ -613,6 +613,11 @@ int acpi_gsi_to_irq(u32 gsi, unsigned int *irqp) | |||
613 | { | 613 | { |
614 | int rc, irq, trigger, polarity; | 614 | int rc, irq, trigger, polarity; |
615 | 615 | ||
616 | if (acpi_irq_model == ACPI_IRQ_MODEL_PIC) { | ||
617 | *irqp = gsi; | ||
618 | return 0; | ||
619 | } | ||
620 | |||
616 | rc = acpi_get_override_irq(gsi, &trigger, &polarity); | 621 | rc = acpi_get_override_irq(gsi, &trigger, &polarity); |
617 | if (rc == 0) { | 622 | if (rc == 0) { |
618 | trigger = trigger ? ACPI_LEVEL_SENSITIVE : ACPI_EDGE_SENSITIVE; | 623 | trigger = trigger ? ACPI_LEVEL_SENSITIVE : ACPI_EDGE_SENSITIVE; |
@@ -653,6 +658,7 @@ static int acpi_register_gsi_pic(struct device *dev, u32 gsi, | |||
653 | return gsi; | 658 | return gsi; |
654 | } | 659 | } |
655 | 660 | ||
661 | #ifdef CONFIG_X86_LOCAL_APIC | ||
656 | static int acpi_register_gsi_ioapic(struct device *dev, u32 gsi, | 662 | static int acpi_register_gsi_ioapic(struct device *dev, u32 gsi, |
657 | int trigger, int polarity) | 663 | int trigger, int polarity) |
658 | { | 664 | { |
@@ -675,6 +681,7 @@ static void acpi_unregister_gsi_ioapic(u32 gsi) | |||
675 | mutex_unlock(&acpi_ioapic_lock); | 681 | mutex_unlock(&acpi_ioapic_lock); |
676 | #endif | 682 | #endif |
677 | } | 683 | } |
684 | #endif | ||
678 | 685 | ||
679 | int (*__acpi_register_gsi)(struct device *dev, u32 gsi, | 686 | int (*__acpi_register_gsi)(struct device *dev, u32 gsi, |
680 | int trigger, int polarity) = acpi_register_gsi_pic; | 687 | int trigger, int polarity) = acpi_register_gsi_pic; |
@@ -843,13 +850,7 @@ int acpi_ioapic_registered(acpi_handle handle, u32 gsi_base) | |||
843 | 850 | ||
844 | static int __init acpi_parse_sbf(struct acpi_table_header *table) | 851 | static int __init acpi_parse_sbf(struct acpi_table_header *table) |
845 | { | 852 | { |
846 | struct acpi_table_boot *sb; | 853 | struct acpi_table_boot *sb = (struct acpi_table_boot *)table; |
847 | |||
848 | sb = (struct acpi_table_boot *)table; | ||
849 | if (!sb) { | ||
850 | printk(KERN_WARNING PREFIX "Unable to map SBF\n"); | ||
851 | return -ENODEV; | ||
852 | } | ||
853 | 854 | ||
854 | sbf_port = sb->cmos_index; /* Save CMOS port */ | 855 | sbf_port = sb->cmos_index; /* Save CMOS port */ |
855 | 856 | ||
@@ -863,13 +864,7 @@ static struct resource *hpet_res __initdata; | |||
863 | 864 | ||
864 | static int __init acpi_parse_hpet(struct acpi_table_header *table) | 865 | static int __init acpi_parse_hpet(struct acpi_table_header *table) |
865 | { | 866 | { |
866 | struct acpi_table_hpet *hpet_tbl; | 867 | struct acpi_table_hpet *hpet_tbl = (struct acpi_table_hpet *)table; |
867 | |||
868 | hpet_tbl = (struct acpi_table_hpet *)table; | ||
869 | if (!hpet_tbl) { | ||
870 | printk(KERN_WARNING PREFIX "Unable to map HPET\n"); | ||
871 | return -ENODEV; | ||
872 | } | ||
873 | 868 | ||
874 | if (hpet_tbl->address.space_id != ACPI_SPACE_MEM) { | 869 | if (hpet_tbl->address.space_id != ACPI_SPACE_MEM) { |
875 | printk(KERN_WARNING PREFIX "HPET timers must be located in " | 870 | printk(KERN_WARNING PREFIX "HPET timers must be located in " |