TI CC2744 HSM Programming

From SEGGER Knowledge Base
Jump to navigation Jump to search

The TI CC2744 series of comes with a security feature called HSM. SEGGER implemented support for this feature via a dedicated utility called Device Provisioner. For more information about this, please refer to the Device Provisioner article. CC2744 security features are implemented in the PCode_DevPro_TI_CC2744_PG2_HSM.pex script file.

Important notes

  1. Before installing a HSM firmware to the HSM section, the program, CCFG and SCFG flash needs to be programmed with an appropriate image before.

Usage

DevPro -operation [operation_name] -SetConfigVal [parameter_name=value] -if SWD -speed 15000 -ScriptFile PCode_DevPro_TI_CC2744_PG2_HSM.pex
Operation Parameters Values Description
CheckHSMStatus - - Displays the current HSM status.
ProgramHSM DataFile Filename Program the HSM section of the device with data in the specified file.

Examples

Checking HSM status

Command

devpro -operation CheckHSMStatus -if SWD -speed 15000 -ScriptFile "PCode_DevPro_TI_CC2744_PG2_HSM.pex"

Output

The following output shows the status of a device with installed HSM firmware (HSM firmware V4.5.1 / Custom firmware V2.1.0)

Command line: -operation CheckHSMStatus -if SWD -speed 15000 -ScriptFile PCode_DevPro_TI_CC2744_PG2_HSM.pex
Opened script file: 'C:\Program Files\SEGGER\JLink_V810b\Script\PCode_DevPro_TI_CC2744_PG2_HSM.pex'
J-Link log: == Check HSM status ==
J-Link log:   Getting device information...
J-Link log:     CFG-AP DEVICEID: 0x5BB9802F
J-Link log:       PG2.0 device detected
J-Link log:     CFG-AP DEVICESTATUS: 0x030DC105
J-Link log:   Executing reset via SEC-AP in order to enter SACI mode...
J-Link log:     O.K.
J-Link log:   Reading secure boot or HSM FW update status...
J-Link log:     Status: SACI_RESULT_SUCCESS
J-Link log:     Status: SB_STA_NA
J-Link log:   Reading HSM system information...
J-Link log:     Status: SACI_RESULT_SUCCESS
J-Link log:       Response Word: 0x01040501
J-Link log:       Response Word: 0x00040301
J-Link log:       Response Word: 0x00012000
J-Link log:       Response Word: 0x00000000
J-Link log:       Response Word: 0x22000000
J-Link log:       Response Word: 0x00040501
J-Link log:       Response Word: 0x00020000
J-Link log:       Response Word: 0x00020100
J-Link log:       Response Word: 0x00020000
J-Link log:     === HSM FW version ===
J-Link log:       Major:    0x00000004
J-Link log:       Minor:    0x00000005
J-Link log:       Patch:    0x00000001
J-Link log:     === Custom FW version ===
J-Link log:       Major: 0x00000002
J-Link log:       Minor: 0x00000001
J-Link log:       Patch: 0x00000000
J-Link log:   Executing exit SACI mode sequence...
J-Link log:     Status: SACI_RESULT_SUCCESS
J-Link log:     O.K.
J-Link log:   Checking if AHB-AP is enabled...
J-Link log:     O.K.
J-Link log:   Checking if debug probe loop entered...
J-Link log:     O.K.

Programm HSM firmware

Command

devpro -operation ProgramHSM -SetConfigVal "DataFile=C:\Temp\CC27XX_HSM_FW_v2.1.0.bin" -if SWD -speed 15000 -ScriptFile "PCode_DevPro_TI_CC2744_PG2_HSM.pex"

Output

Command line: -operation ProgramHSM -SetConfigVal DataFile=C:\Temp\CC27XX_HSM_FW_v2.1.0.bin -if SWD -speed 15000 -ScriptFile PCode_DevPro_TI_CC2744_PG2_HSM.pex
Opened script file: 'C:\Program Files\SEGGER\JLink_V810b\Script\PCode_DevPro_TI_CC2744_PG2_HSM.pex'
J-Link log: == Program HSM ==
J-Link log:   FileSize: 0x00013240
J-Link log:   Getting device information...
J-Link log:     CFG-AP DEVICEID: 0x5BB9802F
J-Link log:       PG2.0 device detected
J-Link log:     CFG-AP DEVICESTATUS: 0x030DC205
J-Link log:   Executing reset via SEC-AP in order to enter SACI mode...
J-Link log:     O.K.
J-Link log:   Programming HSM section...
J-Link log:     Status: SACI_RESULT_SUCCESS
J-Link log:     O.K.
J-Link log:   Executing exit SACI mode sequence...
J-Link log:     Status: SACI_RESULT_SUCCESS
J-Link log:     O.K.
J-Link log:   Checking if AHB-AP is enabled...
J-Link log:     O.K.
J-Link log:   Checking if debug probe loop entered...
J-Link log:     O.K.