Cypress Perform

Home > Design Support > Cypress Developer CommunityTM > Cypress Forums > USB Controllers > Flashing FX3's flash with more than a firmware-image

Bookmark and Share
Cypress Developer CommunityTM
Forums | Videos | Blogs | Training | Rewards Program | Community Components



Flashing FX3's flash with more than a firmware-image
Moderator:
RSKV

Post Reply
Follow this topic



Flashing FX3's flash with more than a firmware-image

RobK posted on 14 Aug 2012 5:00 AM PST
Top Contributor
56 Forum Posts

Hi,

I want to write an initial .bin-file which contains besides the firmware-image at the beginning more data following after the firmware-image to a flash-device connected via SPI to FX3.

Using just the ControlCenter's option "Program" -> "FX3" -> "SPI-Flash" doesn't work (it hangs up)!

Now I'm asking what's the reason for that and what do I have to modify to get it run... Obviousely the ControlCenter or the FXBoot-Programmer checks the downloaded data-file for something like the checksum or any other format-item?!

The complete source-code of the ControlCenter is not available so I'm not able to see what it does exactly.

But what about the boot-programmer which is loaded to FX3's RAM and can be used to access the SPI-Flash via USB vendor-commands? Where can I find the source-code of this boot-programmer? Is it the example-project "USBFlashProg"?

Does anybody know what the ControlCenter and the Boot-programmer do exactly with the file-data while programming the SPI-flash?

 

Best regards,

rob




Re: Flashing FX3's flash with more than a firmware-image

PicoPete posted on 14 Aug 2012 07:47 AM PST
Member
8 Forum Posts

Hi Rob,

Although I can't answer most of your questions I had real problems with control center locking up when I was programming flash and it turned out to be a problem relating to intel USB3.0 ports. The solution from my point of view was to use asmedia USB3.0 or just using USB2 (on any port, worked fine).

When writing i2c via control center, all it did was to download the entirity of the *.img file I pointed it at regardless of the contents (i.e. an invalid cypress boot or firmware file).

I found all the code that I needed from control center in "C:\Cypress\EZ-USB FX3 SDK\1.1.1\application\c_sharp\controlcenter" just incase you didn't find that.

Pete

 



Re: Flashing FX3's flash with more than a firmware-image

RobK posted on 15 Aug 2012 05:26 AM PST
Top Contributor
56 Forum Posts

Hi PicoPete,

a usual firmware-download works fine with the USB-controller I use on host-side (Renesas PCI-card).

But maybe it's worth to try on a USB2.0-port as you mentioned.

Yes, I also found the C#-project of the ControlCenter but the critical code of the download-process is hidden in a dll-lib.

 

Thanks a lot!

 

Regards,

Robert



Re: Flashing FX3's flash with more than a firmware-image

RSKV posted on 15 Aug 2012 05:49 AM PST
Cypress Employee
655 Forum Posts

Hi Rob,

Did you change the jumper settings as per your requirement.

You need to connect J101,102,103 and 104 between 2 and 3. Please check this once.

Control center just calculates the number sectors that it needs to write to the flash. Based on this, it will erase the flash sectors before programming it with the new image file.

Regards,

sai krishna.



Re: Flashing FX3's flash with more than a firmware-image

RobK posted on 15 Aug 2012 06:35 AM PST
Top Contributor
56 Forum Posts

Hi Sai Krishna,

sorry, I forgot to mention it in my first post... I'm not using the developement-board but an own hardware-design instead where the SPI-pins are connected to the flash-device directly.

 

Regards,

Rob



Re: Flashing FX3's flash with more than a firmware-image

RobK posted on 27 Aug 2012 06:41 AM PST
Top Contributor
56 Forum Posts

Hi Sai Krishna,

do you have any more hints for me rgd. this issue?

I'm getting an error-message from ControlCenter "Programming of SPI-Flash failed" if I try o program more than the firmware-image to the SPI-flash M25P16 connected to FX3's SPI on our custom-board.

 

Regards,

Rob



Re: Flashing FX3's flash with more than a firmware-image

RSKV posted on 28 Aug 2012 08:29 AM PST
Cypress Employee
655 Forum Posts

Rob,

You can programm the image into SPI flash memory.

Then using the SPI write API in the firmware, you can write your own data into the SPI flash.

Does this meets your application requirement or you want it to be done at the programming time only.

Regards,

sai krishna.



Re: Flashing FX3's flash with more than a firmware-image

RobK posted on 29 Aug 2012 11:35 PM PST
Top Contributor
56 Forum Posts

Hi Sai Krishna,

my firmware-application is running in 32bit-GPIF-mode so I haven't available the SPI anymore.

The only solution I see is to write my own BootProgrammer which receives data from USB and writes it into flash. This BootProgrammer I'd download into FX3's RAM using the ControlCenter and then I'd send the file to be flashed via USB to the device where it would be written into flash...

 

Regards,

Robert



Re: Flashing FX3's flash with more than a firmware-image

RSKV posted on 29 Aug 2012 05:10 AM PST
Cypress Employee
655 Forum Posts

Otherwise, you can use SPI similar to the way it is shown in the example project USBSpiGpioMode, if you have the enough number of free GPIOs.

Thanks,

sai krishna.



Re: Flashing FX3's flash with more than a firmware-image

paspe posted on 11 Sep 2012 06:39 AM PST
Member
3 Forum Posts

Hello,

I have the same requirement, I want to program an image file into the spi flash with at the beginning the FX3 firmware and after a FPGA firmware. I can generate this "big" file and send it with the control center but what is the format of an image (CRC, separate in differente segment ...)? is there a mean to generate it ?

Best regards,

paspe






ALL CONTENT AND MATERIALS ON THIS SITE ARE PROVIDED "AS IS". CYPRESS SEMICONDUCTOR AND ITS RESPECTIVE SUPPLIERS MAKE NO REPRESENTATIONS ABOUT THE SUITABILITY OF THESE MATERIALS FOR ANY PURPOSE AND DISCLAIM ALL WARRANTIES AND CONDITIONS WITH REGARD TO THESE MATERIALS, INCLUDING BUT NOT LIMITED TO, ALL IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT OF ANY THIRD PARTY INTELLECTUAL PROPERTY RIGHT. NO LICENSE, EITHER EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, IS GRANTED BY CYPRESS SEMICONDUCTOR. USE OF THE INFORMATION ON THIS SITE MAY REQUIRE A LICENSE FROM A THIRD PARTY, OR A LICENSE FROM CYPRESS SEMICONDUCTOR.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms and Conditions of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms and Conditions of this site. Cypress Semiconductor and its suppliers reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.