From b7a7e14f654c80dfd3aa514adee663c74cfa4be9 Mon Sep 17 00:00:00 2001 From: Matt Schulte Date: Tue, 20 Nov 2012 11:23:56 -0600 Subject: 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 Signed-off-by: Greg Kroah-Hartman diff --git a/drivers/tty/serial/8250/8250.c b/drivers/tty/serial/8250/8250.c index 3624df6..39d9707 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 | -- cgit v0.10.2