diff options
author | Jeff Garzik <jeff@garzik.org> | 2007-02-17 15:11:43 -0500 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-02-17 15:11:43 -0500 |
commit | f630fe2817601314b2eb7ca5ddc23c7834646731 (patch) | |
tree | 3bfb4939b7bbc3859575ca8b58fa3f929b015941 /arch/x86_64/kernel/apic.c | |
parent | 48c871c1f6a7c7044dd76774fb469e65c7e2e4e8 (diff) | |
parent | 8a03d9a498eaf02c8a118752050a5154852c13bf (diff) |
Merge branch 'master' into upstream
Diffstat (limited to 'arch/x86_64/kernel/apic.c')
-rw-r--r-- | arch/x86_64/kernel/apic.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/x86_64/kernel/apic.c b/arch/x86_64/kernel/apic.c index 124b2d27b4ac..723417d924c0 100644 --- a/arch/x86_64/kernel/apic.c +++ b/arch/x86_64/kernel/apic.c | |||
@@ -37,6 +37,7 @@ | |||
37 | #include <asm/idle.h> | 37 | #include <asm/idle.h> |
38 | #include <asm/proto.h> | 38 | #include <asm/proto.h> |
39 | #include <asm/timex.h> | 39 | #include <asm/timex.h> |
40 | #include <asm/hpet.h> | ||
40 | #include <asm/apic.h> | 41 | #include <asm/apic.h> |
41 | 42 | ||
42 | int apic_mapped; | 43 | int apic_mapped; |
@@ -763,7 +764,7 @@ static void setup_APIC_timer(unsigned int clocks) | |||
763 | local_irq_save(flags); | 764 | local_irq_save(flags); |
764 | 765 | ||
765 | /* wait for irq slice */ | 766 | /* wait for irq slice */ |
766 | if (vxtime.hpet_address && hpet_use_timer) { | 767 | if (hpet_address && hpet_use_timer) { |
767 | int trigger = hpet_readl(HPET_T0_CMP); | 768 | int trigger = hpet_readl(HPET_T0_CMP); |
768 | while (hpet_readl(HPET_COUNTER) >= trigger) | 769 | while (hpet_readl(HPET_COUNTER) >= trigger) |
769 | /* do nothing */ ; | 770 | /* do nothing */ ; |
@@ -785,7 +786,7 @@ static void setup_APIC_timer(unsigned int clocks) | |||
785 | /* Turn off PIT interrupt if we use APIC timer as main timer. | 786 | /* Turn off PIT interrupt if we use APIC timer as main timer. |
786 | Only works with the PM timer right now | 787 | Only works with the PM timer right now |
787 | TBD fix it for HPET too. */ | 788 | TBD fix it for HPET too. */ |
788 | if (vxtime.mode == VXTIME_PMTMR && | 789 | if ((pmtmr_ioport != 0) && |
789 | smp_processor_id() == boot_cpu_id && | 790 | smp_processor_id() == boot_cpu_id && |
790 | apic_runs_main_timer == 1 && | 791 | apic_runs_main_timer == 1 && |
791 | !cpu_isset(boot_cpu_id, timer_interrupt_broadcast_ipi_mask)) { | 792 | !cpu_isset(boot_cpu_id, timer_interrupt_broadcast_ipi_mask)) { |