diff options
Diffstat (limited to 'drivers/net/usb/asix_devices.c')
| -rw-r--r-- | drivers/net/usb/asix_devices.c | 12 | 
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/net/usb/asix_devices.c b/drivers/net/usb/asix_devices.c index 85bd5d845409..232bbd79a4de 100644 --- a/drivers/net/usb/asix_devices.c +++ b/drivers/net/usb/asix_devices.c @@ -230,7 +230,9 @@ static int ax88172_bind(struct usbnet *dev, struct usb_interface *intf)  	int i;  	unsigned long gpio_bits = dev->driver_info->data; -	usbnet_get_endpoints(dev,intf); +	ret = usbnet_get_endpoints(dev, intf); +	if (ret) +		goto out;  	/* Toggle the GPIOs in a manufacturer/model specific way */  	for (i = 2; i >= 0; i--) { @@ -848,7 +850,9 @@ static int ax88772_bind(struct usbnet *dev, struct usb_interface *intf)  	dev->driver_priv = priv; -	usbnet_get_endpoints(dev, intf); +	ret = usbnet_get_endpoints(dev, intf); +	if (ret) +		return ret;  	/* Maybe the boot loader passed the MAC address via device tree */  	if (!eth_platform_get_mac_address(&dev->udev->dev, buf)) { @@ -1281,7 +1285,9 @@ static int ax88178_bind(struct usbnet *dev, struct usb_interface *intf)  	int ret;  	u8 buf[ETH_ALEN] = {0}; -	usbnet_get_endpoints(dev,intf); +	ret = usbnet_get_endpoints(dev, intf); +	if (ret) +		return ret;  	/* Get the MAC address */  	ret = asix_read_cmd(dev, AX_CMD_READ_NODE_ID, 0, 0, ETH_ALEN, buf, 0);  | 
