Skip to content

Commit 4f5717f

Browse files
xialin-armmanish-pandey-arm
authored andcommitted
Update specification for transfer list with GPT info tag
Add a new entry in the transfer list, to log the corruption of primagry GPT (GUID partition table) header. This information can indicate if the system is running under compromised condition as it use backup GPT. The new entry is a information from previous boot loading stage and thus follow the same category as TL_TAG_EXEC_EP_INFO32 Signed-off-by: Xialin Liu <xialin.liu@arm.com>
1 parent 02b11ec commit 4f5717f

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

source/transfer_list.rst

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -879,6 +879,9 @@ including TF-A, OP-TEE and Hafnium.
879879
* - :ref:`0x108 <tab_entry_point_info32>`
880880
- AArch32 Entry Point Info
881881

882+
* - :ref:`0x109 <tab_gpt_info>`
883+
- GPT Error Info
884+
882885
**OP-TEE pageable part address entry layout (XFERLIST_OPTEE_PAGEABLE_PART_ADDR)**
883886

884887
This entry type holds the address of OP-TEE pageable part which is described in
@@ -1374,5 +1377,43 @@ subsequent images. It's usage is identical to the 64-bit form represented by
13741377
- hdr_size + 0x20
13751378
- Register R3.
13761379

1380+
**GUID Partition Table (GPT) error information (XFERLIST_GPT_ERROR_INFO)**
1381+
1382+
This entry holds an indication of the type of GPT error.
1383+
`gpt_error_info` contains all possible GPT error information.
1384+
It is an 8-bit value. Bit 0 indicates that the secondary GPT is being used,
1385+
due to the corruption of the primary GPT header.
1386+
Bits [7:1] are reserved for future use.
1387+
1388+
.. _tab_gpt_info:
1389+
.. list-table:: GPT info type layout
1390+
:widths: 2 2 2 8
1391+
:header-rows: 1
1392+
1393+
* - Field
1394+
- Size (bytes)
1395+
- Offset (bytes)
1396+
- Description
1397+
1398+
* - tag_id
1399+
- 0x3
1400+
- 0x0
1401+
- The tag_id field must be set to `0x109`.
1402+
1403+
* - hdr_size
1404+
- 0x1
1405+
- 0x3
1406+
- |hdr_size_desc|
1407+
1408+
* - data_size
1409+
- 0x1
1410+
- 0x4
1411+
- The size of the GPT error information in bytes, it is always 1 byte.
1412+
1413+
* - gpt_error_info
1414+
- data_size
1415+
- hdr_size
1416+
- The `gpt_error_info` field contains GPT error information.
1417+
13771418
.. |hdr_size_desc| replace:: The size of this entry header in bytes must be set to `8`.
13781419
.. |current_version| replace:: `0x1`

0 commit comments

Comments
 (0)