Example MPC5744P FlashArrayIntegrityCheck test SSD GHS614

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

Example MPC5744P FlashArrayIntegrityCheck test SSD GHS614

Example MPC5744P FlashArrayIntegrityCheck test SSD GHS614

********************************************************************************

* Detailed Description:

* Used flash driver:  MPC5700 C55FG Flash Standard Software Driver (REV 1.1.0)

* http://www.nxp.com/files/product/software/C55_JDP_SSD.exe

*

* This example checks four large 256KB flash blocks at address 0x0100_0000 -

* 0x010F_FFFF.

* Some random data are placed to this section (constant "flash_data[]"), so the

* s-record is not empty.

* It is necessary to use off-line MISR_C55.exe tool which calculates MISR

* values for selected flash blocks. See the "MISR gen" folder included in this

* project. File "core0.run" is s-record file which is used for calculation. It

* contains the data (constant "flash_data[]") placed to the selected blocks.

* "misr.bat" file shows how to call the calculator.

* "output.txt" contains the result of this operation - the MISR values.

* Once this is done, initialize the SSD drivers, unlock blocks which are going

* to be checked and run the FlashArrayIntegrityCheck function.

* Notice that the code must be executed from RAM. We cannot access the flash

* during this operation. If the operation is successful, FlashCheckStatus will

* return opResult C55_OK if the MISR values are equal. It will return

* C55_ERROR_MISMATCH if the MISR values are not equal, i.e. the flash is

* corrupted and the content does not correspond to s-record file.

* ------------------------------------------------------------------------------

* Test HW:         X-MPC5744PE257DC, MPC57xx motherboard

* MCU:             PPC5744PFMMM8 1N65H

* Fsys:            200 MHz PLL

* Debugger:        Lauterbach Trace32

* Target:          internal_FLASH

*

********************************************************************************

