EXPORT_SYMBOL(tty_termios_hw_change);
/**
- * change_termios - update termios values
+ * tty_set_termios - update termios values
* @tty: tty to update
* @new_termios: desired new value
*
* Locking: termios_mutex
*/
-static void change_termios(struct tty_struct *tty, struct ktermios *new_termios)
+int tty_set_termios(struct tty_struct *tty, struct ktermios *new_termios)
{
struct ktermios old_termios;
struct tty_ldisc *ld;
tty_ldisc_deref(ld);
}
mutex_unlock(&tty->termios_mutex);
+ return 0;
}
+EXPORT_SYMBOL_GPL(tty_set_termios);
/**
* set_termios - set termios values for a tty
* @opt: option information
*
* Helper function to prepare termios data and run necessary other
- * functions before using change_termios to do the actual changes.
+ * functions before using tty_set_termios to do the actual changes.
*
* Locking:
* Called functions take ldisc and termios_mutex locks
return -EINTR;
}
- change_termios(tty, &tmp_termios);
+ tty_set_termios(tty, &tmp_termios);
/* FIXME: Arguably if tmp_termios == tty->termios AND the
actual requested termios was not tmp_termios then we may
termios.c_ospeed);
#endif
mutex_unlock(&tty->termios_mutex);
- change_termios(tty, &termios);
+ tty_set_termios(tty, &termios);
return 0;
}
#endif
int ret = 0;
struct ktermios kterm;
+ BUG_ON(file == NULL);
+
if (tty->driver->type == TTY_DRIVER_TYPE_PTY &&
tty->driver->subtype == PTY_TYPE_MASTER)
real_tty = tty->link;
speed_t ibaud, speed_t obaud);
extern void tty_termios_copy_hw(struct ktermios *new, struct ktermios *old);
extern int tty_termios_hw_change(struct ktermios *a, struct ktermios *b);
+extern int tty_set_termios(struct tty_struct *tty, struct ktermios *kt);
extern struct tty_ldisc *tty_ldisc_ref(struct tty_struct *);
extern void tty_ldisc_deref(struct tty_ldisc *);