Use setup_irq() instead of request_irq() to set up system timer in ColdFire simple timer code. With the old m68knommu irq code this was safe, but it is not now within the generic irq framework.
Signed-off-by: Greg Ungerer <[EMAIL PROTECTED]> --- diff -Naur linux-2.6.23-rc1-git2/arch/m68knommu/platform/5307/timers.c linux/arch/m68knommu/platform/5307/timers.c --- linux-2.6.23-rc1-git2/arch/m68knommu/platform/5307/timers.c 2007-07-26 10:47:41.000000000 +1000 +++ linux/arch/m68knommu/platform/5307/timers.c 2007-07-26 22:54:53.000000000 +1000 @@ -3,7 +3,7 @@ /* * timers.c -- generic ColdFire hardware timer support. * - * Copyright (C) 1999-2006, Greg Ungerer ([EMAIL PROTECTED]) + * Copyright (C) 1999-2007, Greg Ungerer ([EMAIL PROTECTED]) */ /***************************************************************************/ @@ -13,8 +13,8 @@ #include <linux/param.h> #include <linux/interrupt.h> #include <linux/init.h> +#include <linux/irq.h> #include <asm/io.h> -#include <asm/irq.h> #include <asm/traps.h> #include <asm/machdep.h> #include <asm/coldfire.h> @@ -62,17 +62,24 @@ /***************************************************************************/ +static struct irqaction coldfire_timer_irq = { + .name = "timer", + .flags = IRQF_DISABLED | IRQF_TIMER, +}; + static int ticks_per_intr; void coldfire_timer_init(irq_handler_t handler) { + coldfire_timer_irq.handler = handler; + setup_irq(mcf_timervector, &coldfire_timer_irq); + __raw_writew(MCFTIMER_TMR_DISABLE, TA(MCFTIMER_TMR)); ticks_per_intr = (MCF_BUSCLK / 16) / HZ; __raw_writetrr(ticks_per_intr - 1, TA(MCFTIMER_TRR)); __raw_writew(MCFTIMER_TMR_ENORI | MCFTIMER_TMR_CLK16 | MCFTIMER_TMR_RESTART | MCFTIMER_TMR_ENABLE, TA(MCFTIMER_TMR)); - request_irq(mcf_timervector, handler, IRQF_DISABLED, "timer", NULL); mcf_settimericr(1, mcf_timerlevel); #ifdef CONFIG_HIGHPROFILE - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/