USB: pl2303: make set_control_lines a port operation
authorJohan Hovold <jhovold@gmail.com>
Thu, 21 Mar 2013 11:36:22 +0000 (12:36 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 25 Mar 2013 20:39:22 +0000 (13:39 -0700)
Pass usb-serial port rather than usb device to set_control_lines, and
make sure port device is used for all port related debugging.

Signed-off-by: Johan Hovold <jhovold@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/serial/pl2303.c

index 5b2e62f..e7e407b 100644 (file)
@@ -248,14 +248,15 @@ static int pl2303_port_remove(struct usb_serial_port *port)
        return 0;
 }
 
-static int set_control_lines(struct usb_device *dev, u8 value)
+static int pl2303_set_control_lines(struct usb_serial_port *port, u8 value)
 {
+       struct usb_device *dev = port->serial->dev;
        int retval;
 
        retval = usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
                                 SET_CONTROL_REQUEST, SET_CONTROL_REQUEST_TYPE,
                                 value, 0, NULL, 0, 100);
-       dev_dbg(&dev->dev, "%s - value = %d, retval = %d\n", __func__,
+       dev_dbg(&port->dev, "%s - value = %d, retval = %d\n", __func__,
                value, retval);
        return retval;
 }
@@ -437,7 +438,7 @@ static void pl2303_set_termios(struct tty_struct *tty,
        if (control != priv->line_control) {
                control = priv->line_control;
                spin_unlock_irqrestore(&priv->lock, flags);
-               set_control_lines(serial->dev, control);
+               pl2303_set_control_lines(port, control);
        } else {
                spin_unlock_irqrestore(&priv->lock, flags);
        }
@@ -480,7 +481,7 @@ static void pl2303_dtr_rts(struct usb_serial_port *port, int on)
                priv->line_control &= ~(CONTROL_DTR | CONTROL_RTS);
        control = priv->line_control;
        spin_unlock_irqrestore(&priv->lock, flags);
-       set_control_lines(port->serial->dev, control);
+       pl2303_set_control_lines(port, control);
 }
 
 static void pl2303_close(struct usb_serial_port *port)
@@ -550,7 +551,7 @@ static int pl2303_tiocmset(struct tty_struct *tty,
 
        mutex_lock(&serial->disc_mutex);
        if (!serial->disconnected)
-               ret = set_control_lines(serial->dev, control);
+               ret = pl2303_set_control_lines(port, control);
        else
                ret = -ENODEV;
        mutex_unlock(&serial->disc_mutex);