]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
serial: clear proper MPSC interrupt cause bits
authorJay Lubomirski <jaylubo@motorola.com>
Wed, 27 Jun 2007 21:10:09 +0000 (14:10 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Sat, 4 Aug 2007 16:10:25 +0000 (09:10 -0700)
commited9ee0878e14d15d76ee792cac38def9d34f7f68
tree428533d8a646ff0a025f9ea069ba7b7f47f42421
parente278ed8f82fd26097a2ed8772c1211f6c5865ce1
serial: clear proper MPSC interrupt cause bits

The interrupt clearing code in mpsc_sdma_intr_ack() mistakenly clears the
interrupt for both controllers instead of just the one its supposed to.
This can result in the other controller appearing to hang because its
interrupt was effectively lost.

So, don't clear the interrupt cause bits for both MPSC controllers when
clearing the interrupt for one of them.  Just clear the one that is
supposed to be cleared.

Signed-off-by: Jay Lubomirski <jaylubo@motorola.com>
Acked-by: Mark A. Greer <mgreer@mvista.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/serial/mpsc.c