serial: lantiq: add missing interrupt ack
commit 306320034e8fbe7ee1cc4f5269c55658b4612048 upstream.
Currently, the error interrupt is never acknowledged, so once active it
will stay active indefinitely, causing the handler to be called in an
infinite loop.
Fixes: 2f0fc4159a ("SERIAL: Lantiq: Add driver for MIPS Lantiq SOCs.")
Cc: <stable@vger.kernel.org>
Signed-off-by: Bernhard Seibold <mail@bernhard-seibold.de>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Message-ID: <20230602133029.546-1-mail@bernhard-seibold.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
0b6e65016c
commit
f4bc416942
@@ -274,6 +274,7 @@ lqasc_err_int(int irq, void *_port)
|
|||||||
struct ltq_uart_port *ltq_port = to_ltq_uart_port(port);
|
struct ltq_uart_port *ltq_port = to_ltq_uart_port(port);
|
||||||
|
|
||||||
spin_lock_irqsave(<q_port->lock, flags);
|
spin_lock_irqsave(<q_port->lock, flags);
|
||||||
|
__raw_writel(ASC_IRNCR_EIR, port->membase + LTQ_ASC_IRNCR);
|
||||||
/* clear any pending interrupts */
|
/* clear any pending interrupts */
|
||||||
asc_update_bits(0, ASCWHBSTATE_CLRPE | ASCWHBSTATE_CLRFE |
|
asc_update_bits(0, ASCWHBSTATE_CLRPE | ASCWHBSTATE_CLRFE |
|
||||||
ASCWHBSTATE_CLRROE, port->membase + LTQ_ASC_WHBSTATE);
|
ASCWHBSTATE_CLRROE, port->membase + LTQ_ASC_WHBSTATE);
|
||||||
|
|||||||
Reference in New Issue
Block a user