diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-01-30 20:10:03 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-01-30 22:21:19 -0500 |
commit | 5da690d29f0de17cc1835dd3eb8f8bd0945521f0 (patch) | |
tree | 8cc4e955535eff108446cc7154b93519a19b6185 | |
parent | 8f47e16348e8e25eedf639092a8a2f10a66aba34 (diff) |
x86, apic: unify the APIC vector enumeration
Most of the vector layout on 32-bit and 64-bit is identical now,
so eliminate the duplicated enumeration of the vectors.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r-- | arch/x86/include/asm/irq_vectors.h | 35 |
1 files changed, 12 insertions, 23 deletions
diff --git a/arch/x86/include/asm/irq_vectors.h b/arch/x86/include/asm/irq_vectors.h index 0e2220bb3142..393f85ecdd80 100644 --- a/arch/x86/include/asm/irq_vectors.h +++ b/arch/x86/include/asm/irq_vectors.h | |||
@@ -50,37 +50,26 @@ | |||
50 | * into a single vector (CALL_FUNCTION_VECTOR) to save vector space. | 50 | * into a single vector (CALL_FUNCTION_VECTOR) to save vector space. |
51 | * TLB, reschedule and local APIC vectors are performance-critical. | 51 | * TLB, reschedule and local APIC vectors are performance-critical. |
52 | */ | 52 | */ |
53 | #ifdef CONFIG_X86_32 | ||
54 | |||
55 | # define SPURIOUS_APIC_VECTOR 0xff | ||
56 | # define ERROR_APIC_VECTOR 0xfe | ||
57 | # define RESCHEDULE_VECTOR 0xfd | ||
58 | # define CALL_FUNCTION_VECTOR 0xfc | ||
59 | # define CALL_FUNCTION_SINGLE_VECTOR 0xfb | ||
60 | # define THERMAL_APIC_VECTOR 0xfa | ||
61 | /* 0xf8 - 0xf9 : free */ | ||
62 | # define INVALIDATE_TLB_VECTOR_END 0xf7 | ||
63 | # define INVALIDATE_TLB_VECTOR_START 0xf0 /* f0-f7 used for TLB flush */ | ||
64 | 53 | ||
65 | # define NUM_INVALIDATE_TLB_VECTORS 8 | 54 | #define SPURIOUS_APIC_VECTOR 0xff |
55 | #define ERROR_APIC_VECTOR 0xfe | ||
56 | #define RESCHEDULE_VECTOR 0xfd | ||
57 | #define CALL_FUNCTION_VECTOR 0xfc | ||
58 | #define CALL_FUNCTION_SINGLE_VECTOR 0xfb | ||
59 | #define THERMAL_APIC_VECTOR 0xfa | ||
66 | 60 | ||
61 | #ifdef CONFIG_X86_32 | ||
62 | /* 0xf8 - 0xf9 : free */ | ||
67 | #else | 63 | #else |
68 | |||
69 | # define SPURIOUS_APIC_VECTOR 0xff | ||
70 | # define ERROR_APIC_VECTOR 0xfe | ||
71 | # define RESCHEDULE_VECTOR 0xfd | ||
72 | # define CALL_FUNCTION_VECTOR 0xfc | ||
73 | # define CALL_FUNCTION_SINGLE_VECTOR 0xfb | ||
74 | # define THERMAL_APIC_VECTOR 0xfa | ||
75 | # define THRESHOLD_APIC_VECTOR 0xf9 | 64 | # define THRESHOLD_APIC_VECTOR 0xf9 |
76 | # define UV_BAU_MESSAGE 0xf8 | 65 | # define UV_BAU_MESSAGE 0xf8 |
77 | # define INVALIDATE_TLB_VECTOR_END 0xf7 | 66 | #endif |
78 | # define INVALIDATE_TLB_VECTOR_START 0xf0 /* f0-f7 used for TLB flush */ | ||
79 | 67 | ||
68 | /* f0-f7 used for spreading out TLB flushes: */ | ||
69 | #define INVALIDATE_TLB_VECTOR_END 0xf7 | ||
70 | #define INVALIDATE_TLB_VECTOR_START 0xf0 | ||
80 | #define NUM_INVALIDATE_TLB_VECTORS 8 | 71 | #define NUM_INVALIDATE_TLB_VECTORS 8 |
81 | 72 | ||
82 | #endif | ||
83 | |||
84 | /* | 73 | /* |
85 | * Local APIC timer IRQ vector is on a different priority level, | 74 | * Local APIC timer IRQ vector is on a different priority level, |
86 | * to work around the 'lost local interrupt if more than 2 IRQ | 75 | * to work around the 'lost local interrupt if more than 2 IRQ |