diff options
author | Jesper Nilsson <jesper.nilsson@axis.com> | 2007-11-14 17:01:21 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-11-14 18:45:47 -0800 |
commit | 3244c77bd3460e9701ffeecc2452d7f2ee17106c (patch) | |
tree | 35202782ca702d9dc78f3120d65a8129f653412c /arch/cris | |
parent | 1b8be1d82dd3b1ef32b15923123afa03bfeeb116 (diff) | |
download | blackbird-op-linux-3244c77bd3460e9701ffeecc2452d7f2ee17106c.tar.gz blackbird-op-linux-3244c77bd3460e9701ffeecc2452d7f2ee17106c.zip |
CRISv10: fix timer interrupt parameters
Fix timer interrupt parameters for CRIS v10.
- irq_handler_t only takes two arguments, use get_irq_regs to get
regs for profiling.
- Call update_process_times.
- Remove CVS tag.
Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
Cc: Mikael Starvik <mikael.starvik@axis.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/cris')
-rw-r--r-- | arch/cris/arch-v10/kernel/time.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/arch/cris/arch-v10/kernel/time.c b/arch/cris/arch-v10/kernel/time.c index 575a14bb1106..5976f6199c47 100644 --- a/arch/cris/arch-v10/kernel/time.c +++ b/arch/cris/arch-v10/kernel/time.c @@ -1,5 +1,4 @@ -/* $Id: time.c,v 1.5 2004/09/29 06:12:46 starvik Exp $ - * +/* * linux/arch/cris/arch-v10/kernel/time.c * * Copyright (C) 1991, 1992, 1995 Linus Torvalds @@ -20,6 +19,7 @@ #include <asm/io.h> #include <asm/delay.h> #include <asm/rtc.h> +#include <asm/irq_regs.h> /* define this if you need to use print_timestamp */ /* it will make jiffies at 96 hz instead of 100 hz though */ @@ -201,8 +201,9 @@ static long last_rtc_update = 0; extern void cris_do_profile(struct pt_regs *regs); static inline irqreturn_t -timer_interrupt(int irq, void *dev_id, struct pt_regs *regs) +timer_interrupt(int irq, void *dev_id) { + struct pt_regs *regs = get_irq_regs(); /* acknowledge the timer irq */ #ifdef USE_CASCADE_TIMERS @@ -221,9 +222,11 @@ timer_interrupt(int irq, void *dev_id, struct pt_regs *regs) #endif /* reset watchdog otherwise it resets us! */ - reset_watchdog(); + /* Update statistics. */ + update_process_times(user_mode(regs)); + /* call the real timer interrupt handler */ do_timer(1); |