During security related debugging, frequently we need to collect TrustZone and QSEE's debug logs from hlos' /sys/kernel/debug/tzdbg/log folder in order to determine root cause for an issue.
The logs can be collected with following adb commands:
-adb
shell
-mount –t
debugfs
none /d
-cat /sys/kernel/debug/
tzdbg
/log
-
cat /
sys/kernel/debug/
tzdbg
/
qsee_log
Depends on in which file we see error values that look like the following, with an integer in two braces, where 53 is the value of an
logged
error:
(53)
We can use following steps to check the meaning of the error code:
If the error code is found in qsee_log.txt file, then we can refer to \trustzone_images_core\securemsm\trustzone\qsee\sec_app\inc\Qsee_errno.h file.
For example, sometimes we see following qsee error logged:
(0xFFFFFFD4)
The error is defined in
Qsee_errno.h file as listed below:
#define QSEE_RESULT_FAIL_RPMB_KEY_PROVISION 0xFFFFFFD4
which means rpmb key provisioning failed due to incorrect production key selected.
If the error code is found in log.txt file, then we can refer to \trustzone_images_core\securemsm\trustzone\qsee\include\Tzbsp_errno.h file.
For example, the error 53 mentioned above is defined in Tzbsp_error.h file as below.
#define TZBSP_EC_MI_BOOT_VALID_ZERO_SIZE 53
It means TrustZone's Peripheral Image Loader driver (PIL) finds an image's header has a size of 0 for either its code size, or certificate chain size, or signature size.