Labels (1)
Attachments
%3CLINGO-SUB%20id%3D%22lingo-sub-1099524%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EExample%20MPC5744P%20FlashArrayIntegrityCheck%20test%20SSD%20GHS614%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1099524%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E********************************************************************************%3C%2FP%3E%3CP%3E*%20Detailed%20Description%3A%3C%2FP%3E%3CP%3E*%20Used%20flash%20driver%3A%26nbsp%3B%20MPC5700%20C55FG%20Flash%20Standard%20Software%20Driver%20(REV%201.1.0)%3C%2FP%3E%3CP%3E%3CSPAN%3E*%20%3C%2FSPAN%3E%3CA%20class%3D%22jive-link-external-small%22%20href%3D%22https%3A%2F%2Fcommunity.freescale.com%2Fexternal-link.jspa%3Furl%3Dhttp%253A%252F%252Fwww.nxp.com%252Ffiles%252Fproduct%252Fsoftware%252FC55_JDP_SSD.exe%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%20target%3D%22_blank%22%3Ehttp%3A%2F%2Fwww.nxp.com%2Ffiles%2Fproduct%2Fsoftware%2FC55_JDP_SSD.exe%3C%2FA%3E%3C%2FP%3E%3CP%3E*%3C%2FP%3E%3CP%3E*%20This%20example%20checks%20four%20large%20256KB%20flash%20blocks%20at%20address%200x0100_0000%20-%3C%2FP%3E%3CP%3E*%200x010F_FFFF.%20%3C%2FP%3E%3CP%3E*%20Some%20random%20data%20are%20placed%20to%20this%20section%20(constant%20%22flash_data%5B%5D%22)%2C%20so%20the%3C%2FP%3E%3CP%3E*%20s-record%20is%20not%20empty.%3C%2FP%3E%3CP%3E*%20It%20is%20necessary%20to%20use%20off-line%20MISR_C55.exe%20tool%20which%20calculates%20MISR%3C%2FP%3E%3CP%3E*%20values%20for%20selected%20flash%20blocks.%20See%20the%20%22MISR%20gen%22%20folder%20included%20in%20this%3C%2FP%3E%3CP%3E*%20project.%20File%20%22core0.run%22%20is%20s-record%20file%20which%20is%20used%20for%20calculation.%20It%3C%2FP%3E%3CP%3E*%20contains%20the%20data%20(constant%20%22flash_data%5B%5D%22)%20placed%20to%20the%20selected%20blocks.%3C%2FP%3E%3CP%3E*%20%22misr.bat%22%20file%20shows%20how%20to%20call%20the%20calculator.%3C%2FP%3E%3CP%3E*%20%22output.txt%22%20contains%20the%20result%20of%20this%20operation%20-%20the%20MISR%20values.%3C%2FP%3E%3CP%3E*%20Once%20this%20is%20done%2C%20initialize%20the%20SSD%20drivers%2C%20unlock%20blocks%20which%20are%20going%3C%2FP%3E%3CP%3E*%20to%20be%20checked%20and%20run%20the%20FlashArrayIntegrityCheck%20function.%3C%2FP%3E%3CP%3E*%20Notice%20that%20the%20code%20must%20be%20executed%20from%20RAM.%20We%20cannot%20access%20the%20flash%3C%2FP%3E%3CP%3E*%20during%20this%20operation.%20If%20the%20operation%20is%20successful%2C%20FlashCheckStatus%20will%3C%2FP%3E%3CP%3E*%20return%20opResult%20C55_OK%20if%20the%20MISR%20values%20are%20equal.%20It%20will%20return%3C%2FP%3E%3CP%3E*%20C55_ERROR_MISMATCH%20if%20the%20MISR%20values%20are%20not%20equal%2C%20i.e.%20the%20flash%20is%3C%2FP%3E%3CP%3E*%20corrupted%20and%20the%20content%20does%20not%20correspond%20to%20s-record%20file.%20%3C%2FP%3E%3CP%3E*%20------------------------------------------------------------------------------%3C%2FP%3E%3CP%3E*%20Test%20HW%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20X-MPC5744PE257DC%2C%20MPC57xx%20motherboard%3C%2FP%3E%3CP%3E*%20MCU%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20PPC5744PFMMM8%201N65H%20%3C%2FP%3E%3CP%3E*%20Fsys%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20200%20MHz%20PLL%3C%2FP%3E%3CP%3E*%20Debugger%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20Lauterbach%20Trace32%3C%2FP%3E%3CP%3E*%20Target%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20internal_FLASH%3C%2FP%3E%3CP%3E*%3C%2FP%3E%3CP%3E********************************************************************************%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-1099524%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E********************************************************************************%3C%2FP%3E%3CP%3E*%20Detailed%20Description%3A%3C%2FP%3E%3CP%3E*%20Used%20flash%20driver%3A%26nbsp%3B%20MPC5700%20C55FG%20Flash%20Standard%20Software%20Driver%20(REV%201.1.0)%3C%2FP%3E%3CP%3E%3CSPAN%3E*%20%3C%2FSPAN%3E%3CA%20class%3D%22jive-link-external-small%22%20href%3D%22https%3A%2F%2Fcommunity.freescale.com%2Fexternal-link.jspa%3Furl%3Dhttp%253A%252F%252Fwww.nxp.com%252Ffiles%252Fproduct%252Fsoftware%252FC55_JDP_SSD.exe%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%20target%3D%22_blank%22%3Ehttp%3A%2F%2Fwww.nxp.com%2Ffiles%2Fproduct%2Fsoftware%2FC55_JDP_SSD.exe%3C%2FA%3E%3C%2FP%3E%3CP%3E*%3C%2FP%3E%3CP%3E*%20This%20example%20checks%20four%20large%20256KB%20flash%20blocks%20at%20address%200x0100_0000%20-%3C%2FP%3E%3CP%3E*%200x010F_FFFF.%20%3C%2FP%3E%3CP%3E*%20Some%20random%20data%20are%20placed%20to%20this%20section%20(constant%20%22flash_data%5B%5D%22)%2C%20so%20the%3C%2FP%3E%3CP%3E*%20s-record%20is%20not%20empty.%3C%2FP%3E%3CP%3E*%20It%20is%20necessary%20to%20use%20off-line%20MISR_C55.exe%20tool%20which%20calculates%20MISR%3C%2FP%3E%3CP%3E*%20values%20for%20selected%20flash%20blocks.%20See%20the%20%22MISR%20gen%22%20folder%20included%20in%20this%3C%2FP%3E%3CP%3E*%20project.%20File%20%22core0.run%22%20is%20s-record%20file%20which%20is%20used%20for%20calculation.%20It%3C%2FP%3E%3CP%3E*%20contains%20the%20data%20(constant%20%22flash_data%5B%5D%22)%20placed%20to%20the%20selected%20blocks.%3C%2FP%3E%3CP%3E*%20%22misr.bat%22%20file%20shows%20how%20to%20call%20the%20calculator.%3C%2FP%3E%3CP%3E*%20%22output.txt%22%20contains%20the%20result%20of%20this%20operation%20-%20the%20MISR%20values.%3C%2FP%3E%3CP%3E*%20Once%20this%20is%20done%2C%20initialize%20the%20SSD%20drivers%2C%20unlock%20blocks%20which%20are%20going%3C%2FP%3E%3CP%3E*%20to%20be%20checked%20and%20run%20the%20FlashArrayIntegrityCheck%20function.%3C%2FP%3E%3CP%3E*%20Notice%20that%20the%20code%20must%20be%20executed%20from%20RAM.%20We%20cannot%20access%20the%20flash%3C%2FP%3E%3CP%3E*%20during%20this%20operation.%20If%20the%20operation%20is%20successful%2C%20FlashCheckStatus%20will%3C%2FP%3E%3CP%3E*%20return%20opResult%20C55_OK%20if%20the%20MISR%20values%20are%20equal.%20It%20will%20return%3C%2FP%3E%3CP%3E*%20C55_ERROR_MISMATCH%20if%20the%20MISR%20values%20are%20not%20equal%2C%20i.e.%20the%20flash%20is%3C%2FP%3E%3CP%3E*%20corrupted%20and%20the%20content%20does%20not%20correspond%20to%20s-record%20file.%20%3C%2FP%3E%3CP%3E*%20------------------------------------------------------------------------------%3C%2FP%3E%3CP%3E*%20Test%20HW%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20X-MPC5744PE257DC%2C%20MPC57xx%20motherboard%3C%2FP%3E%3CP%3E*%20MCU%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20PPC5744PFMMM8%201N65H%20%3C%2FP%3E%3CP%3E*%20Fsys%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20200%20MHz%20PLL%3C%2FP%3E%3CP%3E*%20Debugger%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20Lauterbach%20Trace32%3C%2FP%3E%3CP%3E*%20Target%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20internal_FLASH%3C%2FP%3E%3CP%3E*%3C%2FP%3E%3CP%3E********************************************************************************%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1099524%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3EGeneral%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
No ratings
Version history
Last update:
‎05-06-2016 03:34 AM
Updated by: