AM62x MCU+ SDK  08.06.00
SYSFW Tools

Note
To see the exact sequence of steps in which boardcfg generation is done, see the makefile inside the ${SDK_INSTALL_PATH}/tools/sysfw/boardcfg/ folder.

Introduction

This section describes the various tools used in conjunction with System Controller Firmware (SYSFW)

Tool requirements on host PC

  • The tools mentioned are implemented using python and needs python version 3.x
  • Refer to the page, Python3 , to install python and the required python packages on your PC.

Important files and folders

Folder/Files Description
${SDK_INSTALL_PATH}/tools/bin2c/
bin2c.py Tool to convert a binary file to a C array of hexadecimals
${SDK_INSTALL_PATH}/tools/sysfw/boardcfg/
sysfw_boardcfg_validator.py Python script which validates the boardcfg. Used internally in the boardcfg makefile

SYSFW Board Config Generation

SYSFW Board Config is a SOC specific configuration data regarding the various system attributes controlled by the SYSFW. These include resources, power and clock, security etc. This configuration is sent to SYSFW during boot time. The default configuration is stored in source/drivers/sciclient/sciclient_defaultBoardCfg/{SOC}/

  • Resource Management BoardCfg - sciclient_defaultBoardCfg_rm.c
  • Power Management BoardCfg - sciclient_defaultBoardCfg_pm.c
  • Security BoardCfg - sciclient_defaultBoardCfg_security.c
  • For sending it to SYSFW, these files are converted to hex arrays. We use the bin2c.py python script to do this. This is done internally in the boardcfg makefile. If we change the boardcfg in the above mentioned files, run the following command to generate the hex array header files
cd ${SDK_INSTALL_PATH}
gmake -s -C tools/sysfw/boardcfg SOC=am62x
  • Once these header files are generated, rebuild the libraries by doing
cd ${SDK_INSTALL_PATH}
gmake -s libs
  • After this, make sure to rebuild the secondary bootloader (SBL) applications. You can do this by
cd ${SDK_INSTALL_PATH}
gmake -s sbl

SYSFW Trace Enable

To enable the SYSFW trace, change the #undef SYSFW_TRACE_ENABLE to #define SYSFW_TRACE_ENABLE on source/drivers/sciclient/sciclient_defaultBoardCfg/{SOC}/sciclient_defaultBoardcfg.c. Then rebuild the boardcfg as explained in the above section.

The DM firmware log shall be available at the wakeup UART (/dev/ttyUSB2). Connect to the UART through minicom to see the logs.

The TIFS logs can be obtained from the TIFS memory address as per the system firmware documentation