Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753397AbYKFU5e (ORCPT ); Thu, 6 Nov 2008 15:57:34 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751435AbYKFU5X (ORCPT ); Thu, 6 Nov 2008 15:57:23 -0500 Received: from mail3.caviumnetworks.com ([12.108.191.235]:40111 "EHLO mail3.caviumnetworks.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751387AbYKFU5W (ORCPT ); Thu, 6 Nov 2008 15:57:22 -0500 From: David Daney To: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org, akpm@linux-foundation.org, David Daney Subject: [PATCH 26/29] 8250: Allow port type to specify bugs that are not probed for. Date: Thu, 6 Nov 2008 12:57:04 -0800 Message-Id: <1226005025-27804-4-git-send-email-ddaney@caviumnetworks.com> X-Mailer: git-send-email 1.5.6.5 In-Reply-To: <491358F5.7040002@caviumnetworks.com> References: <491358F5.7040002@caviumnetworks.com> X-OriginalArrivalTime: 06 Nov 2008 20:57:12.0397 (UTC) FILETIME=[3DBB97D0:01C94052] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2044 Lines: 56 Add a bugs field to the serial8250_config and propagate it to the port's bugs field when the port is registered and configured. This is a follow on to the previous patch. Now that we can specify the port type and don't have to probe for it, we can avoid probing for bugs if they are known with certainty to exist. The alternative is to load up 8250.c with a bunch of OCTEON specific special cases in the probing code. Signed-off-by: David Daney --- drivers/serial/8250.c | 2 ++ drivers/serial/8250.h | 1 + 2 files changed, 3 insertions(+), 0 deletions(-) diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c index 9d16abb..474ab89 100644 --- a/drivers/serial/8250.c +++ b/drivers/serial/8250.c @@ -1212,6 +1212,7 @@ static void autoconfig(struct uart_8250_port *up, unsigned int probeflags) up->port.fifosize = uart_config[up->port.type].fifo_size; up->capabilities = uart_config[up->port.type].flags; up->tx_loadsz = uart_config[up->port.type].tx_loadsz; + up->bugs |= uart_config[up->port.type].bugs; if (up->port.type == PORT_UNKNOWN) goto out; @@ -3062,6 +3063,7 @@ int serial8250_register_port(struct uart_port *port) uart->port.fifosize = uart_config[port->type].fifo_size; uart->capabilities = uart_config[port->type].flags; uart->tx_loadsz = uart_config[port->type].tx_loadsz; + uart->bugs = uart_config[port->type].bugs; } set_io_fns_from_upio(&uart->port); diff --git a/drivers/serial/8250.h b/drivers/serial/8250.h index 5202603..c9b3002 100644 --- a/drivers/serial/8250.h +++ b/drivers/serial/8250.h @@ -34,6 +34,7 @@ struct serial8250_config { const char *name; unsigned short fifo_size; unsigned short tx_loadsz; + unsigned short bugs; unsigned char fcr; unsigned int flags; }; -- 1.5.6.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/