Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=23f42b7b2e538a27bc457a9ba12a6656343dc5ea
Commit:     23f42b7b2e538a27bc457a9ba12a6656343dc5ea
Parent:     10e27ed4bae199fefbc3e9f9473e32605797a003
Author:     Atsushi Nemoto <[EMAIL PROTECTED]>
AuthorDate: Mon Oct 29 14:37:23 2007 -0700
Committer:  Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Tue Oct 30 08:06:55 2007 -0700

    serial: fix serial_txx9 console initialization
    
    Since commit 97d97224ff361e08777fb33e0fd193ca877dac28 ("[SERIAL] Fix
    console initialisation ordering"), serial_core calls ->pm() on
    initialization even if the port was used for console.
    
    This behaviour breaks serial_txx9 console since The serial_txx9 driver
    initialize its port entirely on its ->pm() method if new state was 0.
    This patch adds checking for oldstate value to fix this probelm.
    
    Signed-off-by: Atsushi Nemoto <[EMAIL PROTECTED]>
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
    Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>
---
 drivers/serial/serial_txx9.c |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/drivers/serial/serial_txx9.c b/drivers/serial/serial_txx9.c
index 6846a6c..7ad2192 100644
--- a/drivers/serial/serial_txx9.c
+++ b/drivers/serial/serial_txx9.c
@@ -657,7 +657,15 @@ static void
 serial_txx9_pm(struct uart_port *port, unsigned int state,
              unsigned int oldstate)
 {
-       if (state == 0)
+       /*
+        * If oldstate was -1 this is called from
+        * uart_configure_port().  In this case do not initialize the
+        * port now, because the port was already initialized (for
+        * non-console port) or should not be initialized here (for
+        * console port).  If we initialized the port here we lose
+        * serial console settings.
+        */
+       if (state == 0 && oldstate != -1)
                serial_txx9_initialize(port);
 }
 
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to