]> err.no Git - linux-2.6/blobdiff - arch/ia64/kernel/setup.c
Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6
[linux-2.6] / arch / ia64 / kernel / setup.c
index cd9a37a552c3099a2de603d923e9d23984b3c347..9e392a30d19783d3426ca720b95fbea1221a71ff 100644 (file)
@@ -60,6 +60,7 @@
 #include <asm/smp.h>
 #include <asm/system.h>
 #include <asm/unistd.h>
+#include <asm/hpsim.h>
 
 #if defined(CONFIG_SMP) && (IA64_CPU_SIZE > PAGE_SIZE)
 # error "struct cpuinfo_ia64 too big!"
@@ -389,6 +390,8 @@ early_console_setup (char *cmdline)
        if (!efi_setup_pcdp_console(cmdline))
                earlycons++;
 #endif
+       if (!simcons_register())
+               earlycons++;
 
        return (earlycons) ? 0 : -1;
 }
@@ -953,6 +956,11 @@ cpu_init (void)
 
        /* clear TPR & XTP to enable all interrupt classes: */
        ia64_setreg(_IA64_REG_CR_TPR, 0);
+
+       /* Clear any pending interrupts left by SAL/EFI */
+       while (ia64_get_ivr() != IA64_SPURIOUS_INT_VECTOR)
+               ia64_eoi();
+
 #ifdef CONFIG_SMP
        normal_xtp();
 #endif