Commit 6e757ad2 authored by Nicolas Ferre's avatar Nicolas Ferre Committed by Greg Kroah-Hartman

tty/serial: at91: fix uart/usart selection for older products

Since commit 055560b0 (serial: at91:
distinguish usart and uart) the older products which do not have a
name field in their register map are unable to use their serial output.
As the main console output is usually the serial interface (aka DBGU) it
is pretty unfortunate.
So, instead of failing during probe() we just silently configure the serial
peripheral as an uart. It allows us to use these serial outputs.
The proper solution is proposed in another patch.
Signed-off-by: default avatarNicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent d969de8d
...@@ -1499,7 +1499,7 @@ static void atmel_set_ops(struct uart_port *port) ...@@ -1499,7 +1499,7 @@ static void atmel_set_ops(struct uart_port *port)
/* /*
* Get ip name usart or uart * Get ip name usart or uart
*/ */
static int atmel_get_ip_name(struct uart_port *port) static void atmel_get_ip_name(struct uart_port *port)
{ {
struct atmel_uart_port *atmel_port = to_atmel_uart_port(port); struct atmel_uart_port *atmel_port = to_atmel_uart_port(port);
int name = UART_GET_IP_NAME(port); int name = UART_GET_IP_NAME(port);
...@@ -1518,10 +1518,7 @@ static int atmel_get_ip_name(struct uart_port *port) ...@@ -1518,10 +1518,7 @@ static int atmel_get_ip_name(struct uart_port *port)
atmel_port->is_usart = false; atmel_port->is_usart = false;
} else { } else {
dev_err(port->dev, "Not supported ip name, set to uart\n"); dev_err(port->dev, "Not supported ip name, set to uart\n");
return -EINVAL;
} }
return 0;
} }
/* /*
...@@ -2405,9 +2402,7 @@ static int atmel_serial_probe(struct platform_device *pdev) ...@@ -2405,9 +2402,7 @@ static int atmel_serial_probe(struct platform_device *pdev)
/* /*
* Get port name of usart or uart * Get port name of usart or uart
*/ */
ret = atmel_get_ip_name(&port->uart); atmel_get_ip_name(&port->uart);
if (ret < 0)
goto err_add_port;
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment