sparc: Really fix "console=" for serial consoles.
authorDavid S. Miller <davem@davemloft.net>
Sun, 15 Aug 2010 07:26:14 +0000 (00:26 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 16 Aug 2010 19:26:09 +0000 (12:26 -0700)
commit0a492896ac07336c98f37ad7fab4a6387b6ada78
treeae2f18d5113a5443b223239963790daefcc394d5
parent2dc4ec5de039d5db4805dff170ab80f4e990e977
sparc: Really fix "console=" for serial consoles.

If a video head and keyboard are hooked up, specifying "console=ttyS0"
or similar to use a serial console will not work properly.

The key issue is that we must register all serial console capable
devices with register_console(), otherwise the command line specified
device won't be found.  The sun serial drivers would only register
themselves as console devices if the OpenFirmware specified console
device node matched.  To fix this part we now unconditionally get
the serial console register by setting serial_drv->cons always.

Secondarily we must not add_preferred_console() using the firmware
provided console setting if the user gaven an override on the kernel
command line using "console="  The "primary framebuffer" matching
logic was always triggering o n openfirmware device node match, make
it not when a command line override was given.

Reported-by: Frans Pop <elendil@planet.nl>
Tested-by: Frans Pop <elendil@planet.nl>
Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc/include/asm/fb.h
drivers/serial/suncore.c