• Kevin D. Kissell's avatar
    [MIPS] Patch to arch/mips/mips-boards/generic/time.c · 846acaa2
    Kevin D. Kissell authored
    In hooking up the perf counter overflow interrupt to the experimental
    deprecated-real-soon-now /proc/perf interface last night, I had to
    revisit arch/mips/mips-boards/generic/time.c, and discovered that
    when the 2.6.9-based SMTC prototype was merged with the more
    recent tree, it was missed that arch/mips/kernel/time.c had changed
    so that even in SMP kernels, timer_interrupt() calls
    local_timer_interrupt(), so there is no longer a need to invoke it
    directly from mips_timer_interrupt() in those cases where
    timer_interrupt() has been called.  So I got rid of that, and added the
    invocation of perf_irq() if Cause.PCI is set, more-or-less following the
    same logic as in the non-SMTC case, with the modifications that (a) a
    runtime check for Release 2 isn't done, because it's redundant in SMTC),
    and (b) we check for a clock interrupt regardless of the value returned
    by the perf counter service - I don't understand why we'd want to control
    that with perf_irq(), but maybe one of you knows the story.  I also got
    rid of the stupid warning about the unused variable when compiled for
    SMTC (another artifact of the merge). The result hasn't been beaten to
    death, but boots, seems stable, and supports extended precision event
    counting.
    Signed-off-by: default avatarKevin D. Kissell <kevink@mips.com>
    Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
    846acaa2
time.c 8.1 KB