Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Require FF-A compatibility with v1.2 #138

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

vstehle
Copy link
Collaborator

@vstehle vstehle commented Feb 25, 2025

This is a start at adding requirements on FF-A.

We start by requiring compatibility with v1.2, the version recommended by @achingupta. This is only on AArch64 and only when FF-A is actually implemented.

In the future, we will add more FF-A requirements to support use cases such as TPM-over-FF-A, Virtio-over-FF-A for virtualized environments, etc.

Add a reference to the FF-A specification v1.3 ALP1, to prepare adding
requirements around FF-A.

Signed-off-by: Vincent Stehlé <[email protected]>
@vstehle
Copy link
Collaborator Author

vstehle commented Feb 25, 2025

As of today, U-Boot wants (caller) FF-A v1.0.
Requiring (callee) FF-A v1.2 will work with U-Boot.

@xypron
Copy link
Contributor

xypron commented Feb 25, 2025

@vstehle
Adding an introductory sentence what FF-A is would improve the readability of the spec. E.g.

"The Arm Firmware Framework for Armv8-A (FF-A) specifies the management of secure partitions and APIs for the communication with these."

Including your remark concerning backwards compatibility would also be helpful.

@vstehle
Copy link
Collaborator Author

vstehle commented Feb 25, 2025

Adding an introductory sentence what FF-A is would improve the readability of the spec. E.g.

"The Arm Firmware Framework for Armv8-A (FF-A) specifies the management of secure partitions and APIs for the communication with these."

Sure @xypron; how about adding the following instead?

"The Firmware Framework for A-profile (FF-A) is an Arm software architecture describing interfaces that standardize communication between software images and firmware, in the Secure world and the Normal world."

Let me know if you are ok putting it in the note only, to keep it clearly separate from the requirements, or if you prefer it as the first sentence of the "AArch64 Firmware Framework" section instead.

Including your remark concerning backwards compatibility would also be helpful.

Ok, will do.

@vstehle
Copy link
Collaborator Author

vstehle commented Feb 25, 2025

Added a bit more details in the note regarding versions compatibility, to encompass the actual U-Boot case of caller version 1.0 and callee version 1.2.

@vstehle
Copy link
Collaborator Author

vstehle commented Feb 25, 2025

As of today EDK II requests FF-A (caller) v1.2.

Copy link
Contributor

@xypron xypron left a comment

Choose a reason for hiding this comment

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

LGTM

@vstehle
Copy link
Collaborator Author

vstehle commented Feb 26, 2025

LGTM

Thanks @xypron for the review!

@vstehle
Copy link
Collaborator Author

vstehle commented Feb 26, 2025

As of today Xen requests FF-A (caller) v1.1.
This will work with all (callee) versions compatible with (caller) v1.2.

Also, Xen implements "only" FF-A (callee) v1.1 but support for v1.2 is due soon (thanks @bertrand-marquis).

On AArch64, when FF-A is implemented, require compatibility with FF-A v1.2.

Suggested-by: Achin Gupta <[email protected]>
Signed-off-by: Vincent Stehlé <[email protected]>
@vstehle
Copy link
Collaborator Author

vstehle commented Feb 26, 2025

I added the FF-A introductory sentence to the note.
@xypron let me please know how you like it, or if we should make it the section's introduction.

@vstehle
Copy link
Collaborator Author

vstehle commented Feb 26, 2025

Today TF-A supports FF-A (callee) v1.2.

@vstehle
Copy link
Collaborator Author

vstehle commented Feb 26, 2025

Today OP-TEE implements FF-A (callee) v1.2 but only v1.1 when Xen is there (this should change soon).
It can request FF-A (caller) v1.0..v1.2, which is ok with TF-A.

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.

2 participants