linux-mips
[Top] [All Lists]

Re: timer irq setup

To: Thomas Koeller <thomas@koeller.dyndns.org>
Subject: Re: timer irq setup
From: Ralf Baechle <ralf@linux-mips.org>
Date: Tue, 18 Dec 2007 11:48:34 +0100
Cc: linux-mips@linux-mips.org
In-reply-to: <200712171135.24569.thomas@koeller.dyndns.org>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <200712171135.24569.thomas@koeller.dyndns.org>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mutt/1.5.17 (2007-11-01)
On Mon, Dec 17, 2007 at 11:35:22AM +0100, Thomas Koeller wrote:

> In arch/mips/kernel/traps.c, per_cpu_trap_init() contains
> code to set up the global cp0_compare_irq variable. Does
> this make sense? I'd say that either the irq setup should
> be moved to trap_init(), or cp0_compare_irq should be
> changed to a per-cpu variable, depending on what the original
> intention was.

Technically it would be legal to route the timer interrupt to a different
interrupt for each of possibly multiple processors, that's why it's done
in per_cpu_trap_init().

Obviously the rest of the code isn't quite there and also to best of my
knowledge all actual implementations use the same interrupt across all
cores.  So something like a global variable and a paranoia check in
per_cpu_trap_init() to ensure all CPUs really use the same interrupt
would seem reasonable.

  Ralf

<Prev in Thread] Current Thread [Next in Thread>