I am writing a USB Host interface for the UBLOX Lisa U2 GSM modem.
I have done host interfaces for Sierra Wireless, Cinterion, UBLOX Toby with no issues but the UBLOX Lisa U2 has a funny start up.
It first presents itself as VID=0x058B and PID=0x0041when it first boots, then some 2 -4 seconds later represents as a different VID = 0x1546 and PID = 0x1102.
I am only trying to handle the connection from the final VID/PID so haven't registered a driver for the initial VID/PID
For some reason the USB drivers seem to block the interrupts from my UART and SPI for 30 to 40 seconds after the module connects.
If I stop the debugger whilst the code is hung it is always in interrupt.c "IntDisable" or "IntEnable"
The interrupt being disabled/enabled varies - I have seen disable for general interrupt 58, enable for general interrupt 42
When I restart the debugger it will resume operation as expected, no longer being frozen.
If I leave the code running after a reset either under debugger or without, the application will freeze for 20 to 30 seconds before starting normal operation.
This freezing is always associated with the USB device first trying to connect.
It seems like the USB driver is rapidly disabling interrupts or something and blocking all other interrupts from working, once it stops doing this other tasks and interrupts resume normal operation. The second enumeration of the final VID/PID never seems to occur.