Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* |
| 2 | * This file is designed to contain the BUILD_INTERRUPT specifications for |
| 3 | * all of the extra named interrupt vectors used by the architecture. |
| 4 | * Usually this is the Inter Process Interrupts (IPIs) |
| 5 | */ |
| 6 | |
| 7 | /* |
| 8 | * The following vectors are part of the Linux architecture, there |
| 9 | * is no hardware IRQ pin equivalent for them, they are triggered |
| 10 | * through the ICC by us (IPIs) |
| 11 | */ |
| 12 | #ifdef CONFIG_X86_SMP |
| 13 | BUILD_INTERRUPT(reschedule_interrupt,RESCHEDULE_VECTOR) |
| 14 | BUILD_INTERRUPT(invalidate_interrupt,INVALIDATE_TLB_VECTOR) |
| 15 | BUILD_INTERRUPT(call_function_interrupt,CALL_FUNCTION_VECTOR) |
Jens Axboe | 3b16cf8 | 2008-06-26 11:21:54 +0200 | [diff] [blame] | 16 | BUILD_INTERRUPT(call_function_single_interrupt,CALL_FUNCTION_SINGLE_VECTOR) |
Yinghai Lu | 497c9a1 | 2008-08-19 20:50:28 -0700 | [diff] [blame^] | 17 | BUILD_INTERRUPT(irq_move_cleanup_interrupt,IRQ_MOVE_CLEANUP_VECTOR) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 18 | #endif |
| 19 | |
| 20 | /* |
| 21 | * every pentium local APIC has two 'local interrupts', with a |
| 22 | * soft-definable vector attached to both interrupts, one of |
| 23 | * which is a timer interrupt, the other one is error counter |
| 24 | * overflow. Linux uses the local APIC timer interrupt to get |
| 25 | * a much simpler SMP time architecture: |
| 26 | */ |
| 27 | #ifdef CONFIG_X86_LOCAL_APIC |
| 28 | BUILD_INTERRUPT(apic_timer_interrupt,LOCAL_TIMER_VECTOR) |
| 29 | BUILD_INTERRUPT(error_interrupt,ERROR_APIC_VECTOR) |
| 30 | BUILD_INTERRUPT(spurious_interrupt,SPURIOUS_APIC_VECTOR) |
| 31 | |
| 32 | #ifdef CONFIG_X86_MCE_P4THERMAL |
| 33 | BUILD_INTERRUPT(thermal_interrupt,THERMAL_APIC_VECTOR) |
| 34 | #endif |
| 35 | |
| 36 | #endif |