diff options
Diffstat (limited to 'arch/x86/kernel/apic/apic.c')
| -rw-r--r-- | arch/x86/kernel/apic/apic.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c index 6e29b2a77aa8..e5a4a1e01618 100644 --- a/arch/x86/kernel/apic/apic.c +++ b/arch/x86/kernel/apic/apic.c | |||
| @@ -1390,7 +1390,7 @@ void __init enable_IR_x2apic(void) | |||
| 1390 | } | 1390 | } |
| 1391 | 1391 | ||
| 1392 | local_irq_save(flags); | 1392 | local_irq_save(flags); |
| 1393 | mask_8259A(); | 1393 | legacy_pic->mask_all(); |
| 1394 | mask_IO_APIC_setup(ioapic_entries); | 1394 | mask_IO_APIC_setup(ioapic_entries); |
| 1395 | 1395 | ||
| 1396 | if (dmar_table_init_ret) | 1396 | if (dmar_table_init_ret) |
| @@ -1422,7 +1422,7 @@ void __init enable_IR_x2apic(void) | |||
| 1422 | nox2apic: | 1422 | nox2apic: |
| 1423 | if (!ret) /* IR enabling failed */ | 1423 | if (!ret) /* IR enabling failed */ |
| 1424 | restore_IO_APIC_setup(ioapic_entries); | 1424 | restore_IO_APIC_setup(ioapic_entries); |
| 1425 | unmask_8259A(); | 1425 | legacy_pic->restore_mask(); |
| 1426 | local_irq_restore(flags); | 1426 | local_irq_restore(flags); |
| 1427 | 1427 | ||
| 1428 | out: | 1428 | out: |
| @@ -1640,8 +1640,10 @@ int __init APIC_init_uniprocessor(void) | |||
| 1640 | } | 1640 | } |
| 1641 | #endif | 1641 | #endif |
| 1642 | 1642 | ||
| 1643 | #ifndef CONFIG_SMP | ||
| 1643 | enable_IR_x2apic(); | 1644 | enable_IR_x2apic(); |
| 1644 | default_setup_apic_routing(); | 1645 | default_setup_apic_routing(); |
| 1646 | #endif | ||
| 1645 | 1647 | ||
| 1646 | verify_local_APIC(); | 1648 | verify_local_APIC(); |
| 1647 | connect_bsp_APIC(); | 1649 | connect_bsp_APIC(); |
| @@ -2018,7 +2020,7 @@ static int lapic_resume(struct sys_device *dev) | |||
| 2018 | } | 2020 | } |
| 2019 | 2021 | ||
| 2020 | mask_IO_APIC_setup(ioapic_entries); | 2022 | mask_IO_APIC_setup(ioapic_entries); |
| 2021 | mask_8259A(); | 2023 | legacy_pic->mask_all(); |
| 2022 | } | 2024 | } |
| 2023 | 2025 | ||
| 2024 | if (x2apic_mode) | 2026 | if (x2apic_mode) |
| @@ -2062,7 +2064,7 @@ static int lapic_resume(struct sys_device *dev) | |||
| 2062 | 2064 | ||
| 2063 | if (intr_remapping_enabled) { | 2065 | if (intr_remapping_enabled) { |
| 2064 | reenable_intr_remapping(x2apic_mode); | 2066 | reenable_intr_remapping(x2apic_mode); |
| 2065 | unmask_8259A(); | 2067 | legacy_pic->restore_mask(); |
| 2066 | restore_IO_APIC_setup(ioapic_entries); | 2068 | restore_IO_APIC_setup(ioapic_entries); |
| 2067 | free_ioapic_entries(ioapic_entries); | 2069 | free_ioapic_entries(ioapic_entries); |
| 2068 | } | 2070 | } |
