* timer irq setup
@ 2007-12-17 10:35 Thomas Koeller
2007-12-18 10:48 ` Ralf Baechle
0 siblings, 1 reply; 2+ messages in thread
From: Thomas Koeller @ 2007-12-17 10:35 UTC (permalink / raw)
To: linux-mips
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.
tk
--
Thomas Koeller
thomas at koeller dot dyndns dot org
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: timer irq setup
2007-12-17 10:35 timer irq setup Thomas Koeller
@ 2007-12-18 10:48 ` Ralf Baechle
0 siblings, 0 replies; 2+ messages in thread
From: Ralf Baechle @ 2007-12-18 10:48 UTC (permalink / raw)
To: Thomas Koeller; +Cc: linux-mips
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
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2007-12-18 10:54 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-17 10:35 timer irq setup Thomas Koeller
2007-12-18 10:48 ` Ralf Baechle
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox