Input: ucb1400_ts - enable interrupt unconditionally
Sometimes, when using the touchscreen, it stops working till next restart and the following message is printed: ucb1400: unexpected IE_STATUS = 0x0 The following patch retriggers the touchscreen interrupt unconditionally. This prevents hanging of the touchscreen in case of bogus interrupt occurence. Signed-off-by: Pavel Revak <palo@bielyvlk.sk> Acked-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
This commit is contained in:
parent
1700f5fde8
commit
9b2fb2da4e
1 changed files with 4 additions and 4 deletions
|
@ -170,11 +170,11 @@ static void ucb1400_handle_pending_irq(struct ucb1400_ts *ucb)
|
||||||
ucb1400_reg_write(ucb->ac97, UCB_IE_CLEAR, isr);
|
ucb1400_reg_write(ucb->ac97, UCB_IE_CLEAR, isr);
|
||||||
ucb1400_reg_write(ucb->ac97, UCB_IE_CLEAR, 0);
|
ucb1400_reg_write(ucb->ac97, UCB_IE_CLEAR, 0);
|
||||||
|
|
||||||
if (isr & UCB_IE_TSPX) {
|
if (isr & UCB_IE_TSPX)
|
||||||
ucb1400_ts_irq_disable(ucb->ac97);
|
ucb1400_ts_irq_disable(ucb->ac97);
|
||||||
enable_irq(ucb->irq);
|
else
|
||||||
} else
|
dev_dbg(&ucb->ts_idev->dev, "ucb1400: unexpected IE_STATUS = %#x\n", isr);
|
||||||
printk(KERN_ERR "ucb1400: unexpected IE_STATUS = %#x\n", isr);
|
enable_irq(ucb->irq);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int ucb1400_ts_thread(void *_ucb)
|
static int ucb1400_ts_thread(void *_ucb)
|
||||||
|
|
Loading…
Reference in a new issue