Browse Source

x86/time: Unconditionally register legacy timer interrupt

Even without a PIC/PIT the legacy timer interrupt is required for HPET in
legacy replacement mode.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: len.brown@intel.com
Cc: rui.zhang@intel.com
Link: https://lkml.kernel.org/r/20171222092243.382623763@infradead.org
Peter Zijlstra 7 years ago
parent
commit
6d671e1b85
1 changed files with 6 additions and 3 deletions
  1. 6 3
      arch/x86/kernel/time.c

+ 6 - 3
arch/x86/kernel/time.c

@@ -69,9 +69,12 @@ static struct irqaction irq0  = {
 
 
 static void __init setup_default_timer_irq(void)
 static void __init setup_default_timer_irq(void)
 {
 {
-	if (!nr_legacy_irqs())
-		return;
-	setup_irq(0, &irq0);
+	/*
+	 * Unconditionally register the legacy timer; even without legacy
+	 * PIC/PIT we need this for the HPET0 in legacy replacement mode.
+	 */
+	if (setup_irq(0, &irq0))
+		pr_info("Failed to register legacy timer interrupt\n");
 }
 }
 
 
 /* Default timer init function */
 /* Default timer init function */