Hi,

I have a usb network device where part of functionality is implemented
in firmware.  To communicate with the firmware I need to submit bulk
URBs to one of the EPs.  Unfortunately when device is being unbound or
the driver is removed from the kernel EPs are disabled before 
.disconnect() is called and I cannot tell the firmware to bring the
device down.  As a result the device sometimes locks up on rebind.

I suspect this is not an uncommon problem.  I tried usb_reset_device()
and it seems to help but not with all sorts of hangs.  I don't have any
documentation of the device - only a half-broken vendor driver which
doesn't deal with this case.  

Is there a way to submit bulk URBs from .disconnect() callback? 
Are there any best practices on how to deal with such hardware?


Thanks,

Kuba
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to