aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/tty/serial/8250
diff options
context:
space:
mode:
authorMatt Schulte <matts@commtech-fastcom.com>2012-11-21 10:40:49 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-11-21 19:30:03 -0500
commit30fa96a34694d93bf76311944c9521bbcdd4e58e (patch)
treefefa64ed64aa9d180a577bd269b6263b7d44ea41 /drivers/tty/serial/8250
parent81db0772dc16b31185418f51ce6a1c0098a84367 (diff)
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>
Diffstat (limited to 'drivers/tty/serial/8250')
-rw-r--r--drivers/tty/serial/8250/8250.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/tty/serial/8250/8250.c b/drivers/tty/serial/8250/8250.c
index 4ab8af797ad9..d085e3a8ec06 100644
--- a/drivers/tty/serial/8250/8250.c
+++ b/drivers/tty/serial/8250/8250.c
@@ -1578,7 +1578,8 @@ static int exar_handle_irq(struct uart_port *port)
1578 1578
1579 ret = serial8250_handle_irq(port, iir); 1579 ret = serial8250_handle_irq(port, iir);
1580 1580
1581 if (port->type == PORT_XR17V35X) { 1581 if ((port->type == PORT_XR17V35X) ||
1582 (port->type == PORT_XR17D15X)) {
1582 int0 = serial_port_in(port, 0x80); 1583 int0 = serial_port_in(port, 0x80);
1583 int1 = serial_port_in(port, 0x81); 1584 int1 = serial_port_in(port, 0x81);
1584 int2 = serial_port_in(port, 0x82); 1585 int2 = serial_port_in(port, 0x82);
@@ -2689,7 +2690,8 @@ static void serial8250_config_port(struct uart_port *port, int flags)
2689 serial8250_release_std_resource(up); 2690 serial8250_release_std_resource(up);
2690 2691
2691 /* Fixme: probably not the best place for this */ 2692 /* Fixme: probably not the best place for this */
2692 if (port->type == PORT_XR17V35X) 2693 if ((port->type == PORT_XR17V35X) ||
2694 (port->type == PORT_XR17D15X))
2693 port->handle_irq = exar_handle_irq; 2695 port->handle_irq = exar_handle_irq;
2694} 2696}
2695 2697