From 2467635ee3b6f50131caa1b80b2d116eaf5ce938 Mon Sep 17 00:00:00 2001 From: Malcolm Priestley Date: Tue, 22 Oct 2013 20:00:22 +0100 Subject: [PATCH] staging: vt6656: call usb_device_reset before netdev registration The USB reset occurs after netdev registration if network manager calls device_open too fast causing USB fails in main_usb.c: device_init_registers. Move the usb reset to before register_netdev. Signed-off-by: Malcolm Priestley Signed-off-by: Greg Kroah-Hartman --- drivers/staging/vt6656/main_usb.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/staging/vt6656/main_usb.c b/drivers/staging/vt6656/main_usb.c index 5e4a5d0988d7..aae228c533ef 100644 --- a/drivers/staging/vt6656/main_usb.c +++ b/drivers/staging/vt6656/main_usb.c @@ -723,14 +723,15 @@ vt6656_probe(struct usb_interface *intf, const struct usb_device_id *id) usb_set_intfdata(intf, pDevice); SET_NETDEV_DEV(netdev, &intf->dev); memcpy(pDevice->dev->dev_addr, fake_mac, ETH_ALEN); + + usb_device_reset(pDevice); + rc = register_netdev(netdev); if (rc) { printk(KERN_ERR DEVICE_NAME " Failed to register netdev\n"); goto err_netdev; } - usb_device_reset(pDevice); - return 0; err_netdev: -- 2.39.5