This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

USB Enumeration Failed When FW Size is > 8k

Hi all,

I'm using CY7C68013A-100 chip sets that has 16k of on chip memory. However, when my firmware code is more than 8k, the enumeration process fails. Has anyone run into this kind of issue before?

I've tried playing around with the project options from uVision without much luck....

Thanks,
Peter

Parents
  • I am using driver to load the FW. One interesting thing is in the file ezloader.h there's this define

    //
    // This is the highest internal RAM ad
    //

    #define MAX_INTERNAL_ADDRESS 0x2000

    I changed the define to 0x3fff to make the max size 16k. With that I was able to enumerate with FW size a little bigger but once the FW is around 8.4k the enumeration failed again...

Reply
  • I am using driver to load the FW. One interesting thing is in the file ezloader.h there's this define

    //
    // This is the highest internal RAM ad
    //

    #define MAX_INTERNAL_ADDRESS 0x2000

    I changed the define to 0x3fff to make the max size 16k. With that I was able to enumerate with FW size a little bigger but once the FW is around 8.4k the enumeration failed again...

Children
  • I changed the define to 0x3fff

    did you compile the driver after changeing that define?
    Otherwise the limit may still within the driver.

    Thomas

  • Yes, I did recompiled the driver code using the build command. I need to determine:

    1. Is this a Cypress driver code issue?
    2. Is this a configuration issue with the way I configured my Keil uVision 3.0 project settings (ie. the data and code space ranges)
    3. Is this a C51 library issue?
    4. Something to do with my firmware. I don't think it's my code, but it could be the the framework code that I'm using. Normally I don't need to look into the framework code because it used to work for my older chipset...