]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/serial/68328serial.c
lib/decompress_bunzip2.c: fix checkstack warning
[karo-tx-linux.git] / drivers / serial / 68328serial.c
index 78ed24bb6a35d4eb09f9a4f90939f5b4f7151d20..7356a56ac458f697c54bdd8d1335b763a47f000b 100644 (file)
@@ -78,10 +78,6 @@ struct m68k_serial *m68k_consinfo = 0;
 
 #define M68K_CLOCK (16667000) /* FIXME: 16MHz is likely wrong */
 
-#ifdef CONFIG_CONSOLE
-extern wait_queue_head_t keypress_wait; 
-#endif
-
 struct tty_driver *serial_driver;
 
 /* number of characters left in xmit buffer before we ask for more */
@@ -102,19 +98,13 @@ static void change_speed(struct m68k_serial *info);
  *     Setup for console. Argument comes from the boot command line.
  */
 
-#if defined(CONFIG_M68EZ328ADS) || defined(CONFIG_ALMA_ANS) || defined(CONFIG_DRAGONIXVZ)
-#define        CONSOLE_BAUD_RATE       115200
-#define        DEFAULT_CBAUD           B115200
-#else
-       /* (es) */
-       /* note: this is messy, but it works, again, perhaps defined somewhere else?*/
-       #ifdef CONFIG_M68VZ328
-       #define CONSOLE_BAUD_RATE       19200
-       #define DEFAULT_CBAUD           B19200
-       #endif
-       /* (/es) */
+/* note: this is messy, but it works, again, perhaps defined somewhere else?*/
+#ifdef CONFIG_M68VZ328
+#define CONSOLE_BAUD_RATE      19200
+#define DEFAULT_CBAUD          B19200
 #endif
 
+
 #ifndef CONSOLE_BAUD_RATE
 #define        CONSOLE_BAUD_RATE       9600
 #define        DEFAULT_CBAUD           B9600
@@ -300,10 +290,6 @@ static void receive_chars(struct m68k_serial *info, unsigned short rx)
                                return;
 #endif /* CONFIG_MAGIC_SYSRQ */
                        }
-                       /* It is a 'keyboard interrupt' ;-) */
-#ifdef CONFIG_CONSOLE
-                       wake_up(&keypress_wait);
-#endif                 
                }
 
                if(!tty)
@@ -1243,7 +1229,9 @@ static int block_til_ready(struct tty_struct *tty, struct file * filp,
                        retval = -ERESTARTSYS;
                        break;
                }
+               tty_unlock();
                schedule();
+               tty_lock();
        }
        current->state = TASK_RUNNING;
        remove_wait_queue(&info->open_wait, &wait);
@@ -1437,7 +1425,7 @@ int m68328_console_setup(struct console *cp, char *arg)
        for (i = 0; i < ARRAY_SIZE(baud_table); i++)
                if (baud_table[i] == n)
                        break;
-       if (i < BAUD_TABLE_SIZE) {
+       if (i < ARRAY_SIZE(baud_table)) {
                m68328_console_baud = n;
                m68328_console_cbaud = 0;
                if (i > 15) {