diff options
author | Olof Johansson <olof@lixom.net> | 2012-09-16 23:12:26 -0400 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2012-09-16 23:13:04 -0400 |
commit | f4936639bc4a75218b5598ff69c52b9a8dd7f23d (patch) | |
tree | 9c08fc81cb3d3e658ca7f8dc20a949496d9e6130 /drivers/tty/rocket.c | |
parent | d1226e8f98f130918265fb5b4dddcb60b783eb34 (diff) | |
parent | 11964f53eb4d9ce59a058be9999d9cfcb1ced878 (diff) |
Merge tag 'omap-devel-am33xx-for-v3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc
From Tony Lindgren:
From Paul Walmsley <paul@pwsan.com>:
AM33xx hwmod data and miscellaneous clock and hwmod fixes. AM33xx
should now boot on mainline after this is applied, according to
Vaibhav.
(The shortlog makes no sense here since it contains mostly the dependent
cleanups that are part of the preceding branches).
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'drivers/tty/rocket.c')
-rw-r--r-- | drivers/tty/rocket.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/drivers/tty/rocket.c b/drivers/tty/rocket.c index 777d5f9cf6cc..9700d34b20a3 100644 --- a/drivers/tty/rocket.c +++ b/drivers/tty/rocket.c | |||
@@ -704,8 +704,8 @@ static void init_r_port(int board, int aiop, int chan, struct pci_dev *pci_dev) | |||
704 | spin_lock_init(&info->slock); | 704 | spin_lock_init(&info->slock); |
705 | mutex_init(&info->write_mtx); | 705 | mutex_init(&info->write_mtx); |
706 | rp_table[line] = info; | 706 | rp_table[line] = info; |
707 | tty_register_device(rocket_driver, line, pci_dev ? &pci_dev->dev : | 707 | tty_port_register_device(&info->port, rocket_driver, line, |
708 | NULL); | 708 | pci_dev ? &pci_dev->dev : NULL); |
709 | } | 709 | } |
710 | 710 | ||
711 | /* | 711 | /* |
@@ -720,7 +720,7 @@ static void configure_r_port(struct tty_struct *tty, struct r_port *info, | |||
720 | unsigned rocketMode; | 720 | unsigned rocketMode; |
721 | int bits, baud, divisor; | 721 | int bits, baud, divisor; |
722 | CHANNEL_t *cp; | 722 | CHANNEL_t *cp; |
723 | struct ktermios *t = tty->termios; | 723 | struct ktermios *t = &tty->termios; |
724 | 724 | ||
725 | cp = &info->channel; | 725 | cp = &info->channel; |
726 | cflag = t->c_cflag; | 726 | cflag = t->c_cflag; |
@@ -978,7 +978,7 @@ static int rp_open(struct tty_struct *tty, struct file *filp) | |||
978 | tty->alt_speed = 460800; | 978 | tty->alt_speed = 460800; |
979 | 979 | ||
980 | configure_r_port(tty, info, NULL); | 980 | configure_r_port(tty, info, NULL); |
981 | if (tty->termios->c_cflag & CBAUD) { | 981 | if (tty->termios.c_cflag & CBAUD) { |
982 | sSetDTR(cp); | 982 | sSetDTR(cp); |
983 | sSetRTS(cp); | 983 | sSetRTS(cp); |
984 | } | 984 | } |
@@ -1089,35 +1089,35 @@ static void rp_set_termios(struct tty_struct *tty, | |||
1089 | if (rocket_paranoia_check(info, "rp_set_termios")) | 1089 | if (rocket_paranoia_check(info, "rp_set_termios")) |
1090 | return; | 1090 | return; |
1091 | 1091 | ||
1092 | cflag = tty->termios->c_cflag; | 1092 | cflag = tty->termios.c_cflag; |
1093 | 1093 | ||
1094 | /* | 1094 | /* |
1095 | * This driver doesn't support CS5 or CS6 | 1095 | * This driver doesn't support CS5 or CS6 |
1096 | */ | 1096 | */ |
1097 | if (((cflag & CSIZE) == CS5) || ((cflag & CSIZE) == CS6)) | 1097 | if (((cflag & CSIZE) == CS5) || ((cflag & CSIZE) == CS6)) |
1098 | tty->termios->c_cflag = | 1098 | tty->termios.c_cflag = |
1099 | ((cflag & ~CSIZE) | (old_termios->c_cflag & CSIZE)); | 1099 | ((cflag & ~CSIZE) | (old_termios->c_cflag & CSIZE)); |
1100 | /* Or CMSPAR */ | 1100 | /* Or CMSPAR */ |
1101 | tty->termios->c_cflag &= ~CMSPAR; | 1101 | tty->termios.c_cflag &= ~CMSPAR; |
1102 | 1102 | ||
1103 | configure_r_port(tty, info, old_termios); | 1103 | configure_r_port(tty, info, old_termios); |
1104 | 1104 | ||
1105 | cp = &info->channel; | 1105 | cp = &info->channel; |
1106 | 1106 | ||
1107 | /* Handle transition to B0 status */ | 1107 | /* Handle transition to B0 status */ |
1108 | if ((old_termios->c_cflag & CBAUD) && !(tty->termios->c_cflag & CBAUD)) { | 1108 | if ((old_termios->c_cflag & CBAUD) && !(tty->termios.c_cflag & CBAUD)) { |
1109 | sClrDTR(cp); | 1109 | sClrDTR(cp); |
1110 | sClrRTS(cp); | 1110 | sClrRTS(cp); |
1111 | } | 1111 | } |
1112 | 1112 | ||
1113 | /* Handle transition away from B0 status */ | 1113 | /* Handle transition away from B0 status */ |
1114 | if (!(old_termios->c_cflag & CBAUD) && (tty->termios->c_cflag & CBAUD)) { | 1114 | if (!(old_termios->c_cflag & CBAUD) && (tty->termios.c_cflag & CBAUD)) { |
1115 | if (!tty->hw_stopped || !(tty->termios->c_cflag & CRTSCTS)) | 1115 | if (!tty->hw_stopped || !(tty->termios.c_cflag & CRTSCTS)) |
1116 | sSetRTS(cp); | 1116 | sSetRTS(cp); |
1117 | sSetDTR(cp); | 1117 | sSetDTR(cp); |
1118 | } | 1118 | } |
1119 | 1119 | ||
1120 | if ((old_termios->c_cflag & CRTSCTS) && !(tty->termios->c_cflag & CRTSCTS)) { | 1120 | if ((old_termios->c_cflag & CRTSCTS) && !(tty->termios.c_cflag & CRTSCTS)) { |
1121 | tty->hw_stopped = 0; | 1121 | tty->hw_stopped = 0; |
1122 | rp_start(tty); | 1122 | rp_start(tty); |
1123 | } | 1123 | } |