summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohan Hovold <jhovold@gmail.com>2013-03-19 09:21:10 +0100
committerBen Hutchings <ben@decadent.org.uk>2013-04-25 20:22:10 +0100
commitda07f4596510e8141e105c9502a25b568caba860 (patch)
tree1a63ab428be6e8b06ea11d481b89843798a28ff2
parent93dfb878a5b870fb6a08e1c69d9046ebc4a4471e (diff)
downloadlinux-stable-da07f4596510e8141e105c9502a25b568caba860.tar.gz
linux-stable-da07f4596510e8141e105c9502a25b568caba860.tar.bz2
linux-stable-da07f4596510e8141e105c9502a25b568caba860.zip
USB: serial: add modem-status-change wait queue
commit e5b33dc9d16053c2ae4c2c669cf008829530364b upstream. Add modem-status-change wait queue to struct usb_serial_port that subdrivers can use to implement TIOCMIWAIT. Currently subdrivers use a private wait queue which may have been released when waking up after device disconnected. Note that we're adding a new wait queue rather than reusing the tty-port one as we do not want to get woken up at hangup (yet). Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r--include/linux/usb/serial.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/usb/serial.h b/include/linux/usb/serial.h
index b29f70b2ecae..237d5f8689f2 100644
--- a/include/linux/usb/serial.h
+++ b/include/linux/usb/serial.h
@@ -71,6 +71,7 @@ enum port_dev_state {
* port.
* @flags: usb serial port flags
* @write_wait: a wait_queue_head_t used by the port.
+ * @delta_msr_wait: modem-status-change wait queue
* @work: work queue entry for the line discipline waking up.
* @throttled: nonzero if the read urb is inactive to throttle the device
* @throttle_req: nonzero if the tty wants to throttle us
@@ -114,6 +115,7 @@ struct usb_serial_port {
unsigned long flags;
wait_queue_head_t write_wait;
+ wait_queue_head_t delta_msr_wait;
struct work_struct work;
char throttled;
char throttle_req;