blob: 8bff02286a24aea9cf034c85b1cd00476988a12c [file] [log] [blame]
Kevin Peng7387d882022-04-15 12:18:34 +08001:orphan:
Anton Komlev6f1e5492022-06-16 19:08:57 +01002
Soby Mathewd8efe8f2020-03-16 15:19:05 +00003***********
4Version 1.0
5***********
6
7New Features
8============
9- First major release.
10
11- A Secure FW with support for PSA Level 1 and 2 isolation on Armv8-M
12 using TrustZone extension and Dual-core Cortex-M config.
13
14- The PSA Firmware Framework (PSA FF)/Dev API interfaces exposed by the
15 Secure FW to NS side.
16
17- A secure FW model with NS application example.
18
19- Secure services running within this SPE
20
21 - Secure Storage Service (PSA Protected Storage API - 1.0.0)
22 - Attestation (PSA Attestation API 1.0.0)
23 - Crypto Service (PSA API 1.0-beta-3)
24 - TF-M Audit Log
25 - Platform Service
26 - Internal Trusted Storage (PSA API 1.0.0)
27
28- PSA IPC support
29
30- Support for Armv8-M mainline and baseline and Dual-core Cortex-M systems.
31
32- Testcases running baremetal and with RTX to test the functionality.
33
34- BL2 bootloader for image authentication based on SHA256 and RSA-3072
35 digital signature.
36
37- Build system based on CMake, supporting ARMCLANG and GNU Arm.
38
39- Support for integrated CryptoCell-312 cryptographic hardware accelerator
40 on Musca-B1 platform.
41
42- Meets requirements for Updatable RoT for PSA Functional API, Level 1 and
43 Level 2 Certifications in the feature list.
44
45Platforms supported
46===================
47Current release has been tested on:
48
49 - Cortex M33 based SSE-200 system:
50
51 - `FPGA image loaded on MPS2 board.
52 <https://developer.arm.com/products/system-design/development-boards/cortex-m-prototyping-systems/mps2>`__
53 - `Fast model FVP_MPS2_AEMv8M.
54 <https://developer.arm.com/products/system-design/fixed-virtual-platforms>`__
55 - `Musca-A test chip board.
56 <https://developer.arm.com/products/system-design/development-boards/iot-test-chips-and-boards/musca-a-test-chip-board>`__
57 - `Musca-B1 test chip board.
58 <https://developer.arm.com/products/system-design/development-boards/iot-test-chips-and-boards/musca-b-test-chip-board>`__
59 - `Musca-S1 test chip board.`
60 - `FPGA image loaded on MPS3 board.
61 <https://developer.arm.com/tools-and-software/development-boards/fpga-prototyping-boards/mps3>`__
62 - `Arm DesignStart FPGA on AWS Cloud.
63 <https://developer.arm.com/docs/101965/0102/arm-designstart-fpga-on-cloud-arm-ds-getting-started>`__
64
65 - Cortex M23 based IoT Kit system:
66
67 - `FPGA image loaded on MPS2 board.
68 <https://developer.arm.com/products/system-design/development-boards/cortex-m-prototyping-systems/mps2>`__
69
70Other supported platforms:
71
Minos Galanakise4094012020-06-12 14:25:34 +010072 - Dual Core Cortex-M system:
Soby Mathewd8efe8f2020-03-16 15:19:05 +000073
Minos Galanakise4094012020-06-12 14:25:34 +010074 - `Cypress PSoc64.
Soby Mathewd8efe8f2020-03-16 15:19:05 +000075 <https://www.cypress.com/documentation/product-brochures/cypress-psoc-64-secure-microcontrollers>`__
76
77Platform Limitations
78====================
79- The PSA Arch Tests need to be split into several binaries to load onto
80 Musca-A board because of low memory available to the NS world to use.
81
82- The Regression tests on MPS3 AN524 FPGA takes about 40 minutes to complete.
83 This is because AN524 uses QSPI Flash for runtime memory as the RAM is small.
84 The slow speed of QSPI device causes the tests to run slowly.
85
86- Warm reset of eFlash is not permitted on Musca-B1 due to HW bug
87 https://community.arm.com/developer/tools-software/oss-platforms/w/docs/426/musca-b1-warm-reset-of-eflash
88 As TF-M is executed in place from eFlash on Musca-B1, there is good chance
89 that a warm reset of the board will have unexpected (even non-deterministic)
90 effects on code execution. Hence the PSA Arch FF tests, which rely of warm
91 reset of Musca-B1 were executed on RAM FS using "-DSST_RAM_FS=ON" config.
92
93Known issues
94============
95Some open issues exist and will not be fixed in this release.
96
97.. list-table::
98
99 * - AN521 FVP soft reset via AIRCR does not reset MPC / PPC / MPU and will
100 cause boot failure. This is known issue for AN521 FVP. This will cause
101 the system to not boot after a warm reset during PSA Arch FF testing.
102 - Issue : https://developer.trustedfirmware.org/T692
103
104 * - PSA Arch Crypto tests have several known failures.
105 - See this link for detailed analysis of the failures : https://github.com/ARM-software/psa-arch-tests/blob/master/api-tests/docs/test_failure_analysis.md
106
107 * - There are 2 additional failures for PSA-Arch Crypto tests with CC-312
108 other than the known failures. This is due to limitation of CC-312
109 implementation as it does not support MD_NONE hashing mode causing the
110 additional failures.
111 - The issue details are captured here : https://developer.trustedfirmware.org/T691
112
113 * - PS test case 2002 and 1002 does not fail on Musca-B1 flash when
114 run for second time without erasing flash. The WRITE_ONCE assets created
115 by SST module should not be updatable but after reboot, the update seems
116 to happen and is not expected. This issue will happen on any platform
117 using persistent storage for SST.
118 - Issue created : https://developer.trustedfirmware.org/T693
119
120 * - Boot up fails if there is unexpected data in flash on Musca-A. The boot
121 is successful and the tests pass if all the associated (SST/ITS/NV
122 Counter) flash areas are erased.
123 - Issue created : https://developer.trustedfirmware.org/T694
124
125 * - If the flash is not erased, boot fails on Musca-B1 when SST
126 is using flash for Minsizerel config.
127 - Issue created : https://developer.trustedfirmware.org/T695
128
129 * - When SST/ITS are using Flash on Musca-B1, PSA Arch FF test fails due
130 to known warm reset limitation in the platform. But after the failure,
131 Musca-B1 boot fails to boot. This could be related to general issues of
132 the SST module when Flash data is inconsistent.
133 - Issue created : https://developer.trustedfirmware.org/T696
134
135 * - The eflash driver on Musca-B1 can return random failures hence
136 triggering random failures during PSA Arch ITS and PSA Arch PS tests.
137 This happens when ITS/SST is configured to use flash.
138 - Issue created : https://developer.trustedfirmware.org/T697
139
140 * - Release build of PSA Arch Crypto tests have a different number of tests
141 when built for AN521 FVP. This is an issue in the PSA Arch Crypto tests.
142 - Issue created for PSA Arch Tests project : https://github.com/ARM-software/psa-arch-tests/issues/169
143
144--------------
145
146*Copyright (c) 2020, Arm Limited. All rights reserved.*