diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2006-01-30 17:48:27 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2006-02-07 13:30:25 +0000 |
commit | e9feeb207e55373f718b33e0d6cb0c2f8b58f3c1 (patch) | |
tree | ac2471665c7eb808a15150364bec6bfa8e8d1b38 /arch/mips/sgi-ip22 | |
parent | c5033d780310ddc5b679ed37ccefcdb87a30ef0c (diff) | |
download | blackbird-op-linux-e9feeb207e55373f718b33e0d6cb0c2f8b58f3c1.tar.gz blackbird-op-linux-e9feeb207e55373f718b33e0d6cb0c2f8b58f3c1.zip |
[MIPS] IP22: Fix serial console detection
From: Kaj-Michael Lang <milang@tal.org>
In ip22-setup.c the checks for serial/graphics console logic does
not check if ARCS console=g but the machine is using serial console, as
it does if no keyboard is attached.
This patch adds a check if ConsoleOut is serial. There might also be
support for other graphics than Newport soon...
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/sgi-ip22')
-rw-r--r-- | arch/mips/sgi-ip22/ip22-setup.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/arch/mips/sgi-ip22/ip22-setup.c b/arch/mips/sgi-ip22/ip22-setup.c index 5e59b4c8876b..7018e1833e85 100644 --- a/arch/mips/sgi-ip22/ip22-setup.c +++ b/arch/mips/sgi-ip22/ip22-setup.c @@ -56,6 +56,7 @@ extern void ip22_time_init(void) __init; void __init plat_setup(void) { char *ctype; + char *cserial; board_be_init = ip22_be_init; ip22_time_init(); @@ -81,9 +82,14 @@ void __init plat_setup(void) /* ARCS console environment variable is set to "g?" for * graphics console, it is set to "d" for the first serial * line and "d2" for the second serial line. + * + * Need to check if the case is 'g' but no keyboard: + * (ConsoleIn/Out = serial) */ ctype = ArcGetEnvironmentVariable("console"); - if (ctype && *ctype == 'd') { + cserial = ArcGetEnvironmentVariable("ConsoleOut"); + + if ((ctype && *ctype == 'd') || (cserial && *cserial == 's')) { static char options[8]; char *baud = ArcGetEnvironmentVariable("dbaud"); if (baud) @@ -91,7 +97,7 @@ void __init plat_setup(void) add_preferred_console("ttyS", *(ctype + 1) == '2' ? 1 : 0, baud ? options : NULL); } else if (!ctype || *ctype != 'g') { - /* Use ARC if we don't want serial ('d') or Newport ('g'). */ + /* Use ARC if we don't want serial ('d') or graphics ('g'). */ prom_flags |= PROM_FLAG_USE_AS_CONSOLE; add_preferred_console("arc", 0, NULL); } |