diff options
author | peter <peter@FreeBSD.org> | 2005-02-28 23:37:35 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2005-02-28 23:37:35 +0000 |
commit | 7e1c228b9f27ff83fabc78c22fd65edec55298b8 (patch) | |
tree | cbf1056653b0a15ba5ee28bf92b70393252caed4 /sys/amd64/amd64/apic_vector.S | |
parent | 8115657ff0bbed634a787daeeed108209d0a65b9 (diff) | |
download | FreeBSD-src-7e1c228b9f27ff83fabc78c22fd65edec55298b8.zip FreeBSD-src-7e1c228b9f27ff83fabc78c22fd65edec55298b8.tar.gz |
MFi386: Bring over John's local apic timer code
Diffstat (limited to 'sys/amd64/amd64/apic_vector.S')
-rw-r--r-- | sys/amd64/amd64/apic_vector.S | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/sys/amd64/amd64/apic_vector.S b/sys/amd64/amd64/apic_vector.S index fc3c63b..97335cb 100644 --- a/sys/amd64/amd64/apic_vector.S +++ b/sys/amd64/amd64/apic_vector.S @@ -137,6 +137,23 @@ IDTVEC(spuriousint) ISR_VEC(6, apic_isr6) ISR_VEC(7, apic_isr7) +/* + * Local APIC periodic timer handler. + */ + .text + SUPERALIGN_TEXT +IDTVEC(timerint) + PUSH_FRAME + + movq lapic, %rdx + movl $0, LA_EOI(%rdx) /* End Of Interrupt to APIC */ + + FAKE_MCOUNT(TF_EIP(%esp)) + + call lapic_handle_timer + MEXITCOUNT + jmp doreti + #ifdef SMP /* * Global address space TLB shootdown. |