Issue with BAM-based Serial Port Upgrade on MPC5554

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Issue with BAM-based Serial Port Upgrade on MPC5554

986 次查看
KAIH1
Contributor II

Hello, I’m encountering a problem while performing a BAM (Bootstrap Assist Module) upgrade via the serial port. Could you please help analyze the cause?

Below is a detailed description of my upgrade process:

  1. Initial Loading:

    • I wrote a loader program and successfully upgraded it to RAM using BAM.

    • I confirmed the program was running correctly (e.g., via LED indicators).

    • However, when the loader attempted to perform Flash memory operations, an issue arose.

    • Debugging revealed that the loader could not access the Flash memory.

  2. Check Verification:

    • I verified the review word by reading data from address 0x00FFFDE2, which returned 0x55AA.

    • In this mode, Flash memory access should be permitted.

  3. Contradictory Observation:

    • When I programmed the same loader into RAM using an emulator, Flash operations worked flawlessly during debugging.

This inconsistency has left me puzzled. Could you help identify the root cause?

标记 (2)
0 项奖励
回复
1 回复

940 次查看
davidtosenovjan
NXP TechSupport
NXP TechSupport

Censorship is very sensitive thing. It is needed to use it very carefully, because an inappropriate usage can lead in making the device useless. If you accidentally erase shadow flash there is no chance to recover it (unless it had been though about before).

If your device is censored and you don’t have any pre-prepared recovery code located in the internal flash memory, there is no way how to unlock it and everything you can do is to order new sample, and re-solder it instead of the censored one.

 

So I would recommend to study following appnote:

https://www.nxp.com/docs/en/application-note/AN3787.pdf

 

You can try to play with BOOTCFG pins. If you switch to serial boot mode, debugger should work but internal flash is not accessible.

 

If shadow flash is erased (MCU is censored), it behaves according following table:

SIU_RSR(BOOTCFG[0:1]) , boot mode, internal flash state, nexus state

00, internal boot, enabled, disabled

01, serial boot, disabled, enabled

10, external boot, disabled, enabled

11, external boot, disabled, enabled

0 项奖励
回复