Fx3BootAppGcc and my app into flash

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
OfOr_1738446
Level 3
Level 3
First like received 25 replies posted 10 replies posted

Hello,

After 2 day of searching and debugging, i'm stuck.

i'm trying to put in my flash both Fx3BootAppGcc and my app (my app is based on the UVC_AN75779).

I want that the BootRom will load the Fx3BootAppGcc and then my app.

And when I want to update my software I will flash the UVC_AN75779.

What is working: If I put my app in the flash, and I program the Fx3BootAppGcc to RAM, the Fx3BootAppGcc loads my app.

From what iv'e read I need to merge the 2 IMG files.

Please give my an example / guide on how to do it.

Thanks,

Ofer.

0 Likes
1 Solution
Rashi_Vatsa
Moderator
Moderator
Moderator
5 likes given 500 solutions authored 1000 replies posted

Hello Offer,

Please refer to the first response of this thread programming FX3S firmware and FPGA Bitstream into SPI Flash

You can use the application for merging second stage boot loader firmware and main application firmware to the flash. Also follow the suggestions in FX3 ROM Bootloader VID / PID Override Usage  this thread too.

Please let me know if this helps

Regards,

Rashi

Regards,
Rashi

View solution in original post

0 Likes
5 Replies
OfOr_1738446
Level 3
Level 3
First like received 25 replies posted 10 replies posted

How do I merge and set the addresses?? (I follow: FX3 ROM Bootloader VID / PID Override Usage  )

0 Likes
Rashi_Vatsa
Moderator
Moderator
Moderator
5 likes given 500 solutions authored 1000 replies posted

Hello Offer,

Please refer to the first response of this thread programming FX3S firmware and FPGA Bitstream into SPI Flash

You can use the application for merging second stage boot loader firmware and main application firmware to the flash. Also follow the suggestions in FX3 ROM Bootloader VID / PID Override Usage  this thread too.

Please let me know if this helps

Regards,

Rashi

Regards,
Rashi
0 Likes

Hi RashiV,

Thanks for your replay. I got it working last night but now my problem is to return to Bootloader with USB.

I set the Fx3BootAppGcc with SPI and USB boot.

I want to return to the bootloader from my main app and that the bootloader will wait for new software to be flashed.

Can you tell me if and how to do it?

Thanks,

Ofer.

0 Likes

Hello Offer,

Please confirm that you enable SPI and USB boot for SPI with USB fallback.

You can use CyU3PUsbJumpBackToBooter and CyU3PUsbSetBooterSwitch API to jump back to the second stage boot loader. For jumping back to the boot loader the descriptors of the main firmware should be same as the second stage boot loader descriptors. This can be done by setting the first parameter of CyFx3BootUsbStart to CyTrue.

You can add a vendor interface to the firmware. On passing the vendor command, using the above API's, you can return to 2nd stage boot loader and but there should be some flag which tells the boot loader that programming to flash is completed

or

The vendor command to switch to second stage boot loader should be passed only when the SPI flash is programmed with new firmware.

Please let me know when do you want to switch back to second stage boot loader from main firmware.

Regards,

Rashi

Regards,
Rashi
0 Likes

Hi Rashi,

It doesn't work as I need it.

I gave up on this

0 Likes