diff options
Diffstat (limited to 'arch/i386/kernel/acpi/boot.c')
-rw-r--r-- | arch/i386/kernel/acpi/boot.c | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c index cbcb2c27f48b..9adabc4dba70 100644 --- a/arch/i386/kernel/acpi/boot.c +++ b/arch/i386/kernel/acpi/boot.c | |||
@@ -716,33 +716,26 @@ static int __init acpi_parse_fadt(unsigned long phys, unsigned long size) | |||
716 | printk(KERN_WARNING PREFIX "Unable to map FADT\n"); | 716 | printk(KERN_WARNING PREFIX "Unable to map FADT\n"); |
717 | return 0; | 717 | return 0; |
718 | } | 718 | } |
719 | /* initialize sci_int early for INT_SRC_OVR MADT parsing */ | ||
720 | acpi_fadt.sci_int = fadt->sci_int; | ||
721 | |||
722 | /* initialize rev and apic_phys_dest_mode for x86_64 genapic */ | ||
723 | acpi_fadt.revision = fadt->revision; | ||
724 | acpi_fadt.force_apic_physical_destination_mode = | ||
725 | fadt->force_apic_physical_destination_mode; | ||
726 | 719 | ||
727 | #ifdef CONFIG_X86_PM_TIMER | 720 | #ifdef CONFIG_X86_PM_TIMER |
728 | /* detect the location of the ACPI PM Timer */ | 721 | /* detect the location of the ACPI PM Timer */ |
729 | if (fadt->revision >= FADT2_REVISION_ID) { | 722 | if (fadt->header.revision >= FADT2_REVISION_ID) { |
730 | /* FADT rev. 2 */ | 723 | /* FADT rev. 2 */ |
731 | if (fadt->xpm_tmr_blk.address_space_id != | 724 | if (fadt->xpm_timer_block.space_id != |
732 | ACPI_ADR_SPACE_SYSTEM_IO) | 725 | ACPI_ADR_SPACE_SYSTEM_IO) |
733 | return 0; | 726 | return 0; |
734 | 727 | ||
735 | pmtmr_ioport = fadt->xpm_tmr_blk.address; | 728 | pmtmr_ioport = fadt->xpm_timer_block.address; |
736 | /* | 729 | /* |
737 | * "X" fields are optional extensions to the original V1.0 | 730 | * "X" fields are optional extensions to the original V1.0 |
738 | * fields, so we must selectively expand V1.0 fields if the | 731 | * fields, so we must selectively expand V1.0 fields if the |
739 | * corresponding X field is zero. | 732 | * corresponding X field is zero. |
740 | */ | 733 | */ |
741 | if (!pmtmr_ioport) | 734 | if (!pmtmr_ioport) |
742 | pmtmr_ioport = fadt->V1_pm_tmr_blk; | 735 | pmtmr_ioport = fadt->pm_timer_block; |
743 | } else { | 736 | } else { |
744 | /* FADT rev. 1 */ | 737 | /* FADT rev. 1 */ |
745 | pmtmr_ioport = fadt->V1_pm_tmr_blk; | 738 | pmtmr_ioport = fadt->pm_timer_block; |
746 | } | 739 | } |
747 | if (pmtmr_ioport) | 740 | if (pmtmr_ioport) |
748 | printk(KERN_INFO PREFIX "PM-Timer IO Port: %#x\n", | 741 | printk(KERN_INFO PREFIX "PM-Timer IO Port: %#x\n", |