Message ID | 20200911080054.1.I4c00b921c2f17b6988688046fa7be0f729f8d591@changeid |
---|---|
State | New |
Headers | show |
Series | tty: serial: qcom_geni_serial: 115.2 is a better console default than 9600 | expand |
On Fri 11 Sep 10:00 CDT 2020, Douglas Anderson wrote: > Commit c5cbc78acf69 ("tty: serial: qcom_geni_serial: Initialize baud > in qcom_geni_console_setup") fixed a bug by initting a variable that > was used in some cases without initialization. However, the "default" > baud rate picked by that CL was probably not the best choice. The > chances that anyone out there is trying to run a system with kernel > messages piped out over a 9600 baud serial port is just about nil. > Console messages are printed in a blocking manner. At 9600 baud we > print about 1 character per millisecond which means that printing a > 40-byte message to the console will take ~40 ms. While it would > probably work, it's going to make boot _very_ slow and probably cause > the occasional timeout here and there in drivers (heck, even at 115200 > console delays can wreck havoc). > > This has already bit at least two people that I'm aware of that tried > to enable serial console by just adding "console=ttyMSM0" (instead of > "console=ttyMSM0,115200n8") to the command line, so it seems like it'd > be nice to fix. > > Let's switch the default to 115200. > Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> > Signed-off-by: Douglas Anderson <dianders@chromium.org> > --- > > drivers/tty/serial/qcom_geni_serial.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/tty/serial/qcom_geni_serial.c b/drivers/tty/serial/qcom_geni_serial.c > index f0b1b47c3abc..e390ffc8bbbd 100644 > --- a/drivers/tty/serial/qcom_geni_serial.c > +++ b/drivers/tty/serial/qcom_geni_serial.c > @@ -1107,7 +1107,7 @@ static int qcom_geni_console_setup(struct console *co, char *options) > { > struct uart_port *uport; > struct qcom_geni_serial_port *port; > - int baud = 9600; > + int baud = 115200; > int bits = 8; > int parity = 'n'; > int flow = 'n'; > -- > 2.28.0.618.gf4bc123cb7-goog >
diff --git a/drivers/tty/serial/qcom_geni_serial.c b/drivers/tty/serial/qcom_geni_serial.c index f0b1b47c3abc..e390ffc8bbbd 100644 --- a/drivers/tty/serial/qcom_geni_serial.c +++ b/drivers/tty/serial/qcom_geni_serial.c @@ -1107,7 +1107,7 @@ static int qcom_geni_console_setup(struct console *co, char *options) { struct uart_port *uport; struct qcom_geni_serial_port *port; - int baud = 9600; + int baud = 115200; int bits = 8; int parity = 'n'; int flow = 'n';
Commit c5cbc78acf69 ("tty: serial: qcom_geni_serial: Initialize baud in qcom_geni_console_setup") fixed a bug by initting a variable that was used in some cases without initialization. However, the "default" baud rate picked by that CL was probably not the best choice. The chances that anyone out there is trying to run a system with kernel messages piped out over a 9600 baud serial port is just about nil. Console messages are printed in a blocking manner. At 9600 baud we print about 1 character per millisecond which means that printing a 40-byte message to the console will take ~40 ms. While it would probably work, it's going to make boot _very_ slow and probably cause the occasional timeout here and there in drivers (heck, even at 115200 console delays can wreck havoc). This has already bit at least two people that I'm aware of that tried to enable serial console by just adding "console=ttyMSM0" (instead of "console=ttyMSM0,115200n8") to the command line, so it seems like it'd be nice to fix. Let's switch the default to 115200. Signed-off-by: Douglas Anderson <dianders@chromium.org> --- drivers/tty/serial/qcom_geni_serial.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)