tty/8250 Add XR17D15x devices to the exar_handle_irq override
Add XR17D15x devices to the exar_handle_irq override: they have the
same extra interrupt register that could fire and never be serviced by
the standard handle_irq.
Signed-off-by: Matt Schulte <matts@commtech-fastcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
diff --git a/drivers/tty/serial/8250/8250.c b/drivers/tty/serial/8250/8250.c
index 4ab8af7..d085e3a 100644
--- a/drivers/tty/serial/8250/8250.c
+++ b/drivers/tty/serial/8250/8250.c
@@ -1578,7 +1578,8 @@
ret = serial8250_handle_irq(port, iir);
- if (port->type == PORT_XR17V35X) {
+ if ((port->type == PORT_XR17V35X) ||
+ (port->type == PORT_XR17D15X)) {
int0 = serial_port_in(port, 0x80);
int1 = serial_port_in(port, 0x81);
int2 = serial_port_in(port, 0x82);
@@ -2689,7 +2690,8 @@
serial8250_release_std_resource(up);
/* Fixme: probably not the best place for this */
- if (port->type == PORT_XR17V35X)
+ if ((port->type == PORT_XR17V35X) ||
+ (port->type == PORT_XR17D15X))
port->handle_irq = exar_handle_irq;
}