PSA Compliance Tests (except for FirmwareFramework)

Description

Data from OpenCI Requirements Spreadsheet

Requirement

PSA Compliance Tests

Priority

H

Project

TF-M

 Point Of Contact

Anton/Karl

Why do we need it

Notes

Deliverables

  • Implement PSA Compliance tests in LAVA 

Out of Scope 

  • Project is timeboxed to a 24K budget

 

Environment

None

Engineering Progress Update

None

Attachments

2

is implemented by

Activity

Paul Sokolovskyy 
June 1, 2022 at 6:19 AM

From the comment :

I download the image built by CI and run locally on my FVP. It works well. As shown in the previous comment, FF uses two terminals to print logs

I confirm that I can see output on 2 terminals. But I don’t see that the current CI image works well. In the existing configuration, with BL2, the tests abort at “TEST: 4 | DESCRIPTION: Testing psa_connect with invalid sid”. When built without BL2, all tests run thru, but some of them fail. The failures are also seen in the output attached to the above comment, e.g.:

 

 

All in all, there’s some (maybe even a bunch of) work to do on the “FF” tests yet. As we discussed with , it would be nice to such tickets in 2 or more parts to allow to track remaining work more precisely. I created specifically for the PSA FF tests, and closing this ticket as done (after updating its title to be explicit that FF tests are not included in it).

Paul Sokolovskyy 
May 31, 2022 at 11:49 AM

A new FVP license number has been shared over email.

Ack’ing that it works for me with FVP_MPS2_AEMv8M [11.12.38 (Sep 18 2020)].

Anton Komlev 
May 30, 2022 at 7:01 AM

A new FVP license number has been shared over email.

Paul Sokolovskyy 
May 5, 2022 at 7:42 PM

With https://review.trustedfirmware.org/c/ci/tf-m-ci-scripts/+/15092 merged, what we should have now (todo: check everything once again manually) is that Crypto, Storage, and Initial Attestion testsuites are supported in all their valid configs,namely: Level 1 lib model, and Level 1,2,3 IPC model. That’s 12 configs total.

The hard case left is Firmware Framework (FF) tests. That’s supported only for Level 1,2 IPC model, i.e. just 2 configs. The current situation is the same as described in the previous comments: when booting in LAVA, that errors out (?) with “[ERR] Unable to find bootable image“, while Xinyu says it works ok locally, but requires additional serial connection to get the test output.

So, that’s what I’m going to reproduce next. Immediate problem is that my local install of the FVP required for TF-M tests has its evaluation license expired. I’m going to try to find out if it’s possible to renew it somehow.

Paul Sokolovskyy 
May 3, 2022 at 11:48 AM

Ok, so there were a few smallish patches (see previous comments), mostly removing older workarounds, adding missing known-working config variants and generazing existing configs. I’ve merged them by now, because lack of them clouds the view of what’s actually supported and works.

What we have now (in production):

This covers: CRYPTO, STORAGE, INITIAL_ATTESTATION testsuites, isolation Level 1, both “Lib model” and “IPC model“. I.e., 6 configs in total. I’m going to look into these testsuites for Levels 2/3 next.

The “FF“ testsuite remains the hard case, which I leave to after that (but build issue reported previously is fixed - FF and “Lib model” is excluded from valid build configs properly).

Done

Details

Assignee

Reporter

Upstream

Shirt Size

Medium (1-2 weeks)

Priority

Checklist

Sentry

Created February 4, 2021 at 10:31 PM
Updated October 17, 2023 at 9:57 PM
Resolved June 1, 2022 at 6:20 AM