From bcc4d1d55ac60e334bccbd8ca07000f025c70663 Mon Sep 17 00:00:00 2001 From: Todd Poynor Date: Tue, 3 Jan 2006 09:33:46 -0800 Subject: [PATCH] [PATCH] ARM: OMAP: OMAP touchscreen timer BUG Fix OMAP touchscreen timer restart BUG. kernel BUG at include/linux/timer.h:83! [] (__bug+0x0/0x58) from [] (omap_ts_handler+0x60/0x78) [] (omap_ts_handler+0x0/0x78) from [] (__do_irq+0x4c/0x8c) which is: static inline void add_timer(struct timer_list *timer) { BUG_ON(timer_pending(timer)); __mod_timer(timer, timer->expires); Signed-off-by: Todd Poynor Signed-off-by: Tony Lindgren --- drivers/input/touchscreen/omap/omap_ts.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/input/touchscreen/omap/omap_ts.c b/drivers/input/touchscreen/omap/omap_ts.c index bfc9b591a8d..3b13c0d272f 100644 --- a/drivers/input/touchscreen/omap/omap_ts.c +++ b/drivers/input/touchscreen/omap/omap_ts.c @@ -120,8 +120,7 @@ static irqreturn_t omap_ts_handler(int irq, void *dev_id, struct pt_regs *regs) disable_irq(irq); } // restart acquire - ts_omap.ts_timer.expires = jiffies + HZ / 100; - add_timer(&(ts_omap.ts_timer)); + mod_timer(&ts_omap.ts_timer, jiffies + HZ / 100); spin_unlock(&ts_omap.lock); -- 2.41.0