diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-03-16 18:11:04 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-03-16 18:11:04 -0400 |
commit | e6bee325e49f17c65c1fd66e9e8b348c85788341 (patch) | |
tree | bcc9e5d8e82efa9009edd481a837cc3626360091 /drivers/bluetooth | |
parent | a5e6b135bdff649e4330f98e2e80dbb1984f7e77 (diff) | |
parent | 6ae705b23be8da52d3163be9d81e9b767876aaf9 (diff) |
Merge branch 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6
* 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6: (76 commits)
pch_uart: reference clock on CM-iTC
pch_phub: add new device ML7213
n_gsm: fix UIH control byte : P bit should be 0
n_gsm: add a documentation
serial: msm_serial_hs: Add MSM high speed UART driver
tty_audit: fix tty_audit_add_data live lock on audit disabled
tty: move cd1865.h to drivers/staging/tty/
Staging: tty: fix build with epca.c driver
pcmcia: synclink_cs: fix prototype for mgslpc_ioctl()
Staging: generic_serial: fix double locking bug
nozomi: don't use flush_scheduled_work()
tty/serial: Relax the device_type restriction from of_serial
MAINTAINERS: Update HVC file patterns
tty: phase out of ioctl file pointer for tty3270 as well
tty: forgot to remove ipwireless from drivers/char/pcmcia/Makefile
pch_uart: Fix DMA channel miss-setting issue.
pch_uart: fix exclusive access issue
pch_uart: fix auto flow control miss-setting issue
pch_uart: fix uart clock setting issue
pch_uart : Use dev_xxx not pr_xxx
...
Fix up trivial conflicts in drivers/misc/pch_phub.c (same patch applied
twice, then changes to the same area in one branch)
Diffstat (limited to 'drivers/bluetooth')
-rw-r--r-- | drivers/bluetooth/hci_ath.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/drivers/bluetooth/hci_ath.c b/drivers/bluetooth/hci_ath.c index 6a160c17ea94..bd34406faaae 100644 --- a/drivers/bluetooth/hci_ath.c +++ b/drivers/bluetooth/hci_ath.c | |||
@@ -51,32 +51,32 @@ struct ath_struct { | |||
51 | 51 | ||
52 | static int ath_wakeup_ar3k(struct tty_struct *tty) | 52 | static int ath_wakeup_ar3k(struct tty_struct *tty) |
53 | { | 53 | { |
54 | struct termios settings; | 54 | struct ktermios ktermios; |
55 | int status = tty->driver->ops->tiocmget(tty, NULL); | 55 | int status = tty->driver->ops->tiocmget(tty); |
56 | 56 | ||
57 | if (status & TIOCM_CTS) | 57 | if (status & TIOCM_CTS) |
58 | return status; | 58 | return status; |
59 | 59 | ||
60 | /* Disable Automatic RTSCTS */ | 60 | /* Disable Automatic RTSCTS */ |
61 | n_tty_ioctl_helper(tty, NULL, TCGETS, (unsigned long)&settings); | 61 | memcpy(&ktermios, tty->termios, sizeof(ktermios)); |
62 | settings.c_cflag &= ~CRTSCTS; | 62 | ktermios.c_cflag &= ~CRTSCTS; |
63 | n_tty_ioctl_helper(tty, NULL, TCSETS, (unsigned long)&settings); | 63 | tty_set_termios(tty, &ktermios); |
64 | 64 | ||
65 | /* Clear RTS first */ | 65 | /* Clear RTS first */ |
66 | status = tty->driver->ops->tiocmget(tty, NULL); | 66 | status = tty->driver->ops->tiocmget(tty); |
67 | tty->driver->ops->tiocmset(tty, NULL, 0x00, TIOCM_RTS); | 67 | tty->driver->ops->tiocmset(tty, 0x00, TIOCM_RTS); |
68 | mdelay(20); | 68 | mdelay(20); |
69 | 69 | ||
70 | /* Set RTS, wake up board */ | 70 | /* Set RTS, wake up board */ |
71 | status = tty->driver->ops->tiocmget(tty, NULL); | 71 | status = tty->driver->ops->tiocmget(tty); |
72 | tty->driver->ops->tiocmset(tty, NULL, TIOCM_RTS, 0x00); | 72 | tty->driver->ops->tiocmset(tty, TIOCM_RTS, 0x00); |
73 | mdelay(20); | 73 | mdelay(20); |
74 | 74 | ||
75 | status = tty->driver->ops->tiocmget(tty, NULL); | 75 | status = tty->driver->ops->tiocmget(tty); |
76 | 76 | ||
77 | n_tty_ioctl_helper(tty, NULL, TCGETS, (unsigned long)&settings); | 77 | /* Disable Automatic RTSCTS */ |
78 | settings.c_cflag |= CRTSCTS; | 78 | ktermios.c_cflag |= CRTSCTS; |
79 | n_tty_ioctl_helper(tty, NULL, TCSETS, (unsigned long)&settings); | 79 | status = tty_set_termios(tty, &ktermios); |
80 | 80 | ||
81 | return status; | 81 | return status; |
82 | } | 82 | } |