CYW43907/1GC fails up boot after update

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

cross mob
NiMc_1688136
Level 5
Level 5
10 sign-ins 50 questions asked 10 solutions authored

I have received several units from a customer trial where they have been testing OTA updates. Most of the units update without any issues but these returned units appear bricked.

I get no debug output on serial port and the strangest thing is that I see no activity on the clock line from the 1GC to the external SPI flash when power is turned on. I am able to recover the units by re-programming them through the JTAG port.

Any ideas on what could cause this or approaches to debug this? I have one unit that is still bricked.

Module: 1GC (CYW43907)

SDK: 6.2.0

Flash chip: MX25L6433FZNI-08Q

0 Likes
1 Solution
NiMc_1688136
Level 5
Level 5
10 sign-ins 50 questions asked 10 solutions authored

Issue has possibly been identified.

failsafe application builds to 86K (88872) bytes but the memory map in ota2_image_defines.mk only allocates 80K (Even though the comment says 72K).

Basically after the first OTA, the last 6K of the failsafe app is overwritten with the DCT Save area. Now any future upgrades that fail during extraction does not have a valid failsafe application to run.

My fix is to reduce the factory reset size by 8K and move the failsafe starting address down 8K, This will preserve the rest of the memory map.

A FAE has confirmed that this is a known internal issue. Would have been nice to know this before shipping 1500 units that will not get this fix because this section of memory has to be updated through JTAG.

View solution in original post

3 Replies
MichaelF_56
Moderator
Moderator
Moderator
250 sign-ins 25 comments on blog 10 comments on blog

Adding the applications team anpm grsr gyan riya rroy shjl wwfe

0 Likes
Zhengbao_Zhang
Moderator
Moderator
Moderator
250 sign-ins First comment on KBA 10 questions asked

Hi:

“I am able to recover the units by re-programming them through the JTAG port.”

Can you divide the re-programming into different parts ?

like re-program  DCT firstly, to check if it can go normal.

then bootloader,  app0 ,file system.  that you can check which part causes the problem.

and it is better to enable more logs on process_upgrade_chunk,  thus if the update process were not successful,  we can have a check.

NiMc_1688136
Level 5
Level 5
10 sign-ins 50 questions asked 10 solutions authored

Issue has possibly been identified.

failsafe application builds to 86K (88872) bytes but the memory map in ota2_image_defines.mk only allocates 80K (Even though the comment says 72K).

Basically after the first OTA, the last 6K of the failsafe app is overwritten with the DCT Save area. Now any future upgrades that fail during extraction does not have a valid failsafe application to run.

My fix is to reduce the factory reset size by 8K and move the failsafe starting address down 8K, This will preserve the rest of the memory map.

A FAE has confirmed that this is a known internal issue. Would have been nice to know this before shipping 1500 units that will not get this fix because this section of memory has to be updated through JTAG.