Merge git://git.denx.de/u-boot-fsl-qoriq
[oweals/u-boot.git] / drivers / usb / eth / mcs7830.c
index 9d6cf8ce7bda82c94bf84358811a6550d36d14eb..941d612a68a8e21162cd45606abadeeb560ba738 100644 (file)
@@ -418,25 +418,25 @@ static int mcs7830_basic_reset(struct usb_device *udev,
 
        rc = mcs7830_set_autoneg(udev);
        if (rc < 0) {
-               error("setting autoneg failed\n");
+               pr_err("setting autoneg failed\n");
                return rc;
        }
 
        rc = mcs7830_write_mchash(udev, priv);
        if (rc < 0) {
-               error("failed to set multicast hash\n");
+               pr_err("failed to set multicast hash\n");
                return rc;
        }
 
        rc = mcs7830_write_config(udev, priv);
        if (rc < 0) {
-               error("failed to set configuration\n");
+               pr_err("failed to set configuration\n");
                return rc;
        }
 
        rc = mcs7830_apply_fixup(udev);
        if (rc < 0) {
-               error("fixup application failed\n");
+               pr_err("fixup application failed\n");
                return rc;
        }
 
@@ -541,11 +541,11 @@ static int mcs7830_recv_common(struct ueth_data *ueth, uint8_t *buf)
        debug("%s() RX want len %d, got len %d, rc %d\n",
              __func__, wantlen, gotlen, rc);
        if (rc != 0) {
-               error("RX: failed to receive\n");
+               pr_err("RX: failed to receive\n");
                return rc;
        }
        if (gotlen > wantlen) {
-               error("RX: got too many bytes (%d)\n", gotlen);
+               pr_err("RX: got too many bytes (%d)\n", gotlen);
                return -EIO;
        }
 
@@ -622,10 +622,12 @@ static int mcs7830_recv(struct eth_device *eth)
        int len;
 
        len = mcs7830_recv_common(ueth, buf);
-       if (len <= 0)
+       if (len >= 0) {
                net_process_received_packet(buf, len);
+               return 0;
+       }
 
-       return 0;
+       return len;
 }
 
 /*