makefile
inside the ${SDK_INSTALL_PATH}/tools/sysfw/boardcfg/ folder.This section describes the various tools used in conjunction with System Controller Firmware (SYSFW)
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 |
${SDK_INSTALL_PATH}/tools/sysfw/trace_parser/ | |
sysfw_trace_parser.py | Python script which decodes SYSFW log file |
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}/
To enable the SYSFW trace, change the #undef SYSFW_TRACE_ENABLE
to #define SYSFW_TRACE_ENABLE
on source/drivers/device_manager/sciclient.h
. 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 shall be available at the UART1 (/dev/ttyUSB1). Alternatively it can be obtained from the TIFS memory address as per the system firmware documentation
After taking the TIFS logs as in above section, it can be parsed using the sysfw_trace_parser.py script. This will decode the hex trace values and gives readable text file as output. Using this, the user can interpret the log and debug.
cmd.exe
) or Linux bash shell with the required arguments to parse the TIFS logs.