I am using the SOM-LV i.MX31 with Windows CE 5.0.
I have all the latest QFE's for ARM, and LogicPD's WinCE 5.0 BSP.
I am not new to WinCE development.
This is my first time using Logic's board, but using Lolo 2.4.0, I had built up an image that I could download via Ethernet and run in very little time. I think the documentation was excellent, and things were going well.
I am writing a USB Host Class driver for a custom device. This device enumerates fine when connected to a Windows XP system, or even a different Windows CE platform running on an i.MX31 (Freescale dev kit).
However, when my custom device is plugged in to the SOM-LV, the device fails enumeration,
and neither the USBD bus driver nor my driver get loaded.
I am using Logic's Host2 Controller driver 'lpd_imx31_usb2h_imx31_50_1_0_0.dll'
v1.0.0 (First Production release).
More details:
Basically, the device responds to bus resets and address 0 , but when issuing the Set Address command, the host does not wait.
I can see the failure at step: 'DEVICE_CONFIG_STATUS_SCHEDULING_GET_INITIAL_DEVICE_DESCRIPTOR'.
Now, if I enable verbose debug output for CPhysMem debug zone on that module, there is so much output that the system slows enough such that the device completes enumeration; the 'USBDeviceAttach' routine is called in my driver, and I am able to proceed with developement, albeit with unwiedly debug statements.
Since the driver is binary-only in the BSP, I am unable to do anything myself in the Host Controller driver.
Is there anything that be done with LogicPD's Host2 Controller driver to correct this issue?
Thank you.
|