From: Jason Wessel <jason.wessel@windriver.com>
To: gregkh@suse.de
Cc: linux-usb@vger.kernel.org, stern@rowland.harvard.edu,
linux-kernel@vger.kernel.org,
Jason Wessel <jason.wessel@windriver.com>
Subject: [PATCH 3/3] usb console,usb-serial: pass initial console baud on to first tty open
Date: Wed, 16 Sep 2009 22:08:07 -0500 [thread overview]
Message-ID: <1253156887-31597-4-git-send-email-jason.wessel@windriver.com> (raw)
In-Reply-To: <1253156887-31597-3-git-send-email-jason.wessel@windriver.com>
The first open of the usb serial HW has the termios initialized to the
default of 9600 baud, and this will override what ever was setup via
the original console initialization.
The solution is to save the console baud rate and re-use it later on
the first tty open, so as to allow the use of baud rates other than
the default 9600 for the usb serial console.
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Cc: Greg KH <gregkh@suse.de>
Cc: Alan Stern <stern@rowland.harvard.edu>
---
drivers/usb/serial/console.c | 1 +
drivers/usb/serial/usb-serial.c | 8 ++++++--
include/linux/usb/serial.h | 1 +
3 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/serial/console.c b/drivers/usb/serial/console.c
index 166ba4e..4fd5b52 100644
--- a/drivers/usb/serial/console.c
+++ b/drivers/usb/serial/console.c
@@ -175,6 +175,7 @@ static int usb_console_setup(struct console *co, char *options)
/* The console is special in terms of closing the device so
* indicate this port is now acting as a system console. */
port->console = 1;
+ port->console_init_baud = baud;
retval = 0;
mutex_unlock(&serial->disc_mutex);
diff --git a/drivers/usb/serial/usb-serial.c b/drivers/usb/serial/usb-serial.c
index 3d35ed2..f931738 100644
--- a/drivers/usb/serial/usb-serial.c
+++ b/drivers/usb/serial/usb-serial.c
@@ -270,10 +270,14 @@ static int serial_open(struct tty_struct *tty, struct file *filp)
if (serial->disconnected) {
retval = -ENODEV;
} else {
- if (port->console)
+ if (port->console) {
+ tty_encode_baud_rate(tty,
+ port->console_init_baud,
+ port->console_init_baud);
retval = 0;
- else
+ } else {
retval = port->serial->type->open(tty, port);
+ }
}
mutex_unlock(&serial->disc_mutex);
mutex_unlock(&port->mutex);
diff --git a/include/linux/usb/serial.h b/include/linux/usb/serial.h
index c17eb64..a7c8725 100644
--- a/include/linux/usb/serial.h
+++ b/include/linux/usb/serial.h
@@ -109,6 +109,7 @@ struct usb_serial_port {
char throttled;
char throttle_req;
char console;
+ int console_init_baud;
unsigned long sysrq; /* sysrq timeout */
struct device dev;
enum port_dev_state dev_state;
--
1.6.4.rc1
next prev parent reply other threads:[~2009-09-17 3:08 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-17 3:08 [PATCH 0/3] usb console: 2.6.32 regression fixes Jason Wessel
2009-09-17 3:08 ` [PATCH 1/3] usb console: fix mutex lock regression Jason Wessel
2009-09-17 3:08 ` [PATCH 2/3] usb console,usb-serial: fix regression use of serial->console Jason Wessel
2009-09-17 3:08 ` Jason Wessel [this message]
2009-09-17 3:32 ` [PATCH 3/3] usb console,usb-serial: pass initial console baud on to first tty open Alan Stern
2009-09-17 3:40 ` Jason Wessel
2009-09-17 3:46 ` Alan Stern
2009-09-17 4:17 ` Jason Wessel
2009-09-17 9:14 ` Alan Cox
2009-09-17 12:16 ` Jason Wessel
2009-09-17 13:08 ` Alan Cox
2009-09-17 13:19 ` Alan Cox
2009-09-17 14:17 ` Jason Wessel
2009-09-17 16:02 ` Alan Cox
2009-09-22 20:54 ` Jason Wessel
2009-09-29 17:24 ` How to handle console devices Alan Stern
2009-09-29 22:47 ` Alan Cox
2009-09-17 3:30 ` [PATCH 2/3] usb console,usb-serial: fix regression use of serial->console Alan Stern
2009-09-17 3:32 ` Jason Wessel
2009-09-17 3:25 ` [PATCH 1/3] usb console: fix mutex lock regression Alan Stern
2009-09-17 3:32 ` Jason Wessel
2009-09-18 17:16 ` Greg KH
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1253156887-31597-4-git-send-email-jason.wessel@windriver.com \
--to=jason.wessel@windriver.com \
--cc=gregkh@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=stern@rowland.harvard.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®