I have been trying to implement the driver in Windows Embedded Compact 7 for SMSC's LAN9514 evaluation board which provides LAN over USB to work with the AM335x. SMSC provides both the source and prebuilt code for the driver for Windows CE. Since the prebuilt file was built for an ARM V4 processor it will not work, but building the source into the OS image should.
The software manual makes note of a bug in Windows CE 5.0 and 6.0. I have assumed that this bug persisted into EC 7 and have made the bug fix with no change to function.
I am able to successfully build and use the image for the AM335x without the driver code. When running this way, the LAN9514 is recognized as a "Generic USB Hub" and all USB ports are active and usable. The Ethernet port is inactive and unrecognized.
After following the steps outlined in the Software User Manual (MAN-LAN95xx) provided by SMSC (add code to Platform/SRC/DRIVERS directory, include code in the /dirs file, add Registry changes to platform.reg, and update platform.bib to include the generated .dll) the OS image will build successfully; however, the LAN9514 is no longer recognized as a USB Hub. The USB ports are powered, but not recognized by the OS, and the Ethernet port remains inactive and unrecognized. This process seems to have caused the board to be reclassified as a LAN which prevents it from being used as a hub as well. By not including the .dll into platform.bib but keeping the Registry changes and loading the driver DLL dynamically when WEC7 prompts, the USB's are active but the Ethernet remains dead.
All files related to the LAN9514 can be found here (note: login required for some files): http://www.smsc.com/index.php?tid=300&pid=135&cid=&tab=5
The board being tested is functional as both USB hub and Ethernet when used on a Windows desktop machine running Windows7 and an x64 processor. I believe the problem unlikely to be a faulty board.
Boards being used are TI's AM335x EVM and SMSC's EVB9514
Has anyone else tried to use these two together and run in to a similar problem? Or can anyone provide me with advice into how to test this further?
Thank you in advance.
--Andrew