CYUSB3014-BZXC boot

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

cross mob
BuYa_3858256
Level 1
Level 1

Hi,

Is there an application note on FX3 (CYUSB3014-BZXC) boot process which includes the external fash and the boot through USB?

I need to put multiple images in the external flash and boot from golden or updated image.

In addition to flash, I would like to boot through USB (ideally from iPhone connection, linux or windows USB is also fine)

Thanks and best regards,

California

0 Likes
1 Solution
JayakrishnaT_76
Moderator
Moderator
Moderator
First question asked 1000 replies posted 750 replies posted

Hello,

Please let us know if you have gone through the Application Note AN76405 which describes FX3 Boot Options. The link to the same is given below:

https://www.cypress.com/file/201991/download

FX3 can boot from various sources. FX3 supports your requirement to boot from flash and boot from USB. If the boot from Flash fails, then it falls back to USB boot. For more information, please refer to the application note mentioned before.

According to my understanding, your second question is: You need to place multiple images in flash and boot the latest image. If this is the requirement, you can use second stage bootloader. Please refer to the following thread to understand how this is to be implemented.

FX3 Boot / Firmware Update Best Practices

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna

View solution in original post

0 Likes
6 Replies
JayakrishnaT_76
Moderator
Moderator
Moderator
First question asked 1000 replies posted 750 replies posted

Hello,

Please let us know if you have gone through the Application Note AN76405 which describes FX3 Boot Options. The link to the same is given below:

https://www.cypress.com/file/201991/download

FX3 can boot from various sources. FX3 supports your requirement to boot from flash and boot from USB. If the boot from Flash fails, then it falls back to USB boot. For more information, please refer to the application note mentioned before.

According to my understanding, your second question is: You need to place multiple images in flash and boot the latest image. If this is the requirement, you can use second stage bootloader. Please refer to the following thread to understand how this is to be implemented.

FX3 Boot / Firmware Update Best Practices

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna
0 Likes

Hi,

I couldn't find the answers for the following questions in this application note:

  1. To extend bootloader capability 4 FLASH chips 128Kbytes each could be connected to one bus and used to boot FX3 firmware.
  • Which exact brand manufacture and chip type could/should be used?
  • What is the schematic?
  • How to set addresses of these chips?
  • How FX3 choose which next chip to download?
  • How image should be divided between memory chips?
  • What special requirements should be provided?
  • Do you have an source example of this situation?
  1. To have 2 or more images in flash, Cypress mention to use 2-step bootloader. (AN76405 - EZ-USB® FX3™/FX3S™ Boot Options, FX3 as Custom USB Bootloader - KBA218343)
  • Can you explain in details how to implement it?

Thanks and best regards,

0 Likes

Hello,

As mentioned in section 7.1 of AN76405, SP! Flash/EEPROM devices from 1Kb to 12Mb are supported for boot by FX3. Some of the compatible part numbers are also mentioned under the same section. You can use a single chip from any of these flash parts for your design(4 FLASH chips are not needed). The schematics depends on the flash part used. Please refer to section 8.4 of AN70707(link provided below) which has a sample for flash connections.

https://www.cypress.com/file/139936/download​​

Regarding second stage bootloader, please refer to the following thread

FX3 Boot / Firmware Update Best Practices

The above thread mentions the logic that can be used to boot from multiple images stored in a flash. You can refer to it and implement the same for your application.

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna
0 Likes

Hi Jayakrishna,

Can we have a phone conversation or zoom/skype short meeting?  I am not clear about the answers and would like to discuss them with you.

I am available 24/7. I am located in California.

Thanks and best regards,

0 Likes

Hello,

Please confirm if you are okay to attend the webex meeting at the time mentioned in my mail. If you are not okay, then please let us know an alternate time.

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna
0 Likes

Hello,

As a follow up to your question in our meeting, the FX3 second stage bootloader firmware can be found in the following location.

C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\firmware\boot_fw\src

When the second stage bootloader download firmware image stored inside I2C EEPROM, the boot may fail due to the following reasons:

1. I2C block is not initialized or configured properly (CyFx3BootI2cInit() or CyFx3BootI2cSetConfig() fails)

2. If the first two bytes of the firmware image is not "CY" (this check is done inside I2cInit() function towards the end).

3. If any error occur while downloading the firmware from the EEPROM (read from EEPROM fails).

You can refer to the source code and let us know if you have any queries on this.

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna
0 Likes