diff -urpN linux-2.6.20-rc1/drivers/serial/uartlite.c linux-2.6.20-rc1.new/drivers/serial/uartlite.c
--- linux-2.6.20-rc1/drivers/serial/uartlite.c	2006-12-22 15:11:37.000000000 +0100
+++ linux-2.6.20-rc1.new/drivers/serial/uartlite.c	2006-12-22 15:20:51.000000000 +0100
@@ -278,8 +278,8 @@ static int ulite_request_port(struct uar
 
 static void ulite_config_port(struct uart_port *port, int flags)
 {
-	ulite_request_port(port);
-	port->type = PORT_UARTLITE;
+	if (!ulite_request_port(port))
+		port->type = PORT_UARTLITE;
 }
 
 static int ulite_verify_port(struct uart_port *port, struct serial_struct *ser)
