summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Engelhardt <jengelh@gmx.de>2007-07-22 17:44:18 +0200
committerAdrian Bunk <bunk@stusta.de>2007-07-22 17:44:18 +0200
commit28cbc66ccc0fa838789ad01fabee9b25740f7468 (patch)
tree473218bc459028eff154686249e6fe82866de7e4
parent0b5660372af4d953244bc30f4539cf35920fd893 (diff)
downloadlwn-28cbc66ccc0fa838789ad01fabee9b25740f7468.tar.gz
lwn-28cbc66ccc0fa838789ad01fabee9b25740f7468.zip
[SPARC]: Linux always started with 9600 8N1
The Linux kernel ignored the PROM's serial settings (115200,n,8,1 in my case). This was because mode_prop remained "ttyX-mode" (expected: "ttya-mode") due to the constness of string literals when used with "char *". Since there is no "ttyX-mode" property in the PROM, Linux always used the default 9600. [ Investigation of the suncore.s assembler reveals that gcc optimizied away the stores, yet did not emit a warning, which is a pretty anti-social thing to do and is the only reason this bug lived for so long -DaveM ] Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Adrian Bunk <bunk@stusta.de>
-rw-r--r--drivers/serial/suncore.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/serial/suncore.c b/drivers/serial/suncore.c
index fa4ae94243c2..adf505a67e2e 100644
--- a/drivers/serial/suncore.c
+++ b/drivers/serial/suncore.c
@@ -31,9 +31,9 @@ void
sunserial_console_termios(struct console *con)
{
char mode[16], buf[16], *s;
- char *mode_prop = "ttyX-mode";
- char *cd_prop = "ttyX-ignore-cd";
- char *dtr_prop = "ttyX-rts-dtr-off";
+ char mode_prop[] = "ttyX-mode";
+ char cd_prop[] = "ttyX-ignore-cd";
+ char dtr_prop[] = "ttyX-rts-dtr-off";
char *ssp_console_modes_prop = "ssp-console-modes";
int baud, bits, stop, cflag;
char parity;