diff options
author | Cyrill Gorcunov <gorcunov@gmail.com> | 2008-08-18 12:45:55 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-08-18 20:07:15 -0400 |
commit | c40aaec6868401671a0ca14ed77e9b2da2d1f223 (patch) | |
tree | 18ea19449da6423e71df9306d23caee9cadaea16 /arch/x86/kernel/apic_32.c | |
parent | c43da2f5e92fe3bcc256f0c0d6cb858368da5bd9 (diff) |
x86: apic - unify __setup_APIC_LVTT
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/apic_32.c')
-rw-r--r-- | arch/x86/kernel/apic_32.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/arch/x86/kernel/apic_32.c b/arch/x86/kernel/apic_32.c index 3c1562afa274..65419c7d437f 100644 --- a/arch/x86/kernel/apic_32.c +++ b/arch/x86/kernel/apic_32.c | |||
@@ -248,8 +248,12 @@ int lapic_get_maxlvt(void) | |||
248 | * Local APIC timer | 248 | * Local APIC timer |
249 | */ | 249 | */ |
250 | 250 | ||
251 | /* Clock divisor is set to 16 */ | 251 | /* Clock divisor */ |
252 | #ifdef CONFG_X86_64 | ||
253 | #define APIC_DIVISOR 1 | ||
254 | #else | ||
252 | #define APIC_DIVISOR 16 | 255 | #define APIC_DIVISOR 16 |
256 | #endif | ||
253 | 257 | ||
254 | /* | 258 | /* |
255 | * This function sets up the local APIC timer, with a timeout of | 259 | * This function sets up the local APIC timer, with a timeout of |
@@ -281,8 +285,8 @@ static void __setup_APIC_LVTT(unsigned int clocks, int oneshot, int irqen) | |||
281 | */ | 285 | */ |
282 | tmp_value = apic_read(APIC_TDCR); | 286 | tmp_value = apic_read(APIC_TDCR); |
283 | apic_write(APIC_TDCR, | 287 | apic_write(APIC_TDCR, |
284 | (tmp_value & ~(APIC_TDR_DIV_1 | APIC_TDR_DIV_TMBASE)) | | 288 | (tmp_value & ~(APIC_TDR_DIV_1 | APIC_TDR_DIV_TMBASE)) | |
285 | APIC_TDR_DIV_16); | 289 | APIC_TDR_DIV_16); |
286 | 290 | ||
287 | if (!oneshot) | 291 | if (!oneshot) |
288 | apic_write(APIC_TMICT, clocks / APIC_DIVISOR); | 292 | apic_write(APIC_TMICT, clocks / APIC_DIVISOR); |