Issue with BAM-based Serial Port Upgrade on MPC5554

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Issue with BAM-based Serial Port Upgrade on MPC5554

985 Views
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?

Tags (2)
0 Kudos
Reply
1 Reply

939 Views
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 Kudos
Reply