aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/apic_32.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2008-01-30 07:30:20 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:30:20 -0500
commit0e078e2f5060e06f9b3f32e55665ea835343440e (patch)
treef0369a50e9594efa13a3c21da23b9cad84a9a0ed /arch/x86/kernel/apic_32.c
parent3a12d93dc0b46bc710317272bf91640d7a8b6f18 (diff)
x86: prepare merging arch/x86/kernel/apic_32/64.c
Shuffle code around, so we get a readable diff. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> 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.c92
1 files changed, 47 insertions, 45 deletions
diff --git a/arch/x86/kernel/apic_32.c b/arch/x86/kernel/apic_32.c
index 3a069acb270c..420c15842e44 100644
--- a/arch/x86/kernel/apic_32.c
+++ b/arch/x86/kernel/apic_32.c
@@ -563,6 +563,9 @@ static void local_apic_timer_interrupt(void)
563 return; 563 return;
564 } 564 }
565 565
566 /*
567 * the NMI deadlock-detector uses this.
568 */
566 per_cpu(irq_stat, cpu).apic_timer_irqs++; 569 per_cpu(irq_stat, cpu).apic_timer_irqs++;
567 570
568 evt->event_handler(evt); 571 evt->event_handler(evt);
@@ -617,7 +620,7 @@ int setup_profiling_timer(unsigned int multiplier)
617void clear_local_APIC(void) 620void clear_local_APIC(void)
618{ 621{
619 int maxlvt = lapic_get_maxlvt(); 622 int maxlvt = lapic_get_maxlvt();
620 unsigned long v; 623 u32 v;
621 624
622 /* 625 /*
623 * Masking an LVT entry can trigger a local APIC error 626 * Masking an LVT entry can trigger a local APIC error
@@ -1210,50 +1213,6 @@ int __init APIC_init_uniprocessor (void)
1210} 1213}
1211 1214
1212/* 1215/*
1213 * APIC command line parameters
1214 */
1215static int __init parse_lapic(char *arg)
1216{
1217 enable_local_apic = 1;
1218 return 0;
1219}
1220early_param("lapic", parse_lapic);
1221
1222static int __init parse_nolapic(char *arg)
1223{
1224 enable_local_apic = -1;
1225 clear_bit(X86_FEATURE_APIC, boot_cpu_data.x86_capability);
1226 return 0;
1227}
1228early_param("nolapic", parse_nolapic);
1229
1230static int __init parse_disable_lapic_timer(char *arg)
1231{
1232 local_apic_timer_disabled = 1;
1233 return 0;
1234}
1235early_param("nolapic_timer", parse_disable_lapic_timer);
1236
1237static int __init parse_lapic_timer_c2_ok(char *arg)
1238{
1239 local_apic_timer_c2_ok = 1;
1240 return 0;
1241}
1242early_param("lapic_timer_c2_ok", parse_lapic_timer_c2_ok);
1243
1244static int __init apic_set_verbosity(char *str)
1245{
1246 if (strcmp("debug", str) == 0)
1247 apic_verbosity = APIC_DEBUG;
1248 else if (strcmp("verbose", str) == 0)
1249 apic_verbosity = APIC_VERBOSE;
1250 return 1;
1251}
1252
1253__setup("apic=", apic_set_verbosity);
1254
1255
1256/*
1257 * Local APIC interrupts 1216 * Local APIC interrupts
1258 */ 1217 */
1259 1218
@@ -1565,3 +1524,46 @@ device_initcall(init_lapic_sysfs);
1565static void apic_pm_activate(void) { } 1524static void apic_pm_activate(void) { }
1566 1525
1567#endif /* CONFIG_PM */ 1526#endif /* CONFIG_PM */
1527
1528/*
1529 * APIC command line parameters
1530 */
1531static int __init parse_lapic(char *arg)
1532{
1533 enable_local_apic = 1;
1534 return 0;
1535}
1536early_param("lapic", parse_lapic);
1537
1538static int __init parse_nolapic(char *arg)
1539{
1540 enable_local_apic = -1;
1541 clear_bit(X86_FEATURE_APIC, boot_cpu_data.x86_capability);
1542 return 0;
1543}
1544early_param("nolapic", parse_nolapic);
1545
1546static int __init parse_disable_lapic_timer(char *arg)
1547{
1548 local_apic_timer_disabled = 1;
1549 return 0;
1550}
1551early_param("nolapic_timer", parse_disable_lapic_timer);
1552
1553static int __init parse_lapic_timer_c2_ok(char *arg)
1554{
1555 local_apic_timer_c2_ok = 1;
1556 return 0;
1557}
1558early_param("lapic_timer_c2_ok", parse_lapic_timer_c2_ok);
1559
1560static int __init apic_set_verbosity(char *str)
1561{
1562 if (strcmp("debug", str) == 0)
1563 apic_verbosity = APIC_DEBUG;
1564 else if (strcmp("verbose", str) == 0)
1565 apic_verbosity = APIC_VERBOSE;
1566 return 1;
1567}
1568__setup("apic=", apic_set_verbosity);
1569