check_cr50_board_id¶
Source code: check_cr50_board_id.py
Check the board ID of the Cr50 firmware.
Description¶
This test checks the board ID in the Cr50 firmware matched the given expectation or not. The test gains the board ID by invoking gsctool utility on DUT.
See https://chrome-internal.googlesource.com/ti50/common/ti50/+/main/docs/board_id_flags.md#values-in-info-pages for available flags.
Test Procedure¶
This is an automatic test that doesn’t need any user interaction.
Firstly, this test gets the board ID from the Cr50 firmware.
If the argument
board_id_type
is set, the test checks if the board ID type field is equal to the argument value or not.If the argument
board_id_flags
is set, the test checks if the board ID flags field is equal to the argument value or not.
Dependency¶
DUT link must be ready before running this test.
gsctool on DUT.
Examples¶
To check if the board ID is still unprogrammed, add this in test list:
{
"pytest_name": "check_cr50_board_id",
"label": "Assert GSC Board ID Is Unset",
"related_components": [
"test_tags.TestCategory.SECURE_ELEMENT"
],
"args": {
"board_id_type": "ffffffff",
"board_id_flags": "ffffffff"
}
}
To check if the board ID flags is set to normal prePVT, you can set the argument
board_id_flags
to PHASE_PREPVT:
{
"pytest_name": "check_cr50_board_id",
"label": "Assert GSC Board ID flags is pre-pvt",
"related_components": [
"test_tags.TestCategory.SECURE_ELEMENT"
],
"args": {
"board_id_flags": "PHASE_PREPVT"
}
}
Test Arguments¶
Name |
Type |
Description |
---|---|---|
board_id_type |
int, str, None |
(optional; default: |
board_id_flags |
int, str, None |
(optional; default: |