summaryrefslogtreecommitdiffstats
path: root/drivers/tty/serial/8250
diff options
context:
space:
mode:
authorMatt Schulte2012-11-20 18:23:56 +0100
committerGreg Kroah-Hartman2012-11-22 01:28:04 +0100
commitb7a7e14f654c80dfd3aa514adee663c74cfa4be9 (patch)
tree983d14ed2ec9e5e6bcf8b56e2438d064ab573e18 /drivers/tty/serial/8250
parentAdd register definitions used in several Exar PCI/PCIe UARTs (diff)
downloadkernel-qcow2-linux-b7a7e14f654c80dfd3aa514adee663c74cfa4be9.tar.gz
kernel-qcow2-linux-b7a7e14f654c80dfd3aa514adee663c74cfa4be9.tar.xz
kernel-qcow2-linux-b7a7e14f654c80dfd3aa514adee663c74cfa4be9.zip
serial: Optimization: check for presence of UPF_EXAR_EFR flag before serial_in
Optimization: check for presence of UPF_EXAR_EFR flag before serial_in 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, 3 insertions, 3 deletions
diff --git a/drivers/tty/serial/8250/8250.c b/drivers/tty/serial/8250/8250.c
index 3624df674a31..39d970719f7d 100644
--- a/drivers/tty/serial/8250/8250.c
+++ b/drivers/tty/serial/8250/8250.c
@@ -911,9 +911,9 @@ static void autoconfig_16550a(struct uart_8250_port *up)
* found at offset 0x09. Instead check the Deice ID (DVID)
* register for a 2, 4 or 8 port UART.
*/
- status1 = serial_in(up, UART_EXAR_DVID);
- if (status1 == 0x82 || status1 == 0x84 || status1 == 0x88) {
- if (up->port.flags & UPF_EXAR_EFR) {
+ if (up->port.flags & UPF_EXAR_EFR) {
+ status1 = serial_in(up, UART_EXAR_DVID);
+ if (status1 == 0x82 || status1 == 0x84 || status1 == 0x88) {
DEBUG_AUTOCONF("Exar XR17V35x ");
up->port.type = PORT_XR17V35X;
up->capabilities |= UART_CAP_AFE | UART_CAP_EFR |