EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

Updated version of ezusb.sys ? My version is 1.1 from 2001 / 2002 from cypress website

Started by Martin Maurer November 6, 2004
Hello,

can someone tell me if there is a newer / improved version of ezusb.sys then 
version 1.1 which can be downloaded from cypress website ? I saw the latest 
change was in september 2001.

I googled around and read, that on http://www.devicedriver.com/ they write, 
you shouldn't use it for production because of bugs. Is this still valid 
today or were the mentioned bugs removed from current cypress code ? Is it 
worth buying a license ? What kind of bugs are inside the code ?

Another question on IOCTL_EZUSB_BULK_READ: I often see that as size for the 
DataBuffer 0x8000 is used. Increasing it further to 64 KB seems not to work. 
Why this limitation ? Is overlapped reading supported ? Any other ideas how 
i can further increase bandwidth (currently 17 MB/s, with external IFCLK of 
24,576 MHz) ?

Regards,

         Martin 


You can get a free copy of the latest ezusb.sys driver (V1.30.0.0)
from the Cypress web site.
http://www.cypress.com/cfuploads/support/developer_kits/EZ-USB_devtools_version_261700.zip
 You will have to install the entire development kit in the default
directory, the source code and driver will be located in
"C:\Cypress\USB\Drivers\ezusbdrv".

I don't know of any "Bugs" in the ezusb driver. The driver has very
limited functionality. I think the only reason Cypress says that this
is "not for production" is that they do not want to take any
responsibility for this driver in someone else's product. One of the
limitations of this driver is that the IOCTL_EZUSB_BULK_READ in
version 1.30 is limited to 64K. Another limitation of this driver is
that it does not support overlapped reading. Cypress has always said
they have no plans to improve this driver, except to support new ezusb
chips, that "you should write your own driver" and that the exusb
driver is only for development purposes.

A Cypress app note for the exusb FX2 chip (usb 2.0) "Streaming Data
through Isochronous/ Bulk Enpoints on EZ-USB FX2"
"http://www.cypress.com/support/reference_designs.cfm?objectID=EDF665E8-CA56-4410-9B5CD3635BDF6275&tid=54A040FA-2262-424A-B14741267CBD1308"
states that the throughput will max out at 24MBps. To get this
high-bandwidth transfers it uses the CYdvk.sys driver that supports
three 1024 byte packets per microframe.

The 2024 Embedded Online Conference