[PATCH] serial : convert early_uart to earlycon for 8250 fix 3 alias

From: Yinghai Lu
Date: Thu Jun 21 2007 - 13:42:20 EST


[PATCH] serial : convert early_uart to earlycon for 8250 fix 3 alias

make the console=uart,io,0x3f8,9600n8 like console=uart8250,io,0x3f8,9600
suggested by Andy Whitcroft.

Signed-off-by: Yinghai Lu <yinghai.lu@xxxxxxx>

--- a/Documentation/kernel-parameters.txt 2007-06-21 10:12:48.000000000 -0700
+++ b/Documentation/kernel-parameters.txt 2007-06-21 10:13:43.000000000 -0700
@@ -467,16 +467,16 @@
Documentation/networking/netconsole.txt for an
alternative.

- uart8250,io,<addr>[,options]
- uart8250,mmio,<addr>[,options]
+ uart[8250],io,<addr>[,options]
+ uart[8250],mmio,<addr>[,options]
Start an early, polled-mode console on the 8250/16550
UART at the specified I/O port or MMIO address,
switching to the matching ttyS device later. The
options are the same as for ttyS, above.

earlycon= [KNL] Output early console device and options.
- uart8250,io,<addr>[,options]
- uart8250,mmio,<addr>[,options]
+ uart[8250],io,<addr>[,options]
+ uart[8250],mmio,<addr>[,options]
Start an early, polled-mode console on the 8250/16550
UART at the specified I/O port or MMIO address.
The options are the same as for ttyS, above.
--- a/drivers/serial/8250_early.c 2007-06-21 10:04:25.000000000 -0700
+++ b/drivers/serial/8250_early.c 2007-06-21 10:12:08.000000000 -0700
@@ -210,8 +210,11 @@
int err;

options = strstr(cmdline, "uart8250,");
- if (!options)
- return 0;
+ if (!options) {
+ options = strstr(cmdline, "uart,");
+ if (!options)
+ return 0;
+ }

options = strchr(cmdline, ',') + 1;
if ((err = early_serial8250_setup(options)) < 0)
@@ -227,6 +230,7 @@
struct early_serial8250_device *device = &early_device;
struct uart_port *port = &device->port;
int line;
+ int ret;

if (!device->port.membase && !device->port.iobase)
return -ENODEV;
@@ -235,8 +239,13 @@
if (line < 0)
return -ENODEV;

- return update_console_cmdline("uart", 8250,
+ ret = update_console_cmdline("uart", 8250,
+ "ttyS", line, device->options);
+ if (ret < 0)
+ ret = update_console_cmdline("uart", 0,
"ttyS", line, device->options);
+
+ return ret;
}

early_param("earlycon", setup_early_serial8250_console);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/