On 10/15/20 1:30 PM, Greg KH wrote:
On Thu, Oct 15, 2020 at 01:17:45PM +0100, Lucas Tanure wrote:
Hi,
I'm learning about USB drivers and I would like to know about disconnecting
and reconnecting usb devices.
I can see my probe function being called and also the disconnect function.
But if I reconnect the device there is no call from the kernel to notify my
driver about the device being reconnected.
That's not good, your driver should be told this.
I can also see that the module for my driver was not unloaded, so I dont
understand the life cycle of a USB device.
Modules are never auto-unloaded.
If the module is not unloaded at disconnection and re-loaded for a new
device being connected, how can the driver know the device is there after a
disconnection?
The probe function should be called, are you sure it isn't?
I re-did the test couple more times and I can see now the probe
function being called.
Thanks
Thanks
Lucas
This is my dmesg for the driver at the end of this email:
[ 34.706041] usb 1-1.1.2: new high-speed USB device number 5 using dwc_otg
[ 34.837647] usb 1-1.1.2: New USB device found, idVendor=04b4,
idProduct=00f1, bcdDevice= 0.00
[ 34.837666] usb 1-1.1.2: New USB device strings: Mfr=1, Product=2,
SerialNumber=0
[ 34.837679] usb 1-1.1.2: Product: FX3
[ 34.837693] usb 1-1.1.2: Manufacturer: Cypress
[ 34.902480] usbdev_probe
[ 34.902681] usbcore: registered new interface driver My USB Device
[ 45.416310] usb 1-1.1.2: USB disconnect, device number 5
[ 45.416655] usbdev_disconnect
[ 61.326035] usb 1-1.1.2: new high-speed USB device number 6 using dwc_otg
[ 61.457674] usb 1-1.1.2: New USB device found, idVendor=04b4,
idProduct=00f1, bcdDevice= 0.00
[ 61.457692] usb 1-1.1.2: New USB device strings: Mfr=1, Product=2,
SerialNumber=0
[ 61.457706] usb 1-1.1.2: Product: FX3
[ 61.457720] usb 1-1.1.2: Manufacturer: Cypress
That is odd, sorry, don't know what to suggest.
greg k-h