]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/usb/serial/mos7720.c
Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[karo-tx-linux.git] / drivers / usb / serial / mos7720.c
index 91bc170b408a08a59c49786e2cb5753149ce2425..f075121c6e32329d136935d2d1d56ae8b49c784f 100644 (file)
@@ -234,11 +234,16 @@ static int read_mos_reg(struct usb_serial *serial, unsigned int serial_portnum,
 
        status = usb_control_msg(usbdev, pipe, request, requesttype, value,
                                     index, buf, 1, MOS_WDR_TIMEOUT);
-       if (status == 1)
+       if (status == 1) {
                *data = *buf;
-       else if (status < 0)
+       } else {
                dev_err(&usbdev->dev,
                        "mos7720: usb_control_msg() failed: %d\n", status);
+               if (status >= 0)
+                       status = -EIO;
+               *data = 0;
+       }
+
        kfree(buf);
 
        return status;
@@ -1846,7 +1851,6 @@ static int get_serial_info(struct moschip_port *mos7720_port,
        tmp.line                = mos7720_port->port->minor;
        tmp.port                = mos7720_port->port->port_number;
        tmp.irq                 = 0;
-       tmp.flags               = ASYNC_SKIP_TEST | ASYNC_AUTO_IRQ;
        tmp.xmit_fifo_size      = NUM_URBS * URB_TRANSFER_BUFFER_SIZE;
        tmp.baud_base           = 9600;
        tmp.close_delay         = 5*HZ;