Commit bcc4d1d5 authored by Todd Poynor's avatar Todd Poynor Committed by Tony Lindgren

[PATCH] ARM: OMAP: OMAP touchscreen timer BUG

Fix OMAP touchscreen timer restart BUG.

kernel BUG at include/linux/timer.h:83!
[<c002ac60>] (__bug+0x0/0x58) from [<c01a3fbc>] (omap_ts_handler+0x60/0x78)
[<c01a3f5c>] (omap_ts_handler+0x0/0x78) from [<c00269fc>] (__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: default avatarTodd Poynor <tpoynor@mvista.com>
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent 19f955b5
...@@ -120,8 +120,7 @@ static irqreturn_t omap_ts_handler(int irq, void *dev_id, struct pt_regs *regs) ...@@ -120,8 +120,7 @@ static irqreturn_t omap_ts_handler(int irq, void *dev_id, struct pt_regs *regs)
disable_irq(irq); disable_irq(irq);
} }
// restart acquire // restart acquire
ts_omap.ts_timer.expires = jiffies + HZ / 100; mod_timer(&ts_omap.ts_timer, jiffies + HZ / 100);
add_timer(&(ts_omap.ts_timer));
spin_unlock(&ts_omap.lock); spin_unlock(&ts_omap.lock);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment