Break out TIOCMIWAIT handling from custom ioctl operation and use
tiocmiwait operation field instead.

Signed-off-by: Johan Hovold <jhov...@gmail.com>
---
 drivers/usb/serial/f81232.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/usb/serial/f81232.c b/drivers/usb/serial/f81232.c
index a172ad5..d1fdd8d 100644
--- a/drivers/usb/serial/f81232.c
+++ b/drivers/usb/serial/f81232.c
@@ -242,8 +242,9 @@ static int f81232_carrier_raised(struct usb_serial_port 
*port)
        return 0;
 }
 
-static int wait_modem_info(struct usb_serial_port *port, unsigned int arg)
+static int f81232_tiocmiwait(struct tty_struct *tty, unsigned long arg)
 {
+       struct usb_serial_port *port = tty->driver_data;
        struct f81232_private *priv = usb_get_serial_port_data(port);
        unsigned long flags;
        unsigned int prevstatus;
@@ -302,11 +303,6 @@ static int f81232_ioctl(struct tty_struct *tty,
                        return -EFAULT;
 
                return 0;
-
-       case TIOCMIWAIT:
-               dev_dbg(&port->dev, "%s (%d) TIOCMIWAIT\n", __func__,
-                       port->number);
-               return wait_modem_info(port, arg);
        default:
                dev_dbg(&port->dev, "%s not supported = 0x%04x\n",
                        __func__, cmd);
@@ -358,6 +354,7 @@ static struct usb_serial_driver f81232_device = {
        .set_termios =          f81232_set_termios,
        .tiocmget =             f81232_tiocmget,
        .tiocmset =             f81232_tiocmset,
+       .tiocmiwait =           f81232_tiocmiwait,
        .process_read_urb =     f81232_process_read_urb,
        .read_int_callback =    f81232_read_int_callback,
        .port_probe =           f81232_port_probe,
-- 
1.8.1.5

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to