The ASIX 88179 driver asix_read/write_cmd() return a positive error value instead of a typical negative error value. This return value is checked in the asix_read/write_mac() to control a debug() print and can also propagate to probe() and write_hwaddr() ops.
Change to use a proper negative ECOMM return value when read/write a command. Also update to use the ETH_ALEN const instead of 6 for consistent use in asix_read/write_mac(). Signed-off-by: Jonas Karlman <[email protected]> --- drivers/usb/eth/asix88179.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/drivers/usb/eth/asix88179.c b/drivers/usb/eth/asix88179.c index 69d3073b669a..8915ef1fdc36 100644 --- a/drivers/usb/eth/asix88179.c +++ b/drivers/usb/eth/asix88179.c @@ -235,7 +235,7 @@ static int asix_write_cmd(struct ueth_data *dev, u8 cmd, u16 value, u16 index, size, USB_CTRL_SET_TIMEOUT); - return len == size ? 0 : ECOMM; + return len == size ? 0 : -ECOMM; } static int asix_read_cmd(struct ueth_data *dev, u8 cmd, u16 value, u16 index, @@ -260,15 +260,16 @@ static int asix_read_cmd(struct ueth_data *dev, u8 cmd, u16 value, u16 index, memcpy(data, buf, size); - return len == size ? 0 : ECOMM; + return len == size ? 0 : -ECOMM; } static int asix_read_mac(struct ueth_data *dev, uint8_t *enetaddr) { int ret; - ret = asix_read_cmd(dev, AX_ACCESS_MAC, AX_NODE_ID, 6, 6, enetaddr); - if (ret < 0) + ret = asix_read_cmd(dev, AX_ACCESS_MAC, AX_NODE_ID, + ETH_ALEN, ETH_ALEN, enetaddr); + if (ret) debug("Failed to read MAC address: %02x\n", ret); return ret; @@ -278,9 +279,9 @@ static int asix_write_mac(struct ueth_data *dev, uint8_t *enetaddr) { int ret; - ret = asix_write_cmd(dev, AX_ACCESS_MAC, AX_NODE_ID, ETH_ALEN, - ETH_ALEN, enetaddr); - if (ret < 0) + ret = asix_write_cmd(dev, AX_ACCESS_MAC, AX_NODE_ID, + ETH_ALEN, ETH_ALEN, enetaddr); + if (ret) debug("Failed to set MAC address: %02x\n", ret); return ret; -- 2.52.0

