Skip to content

Complete Pj-specific TE move to separatate spec - #85

Open
jmarinho wants to merge 2 commits into
mainfrom
move_TEs_to_project_specific_spec
Open

Complete Pj-specific TE move to separatate spec#85
jmarinho wants to merge 2 commits into
mainfrom
move_TEs_to_project_specific_spec

Conversation

@jmarinho

@jmarinho jmarinho commented Jan 6, 2026

Copy link
Copy Markdown
Contributor

The TEs specific to a project (or a small collection or projects) were moved to a separate spec
(https://github.com/FirmwareHandoff/ProjectEntries).

The main FW Handoff spec only carries the tag id list for those TEs. Any new TE declared in the separate spec, must have its tag id listed in the main FW Handoff spec.

Change-Id: If718d948dc4cd4d87d537474538f0ea64865b0e9

@danh-arm danh-arm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We'll need to take care that the TEs in the other repo are sync'd with this one when we merge this.

Comment thread source/references.rst Outdated

.. [SPMCATTR] `The SPMC manifest v2.12: <https://hafnium.readthedocs.io/en/v2.12.0/secure-partition-manager/secure-partition-manager.html#spmc-manifest>`__

.. [FWH_Project_Entries] `Firmware Handoff Project Entries <https://github.com/FirmwareHandoff/ProjectEntries>`__ No newline at end of file

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the ProjectEntries repo name is too generic. Suggest ProjectTransferEntries or ProjectTEs.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed the repo to ProjectTEs (https://github.com/FirmwareHandoff/ProjectTEs) and updated this reference.

Comment thread source/transfer_list.rst Outdated
Comment thread source/transfer_list.rst Outdated

* - :ref:`0x109 <tab_gpt_info>`
* - 0x109
- GPT Error Info

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be more maintainable if you just reserve out the TagID ranges in this spec rather than summarising the TagIDs and their names. It might be good to reserve out a larger block now to avoid updating this spec when adding new TF TEs.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed the table to list the ranges in ProjectTEs.

Comment thread source/transfer_list.rst Outdated
- data_size
- hdr_size
- The `gpt_error_info` field contains GPT error information.
Whenever a new project specific transfer entry is declared in the ancillary specification [FWH_Project_Entries]_, its tag id must be documented in :numref:`tab_entries_summary`.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you take my other comment than you can change this to say that this spec must be updated when that spec defines a new TE outside the reserved range(s).

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

updated to:
"Whenever a new tag id range is declared in the ancillary specification [FWH_Project_Entries]_, or an existing tag id range is extended, :numref:tab_entries_summary must be updated accordingly."

@jmarinho
jmarinho force-pushed the move_TEs_to_project_specific_spec branch from 7aec2fc to 7fa1312 Compare January 22, 2026 11:35
@jmarinho
jmarinho force-pushed the move_TEs_to_project_specific_spec branch from 7fa1312 to 3a5d521 Compare March 26, 2026 14:28
Comment thread source/transfer_list.rst Outdated
.. list-table:: GPT info type layout
:widths: 2 2 2 8
.. _tab_entries_summary:
.. list-table:: List of tag ids ranges in the Project Specific Entries ancillary specification

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: tag ID ranges

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Comment thread source/transfer_list.rst Outdated
- Size (bytes)
- Offset (bytes)
- Description
The following tag id ranges are used by that specification.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: /id/ID

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Comment thread source/transfer_list.rst Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to be deleted or changed to project specific entries.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed line 598, rewrote it as "Project Specific Entries (:numref:project_specific_entries)."

@jmarinho
jmarinho force-pushed the move_TEs_to_project_specific_spec branch from 3a5d521 to a4c1c37 Compare March 30, 2026 15:36
Comment thread source/references.rst Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we need to clean up these dangling references:

checking consistency... /workspaces/tf-a-projects/fw-handoff/core-spec/source/references.rst:24: WARNING: Citation [OPTEECore] is not referenced.
/workspaces/tf-a-projects/fw-handoff/core-spec/source/references.rst:26: WARNING: Citation [TFAFFAMB] is not referenced.
/workspaces/tf-a-projects/fw-handoff/core-spec/source/references.rst:30: WARNING: Citation [TF_BL31] is not referenced.
/workspaces/tf-a-projects/fw-handoff/core-spec/source/references.rst:32: WARNING: Citation [SPMCATTR] is not referenced.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Comment thread source/transfer_list.rst Outdated
- data_size
- hdr_size
- The `gpt_error_info` field contains GPT error information.
Whenever a new tag id range is declared in the ancillary specification [FWH_Project_Entries]_, or an existing tag id range is extended, :numref:`tab_entries_summary` must be updated accordingly.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: same on this line /id/ID

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

@jmarinho
jmarinho force-pushed the move_TEs_to_project_specific_spec branch from a4c1c37 to 63f2b0d Compare March 30, 2026 17:00
The TEs specific to a project (or a small collection or projects) were
moved to a separate spec
(https://github.com/FirmwareHandoff/ProjectTEs).

The main FW Handoff spec only carries the tag id range list for those TEs.
Any new tag id range declared in the separate spec, must be documented in
the main FW Handoff spec.

Change-Id: If718d948dc4cd4d87d537474538f0ea64865b0e9
Signed-off-by: Jose Marinho <jose.marinho@arm.com>
@jmarinho
jmarinho force-pushed the move_TEs_to_project_specific_spec branch from 63f2b0d to ef5f42e Compare March 30, 2026 17:01
Comment thread source/transfer_list.rst
@jmarinho
jmarinho dismissed manish-pandey-arm’s stale review June 15, 2026 14:40

The merge-base changed after approval.

Comment thread source/transfer_list.rst Outdated
.. _64_bit_ep_info:

**AArch64 executable entry point information (XFERLIST_EXEC_EP_INFO64)**
* - 0x100 -- 0x109

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we reserve some ids at the end, e.g. 0x100 - 0x11f? This PR already goes beyond 0x109: FirmwareHandoff/ProjectTEs#2

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done, increased allocation to 0x11f.

Though, we should probably rephrase the sentence at line 935:
"Whenever a new tag ID range is declared in the ancillary specification [FWH_Project_Entries]_, or an existing tag ID range is extended, :numref:tab_entries_summary must be updated accordingly."

@jmarinho
jmarinho force-pushed the move_TEs_to_project_specific_spec branch from 5748ea3 to fff7443 Compare August 6, 2026 21:09
@sjg20

sjg20 commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

This seems to be somewhat defeating the purpose of having a firmware handoff protocol? Is it just because these things are pre-existing and we don't want to rework them to fit properly into Firmware Handoff, DT schema, etc.?

Please state the motivation clearly here, at least for posterity.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants