Merge branch 'master' into for_paulus
[linux-drm-fsl-dcu.git] / drivers / tc / zs.c
index 5e8a27620f6f339045981b5994b4138c69be073a..3d72aa5cfc713bb3b66dbe3c6b49ee8ceb25d0df 100644 (file)
@@ -347,7 +347,7 @@ static void rs_sched_event(struct dec_serial *info, int event)
        tasklet_schedule(&info->tlet);
 }
 
-static void receive_chars(struct dec_serial *info, struct pt_regs *regs)
+static void receive_chars(struct dec_serial *info)
 {
        struct tty_struct *tty = info->tty;
        unsigned char ch, stat, flag;
@@ -389,7 +389,7 @@ static void receive_chars(struct dec_serial *info, struct pt_regs *regs)
                        if (ch == 0)
                                continue;
                        if (time_before(jiffies, break_pressed + HZ * 5)) {
-                               handle_sysrq(ch, regs, NULL);
+                               handle_sysrq(ch, NULL);
                                break_pressed = 0;
                                continue;
                        }
@@ -490,7 +490,7 @@ static void status_handle(struct dec_serial *info)
 /*
  * This is the serial driver's generic interrupt routine
  */
-static irqreturn_t rs_interrupt(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t rs_interrupt(int irq, void *dev_id)
 {
        struct dec_serial *info = (struct dec_serial *) dev_id;
        irqreturn_t status = IRQ_NONE;
@@ -518,7 +518,7 @@ static irqreturn_t rs_interrupt(int irq, void *dev_id, struct pt_regs *regs)
                status = IRQ_HANDLED;
 
                if (zs_intreg & CHBRxIP) {
-                       receive_chars(info, regs);
+                       receive_chars(info);
                }
                if (zs_intreg & CHBTxIP) {
                        transmit_chars(info);
@@ -626,10 +626,8 @@ static void do_softint(unsigned long private_)
        if (!tty)
                return;
 
-       if (test_and_clear_bit(RS_EVENT_WRITE_WAKEUP, &info->event)) {
+       if (test_and_clear_bit(RS_EVENT_WRITE_WAKEUP, &info->event))
                tty_wakeup(tty);
-               wake_up_interruptible(&tty->write_wait);
-       }
 }
 
 static int zs_startup(struct dec_serial * info)
@@ -1238,7 +1236,7 @@ static int rs_ioctl(struct tty_struct *tty, struct file * file,
        return 0;
 }
 
-static void rs_set_termios(struct tty_struct *tty, struct termios *old_termios)
+static void rs_set_termios(struct tty_struct *tty, struct ktermios *old_termios)
 {
        struct dec_serial *info = (struct dec_serial *)tty->driver_data;
        int was_stopped;
@@ -1701,7 +1699,7 @@ static void __init probe_sccs(void)
        spin_unlock_irqrestore(&zs_lock, flags);
 }
 
-static struct tty_operations serial_ops = {
+static const struct tty_operations serial_ops = {
        .open = rs_open,
        .close = rs_close,
        .write = rs_write,