提交 c58c21c7 编写于 作者: N nshmyrev@yandex.ru 提交者: Linus Torvalds

[PATCH] v4l: 797: more intellect on clearing in bits on irq lock

- More intellect on clearing in bits on irq lock.
Signed-off-by: NNickolay V. Shmyrev <&lt;nshmyrev@yandex.ru&gt;>
Signed-off-by: NNickolay V. Shmyrev <nshmyrev@yandex.ru>
Signed-off-by: NMauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 cf1c5d1d
......@@ -3736,10 +3736,22 @@ static irqreturn_t bttv_irq(int irq, void *dev_id, struct pt_regs * regs)
count++;
if (count > 4) {
btwrite(0, BT848_INT_MASK);
printk(KERN_ERR
"bttv%d: IRQ lockup, cleared int mask [", btv->c.nr);
if (count > 8 || !(astat & BT848_INT_GPINT)) {
btwrite(0, BT848_INT_MASK);
printk(KERN_ERR
"bttv%d: IRQ lockup, cleared int mask [", btv->c.nr);
} else {
printk(KERN_ERR
"bttv%d: IRQ lockup, clearing GPINT from int mask [", btv->c.nr);
btwrite(btread(BT848_INT_MASK) & (-1 ^ BT848_INT_GPINT),
BT848_INT_MASK);
};
bttv_print_irqbits(stat,astat);
printk("]\n");
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册