From: Johan Hovold Date: Tue, 19 Mar 2013 08:21:10 +0000 (+0100) Subject: USB: serial: add modem-status-change wait queue X-Git-Tag: v3.2.44~75 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=da07f4596510e8141e105c9502a25b568caba860;p=thirdparty%2Fkernel%2Fstable.git 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 Signed-off-by: Greg Kroah-Hartman Signed-off-by: Ben Hutchings --- diff --git a/include/linux/usb/serial.h b/include/linux/usb/serial.h index b29f70b2ecae7..237d5f8689f2c 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;