--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
-@@ -1428,6 +1428,8 @@ and is between 256 and 4096 characters.
+@@ -1428,6 +1428,8 @@ and is between 256 and 4096 characters.
nolapic_timer [X86-32,APIC] Do not use the local APIC timer.
/* Local APIC timer works in C2 */
int local_apic_timer_c2_ok;
EXPORT_SYMBOL_GPL(local_apic_timer_c2_ok);
-@@ -898,6 +904,125 @@ void __cpuinit end_local_APIC_setup(void
+@@ -925,6 +931,125 @@ void __cpuinit end_local_APIC_setup(void
apic_pm_activate();
}
/*
* Detect and enable local APICs on non-SMP boards.
* Original code written by Keir Fraser.
-@@ -945,6 +1070,11 @@ void __init early_init_lapic_mapping(voi
+@@ -972,6 +1097,11 @@ void __init early_init_lapic_mapping(voi
*/
void __init init_apic_mappings(void)
{
/*
* If no local APIC can be found then set up a fake all
* zeroes page to simulate the local APIC and another
-@@ -983,6 +1113,9 @@ int __init APIC_init_uniprocessor(void)
+@@ -1010,6 +1140,9 @@ int __init APIC_init_uniprocessor(void)
return -1;
}
verify_local_APIC();
connect_bsp_APIC();
-@@ -1236,10 +1369,14 @@ static int lapic_resume(struct sys_devic
+@@ -1263,10 +1396,14 @@ static int lapic_resume(struct sys_devic
maxlvt = lapic_get_maxlvt();
local_irq_save(flags);
apic_write(APIC_LVTERR, ERROR_APIC_VECTOR | APIC_LVT_MASKED);
apic_write(APIC_ID, apic_pm_state.apic_id);
apic_write(APIC_DFR, apic_pm_state.apic_dfr);
-@@ -1379,6 +1516,15 @@ __cpuinit int apic_is_clustered_box(void
+@@ -1406,6 +1543,15 @@ __cpuinit int apic_is_clustered_box(void
return (clusters > 2);
}
#else
num_physpages = max_pfn;
-+ if (cpu_has_x2apic)
-+ check_x2apic();
++ if (cpu_has_x2apic)
++ check_x2apic();
/* How many end-of-memory variables you have, grandma! */
/* need this before calling reserve_initrd */