diff options
| author | Tony Lindgren <tony@atomide.com> | 2012-09-23 22:31:35 -0400 |
|---|---|---|
| committer | Tony Lindgren <tony@atomide.com> | 2012-09-23 22:31:35 -0400 |
| commit | 9cd68fa707cf6372f33eb51a5719dd7626efe5f6 (patch) | |
| tree | 66cde27bd288e011a6e4cff87d342666399a1266 /drivers/tty/rocket.c | |
| parent | 5698bd757d55b1bb87edd1a9744ab09c142abfc2 (diff) | |
| parent | 76a5d9bfc42d60e9a672e0cae776157a60970f4e (diff) | |
Merge tag 'omap-devel-b-c-2-for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending into devel-late
OMAP patches intended for the 3.7 merge window:
- Runtime PM conversions for the GPMC and RNG IP blocks
- Preparation patches for the OMAP common clock framework conversion
- clkdev alias additions required by other drivers
- Performance Monitoring Unit (PMU) support for OMAP2, 3, and non-4430 OMAP4
- OMAP hwmod code and data improvements
- Preparation patches for the IOMMU runtime PM conversion
- Preparation patches for OMAP4 full-chip retention support
Based on a merge of v3.6-rc6, the omap-cleanup-b-for-3.7 tag
(7852ec0536ca39cefffc6301dc77f8ae55592926),the cleanup-fixes-for-v3.7
tag (de6ca33a96a6bf61fcb91d3d399703e19ead9d1e), and the
omap-devel-am33xx-for-v3.7 tag
(11964f53eb4d9ce59a058be9999d9cfcb1ced878), due to dependencies.
These patches have been tested for meaningful warnings from
checkpatch, sparse, smatch, and cppcheck. Basic build, boot[1], and
PM test logs are available here:
http://www.pwsan.com/omap/testlogs/hwmod_prcm_clock_a_3.7/20120923173830/
...
1. Note that the N800 boot fails due to a known issue present in the
base commit:
http://www.spinics.net/lists/arm-kernel/msg196034.html
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 | } |
