]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/char/tty_ioctl.c
tty: add throttle/unthrottle helpers
[linux-2.6-omap-h63xx.git] / drivers / char / tty_ioctl.c
index c10d40c4c5cac49739dc7dd842023976acf553cc..b1a757a5ee271c9c4a4dc5a4b2fc18c35c7fb491 100644 (file)
@@ -67,6 +67,22 @@ void tty_driver_flush_buffer(struct tty_struct *tty)
 
 EXPORT_SYMBOL(tty_driver_flush_buffer);
 
+void tty_throttle(struct tty_struct *tty)
+{
+       /* check TTY_THROTTLED first so it indicates our state */
+       if (!test_and_set_bit(TTY_THROTTLED, &tty->flags) &&
+           tty->ops->throttle)
+               tty->ops->throttle(tty);
+}
+EXPORT_SYMBOL(tty_throttle);
+
+void tty_unthrottle(struct tty_struct *tty)
+{
+       if (test_and_clear_bit(TTY_THROTTLED, &tty->flags) &&
+           tty->ops->unthrottle)
+               tty->ops->unthrottle(tty);
+}
+EXPORT_SYMBOL(tty_unthrottle);
 
 /**
  *     tty_wait_until_sent     -       wait for I/O to finish