If the python environment has been set well,
follow below steps to practice on MSPM0 SDK CSC example (take MSPM0G351x device as
an example):
- Import both customer_secure_code example and customer_secure_sample_image example from SDK
path
<mspm0_sdk_path>\examples\nortos\<mspm0_device>\boot_manager\
into your CCS workspace.
- Build both
customer_secure_code example and
customer_secure_sample_image example. For the sample image
example, build for both EITHER_SLOT_BLUE and EITHER_SLOT_GREEN
configuration, you can see corresponding debug folder generated in the
project.
- Open UNIFLASH
Software programming tool | TI.com tool, connect PC with the
MSPM0 launchpad, and take a factory reset.
- Configure the Flash setting
as Erase MAIN and NONMAIN necessary sectors only, this option only
erases the flash region that is used in image output file.
- Load below files into MSPM0
devices, and then power cycles the device (or press NRST button in
launchpad), you can see Red LED on for 2s (CSC execution for image
verification), and then Blue LED flashing (program executed in Physical Bank1).
- \customer_secure_code_LP_MSPM0G3519_nortos_ticlang\Debug\customer_secure_code_LP_MSPM0G3519_nortos_ticlang.out:
It includes CSC firmware for Physical Bank0 and necessary NONMAIN
configuration.
- \customer_secure_code_LP_MSPM0G3519_nortos_ticlang\Debug\customer_secure_code_LP_MSPM0G3519_nortos_ticlang-bank1-0x40000.bin:
It is a copy of CSC firmware for Physical Bank1, and should be
located at the start address of Physical Bank1 (0x40000 for
MSPM0G3519 device).
- \customer_secure_sample_image_LP_MSPM0G3519_nortos_ticlang\EITHER_SLOT_BLUE\sample_image_signed_0x4800_v1_0_0_blue.txt:
It is the application image which starts from Physical Bank1 0x44800
address.
- Use Uniflash to update a
higher version of GREED application image to the device and press NRST
button. You can see after Red LED on for 2s, then the Green LED flashing.
CSC does not care how the image is loaded to flash, and this step just shows
a way to directly load firmware to MCU Logic Bank1 by Uniflash.