This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[FAQ] F29H850TU: How to run C29 SDK Examples with Secure Boot Manager

Part Number: F29H850TU

How do I run C29 SDK examples along with the Secure Boot Manager example present in the TIFS-SDK to demonstrate proc auth boot and Bootmanager + Application secure boot?

  • Secure Boot Manager along with Combined Services Demo is a sample implementation of SBL/Bootloader + Application flow. C29 SDK examples can also be used along with Secure Boot Managers. The steps to realize the same can be found below.

    1. Modify linker cmd file path for Flash configuration

    In imports.mak, change the Flash configuration path from f29h85x_flash_lnk.cmd to f29h85x_cpu1_app_flash_lnk_hsm.cmd:

    From:

    CMD_SRCS_FLASH := $(C29SDK_ROOT)/examples/device_support/cmd/f29h85x_flash_lnk.cmd
    

    To:

    CMD_SRCS_FLASH := $(C29SDK_ROOT)/examples/device_support/cmd/f29h85x_cpu1_app_flash_lnk_hsm.cmd
    

    2. Modify load address in example makefile

    Change the load address from 0x10001000 to 0x10040000 and add --fw_type CPU1_APP:

    From:

    $(PYTHON) $(C29SDK_ROOT)/tools/boot/signing/mcu_rom_image_gen.py --image-bin $(BINDIR)/$(Target).bin --core C29 --swrv 1 --loadaddr 0x10001000 --sign-key $(SIGNING_KEY) --out-image $(BINDIR)/$(Target)_cert.bin --device f29h85x --boot FLASH --debug DBG_PUBLIC_ENABLE
    

    To:

    $(PYTHON) $(C29SDK_ROOT)/tools/boot/signing/mcu_rom_image_gen.py --image-bin $(BINDIR)/$(Target).bin --core C29 --swrv 1 --loadaddr 0x10040000 --sign-key $(SIGNING_KEY) --out-image $(BINDIR)/$(Target)_cert.bin --device f29h85x --boot FLASH --debug DBG_PUBLIC_ENABLE --fw_type CPU1_APP
    

    3. Build Configuration

    If building with CCS:

    1. Make sure build configuration is FLASH and not RAM
    2. Right-click on project → PropertiesVariables
    3. Change DUMMY_CERT variable from 1 to 0

    If building with makefile directly:

    Add DUMMY_CERT=0 and CONFIG=FLASH to the build command:

    make DUMMY_CERT=0 CONFIG=FLASH