X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=drivers%2Fusb%2Fserial%2Fark3116.c;fp=drivers%2Fusb%2Fserial%2Fark3116.c;h=7812052dc7001519f4f73e5e2afa34857ae21431;hb=960a38eae80a9e5ba9688c0eb92114f6de028904;hp=1532cde8a437b596b7ed1442aaa127666cdadb9f;hpb=a2ce74e35d5fd1afb5304b645c3b459c922a2c4a;p=linux-beck.git diff --git a/drivers/usb/serial/ark3116.c b/drivers/usb/serial/ark3116.c index 1532cde8a437..7812052dc700 100644 --- a/drivers/usb/serial/ark3116.c +++ b/drivers/usb/serial/ark3116.c @@ -99,10 +99,17 @@ static int ark3116_read_reg(struct usb_serial *serial, usb_rcvctrlpipe(serial->dev, 0), 0xfe, 0xc0, 0, reg, buf, 1, ARK_TIMEOUT); - if (result < 0) + if (result < 1) { + dev_err(&serial->interface->dev, + "failed to read register %u: %d\n", + reg, result); + if (result >= 0) + result = -EIO; + return result; - else - return buf[0]; + } + + return buf[0]; } static inline int calc_divisor(int bps)