aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ia64/kernel/setup.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/ia64/kernel/setup.c')
-rw-r--r--arch/ia64/kernel/setup.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/arch/ia64/kernel/setup.c b/arch/ia64/kernel/setup.c
index 407efea04bf5..9e392a30d197 100644
--- a/arch/ia64/kernel/setup.c
+++ b/arch/ia64/kernel/setup.c
@@ -60,6 +60,7 @@
60#include <asm/smp.h> 60#include <asm/smp.h>
61#include <asm/system.h> 61#include <asm/system.h>
62#include <asm/unistd.h> 62#include <asm/unistd.h>
63#include <asm/hpsim.h>
63 64
64#if defined(CONFIG_SMP) && (IA64_CPU_SIZE > PAGE_SIZE) 65#if defined(CONFIG_SMP) && (IA64_CPU_SIZE > PAGE_SIZE)
65# error "struct cpuinfo_ia64 too big!" 66# error "struct cpuinfo_ia64 too big!"
@@ -389,13 +390,8 @@ early_console_setup (char *cmdline)
389 if (!efi_setup_pcdp_console(cmdline)) 390 if (!efi_setup_pcdp_console(cmdline))
390 earlycons++; 391 earlycons++;
391#endif 392#endif
392#ifdef CONFIG_HP_SIMSERIAL_CONSOLE 393 if (!simcons_register())
393 {
394 extern struct console hpsim_cons;
395 register_console(&hpsim_cons);
396 earlycons++; 394 earlycons++;
397 }
398#endif
399 395
400 return (earlycons) ? 0 : -1; 396 return (earlycons) ? 0 : -1;
401} 397}
@@ -960,6 +956,11 @@ cpu_init (void)
960 956
961 /* clear TPR & XTP to enable all interrupt classes: */ 957 /* clear TPR & XTP to enable all interrupt classes: */
962 ia64_setreg(_IA64_REG_CR_TPR, 0); 958 ia64_setreg(_IA64_REG_CR_TPR, 0);
959
960 /* Clear any pending interrupts left by SAL/EFI */
961 while (ia64_get_ivr() != IA64_SPURIOUS_INT_VECTOR)
962 ia64_eoi();
963
963#ifdef CONFIG_SMP 964#ifdef CONFIG_SMP
964 normal_xtp(); 965 normal_xtp();
965#endif 966#endif