Quantcast
Channel: Forums - Recent Threads
Viewing all articles
Browse latest Browse all 262198

tms320f28023: When Flash_Erase() interrupted, settings stored in flash become all ZEROS. Why?

$
0
0

Part Number:tms320f28023

Hi,

First of all, I know interrupting Flash_Erase() function could end up in something bad. I'm just trying to understand in detail what is happening in my particular situation. In summary, all registers in flash return a value of zero when flash erase is interrupted, which would make one think it could be related to CSM Password's corruption. Since, why all zeros? Why not corrupted random values? But there is an aspect of the behavior of the system that doesn't match with this explanation. Here are the details:

During a Flash_Erase, system is powered down. When reset, all stored settings used in firmware return a value of zero. Also, the variables calculated with the IQ functions of the IQmath library return zeros. So there is definitely something going wrong during the Boot loader, which is run in Boot ROM.

The strange thing comes here, once we jump to flash, to the main_app in sectors B and C, and try to write in flash, the process is successfully carried out. How would this be possible if the CSM password is corrupted? First thought is that the writing is done from INSIDE secure memory. However, the reading of the stored settings in sector D, is also done from the main app!!! So, why does the writing work but not the reading?

So, what is going on in here?

Flash_Erase corrupted - When reset registers return a value of zero - Writing enabled.

Thank you in advance!


Viewing all articles
Browse latest Browse all 262198

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>