| fded3a48 | 18-Dec-2024 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge changes from topic "hm/heap-info" into integration
* changes: fix(handoff): remove XFERLIST_TB_FW_CONFIG feat(arm): migrate heap info to fw handoff feat(mbedtls): introduce crypto lib he
Merge changes from topic "hm/heap-info" into integration
* changes: fix(handoff): remove XFERLIST_TB_FW_CONFIG feat(arm): migrate heap info to fw handoff feat(mbedtls): introduce crypto lib heap info struct feat(handoff): add Mbed-TLS heap info entry tag refactor(arm): refactor secure TL initialization fix(handoff): fix message formatting of hex values feat(handoff): add func to check and init a tl fix(arm): resolve dangling comments around macros
show more ...
|
| ada4e59d | 28-May-2024 |
Harrison Mutai <harrison.mutai@arm.com> |
feat(arm): migrate heap info to fw handoff
Mbed-TLS requires platforms to allocate it a heap for it's own internal usage. This heap is typically between shared by BL1 and BL2 to conserve memory.The
feat(arm): migrate heap info to fw handoff
Mbed-TLS requires platforms to allocate it a heap for it's own internal usage. This heap is typically between shared by BL1 and BL2 to conserve memory.The base address and size of the heap are conveyed from BL1 to BL2 through the config TB_FW_CONFIG.
This slightly awkward approach necessitates declaring a placeholder node in the DTS. At runtime, this node is populated with the actual values of the heap information. Instead, since this is dynamic information, and simple to represent through C structures, transmit it to later stages using the firmware handoff framework.
With this migration, remove references to TB_FW_CONFIG when firmware handoff is enabled, as it is no longer needed. The setup code now relies solely on TL structures to configure the TB firmware
Change-Id: Iff00dc742924a055b8bd304f15eec03ce3c6d1ef Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| d5705719 | 23-Sep-2024 |
Harrison Mutai <harrison.mutai@arm.com> |
refactor(arm): refactor secure TL initialization
The initialization logic for the secure transfer list is currently scattered and duplicated across platform setup code. This not only leads to ineffi
refactor(arm): refactor secure TL initialization
The initialization logic for the secure transfer list is currently scattered and duplicated across platform setup code. This not only leads to inefficiency but also complicates access to transfer lists from other parts of the code without invoking setup functions. For instance, arm_bl2_setup_next_ep_info acts as a thin wrapper in arm_bl2_setup.c to provide access to the secure transfer list.
To streamline the interface, all setup code has been consolidated into a central location.
Change-Id: I99d2a567ff39df88baa57e7e08607fccb8af189c Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| 62ed5aa0 | 13-Dec-2024 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge "fix(romlib): romlib build without MbedTLS" into integration |
| a57e18e4 | 11-Nov-2024 |
Arvind Ram Prakash <arvind.ramprakash@arm.com> |
feat(fpmr): disable FPMR trap
This patch enables support of FEAT_FPMR by enabling access to FPMR register. It achieves it by setting the EnFPM bit of SCR_EL3. This feature is currently enabled for N
feat(fpmr): disable FPMR trap
This patch enables support of FEAT_FPMR by enabling access to FPMR register. It achieves it by setting the EnFPM bit of SCR_EL3. This feature is currently enabled for NS world only.
Reference: https://developer.arm.com/documentation/109697/2024_09/ Feature-descriptions/The-Armv9-5-architecture-extension?lang=en
Change-Id: I580c409b9b22f8ead0737502280fb9093a3d5dd2 Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
show more ...
|
| 87407713 | 13-May-2024 |
Levi Yun <yeoreum.yun@arm.com> |
feat(fvp): build hob library
To produce PHIT HOB list in FVP, add build path for hob library.
Signed-off-by: Levi Yun <yeoreum.yun@arm.com> Change-Id: I8f4905433bd1cc6f4c9247197b9bd69041f50fd7 |
| e4a070e3 | 03-Dec-2024 |
Manish V Badarkhe <Manish.Badarkhe@arm.com> |
fix(romlib): romlib build without MbedTLS
The ROMLIB build currently has a strong dependency on MbedTLS. This patch has been introduced to remove this dependency, making it more flexible.
Change-Id
fix(romlib): romlib build without MbedTLS
The ROMLIB build currently has a strong dependency on MbedTLS. This patch has been introduced to remove this dependency, making it more flexible.
Change-Id: If8c4cc7cf557687f40b235a4b8f931cfb70943fd Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
show more ...
|
| 940ecd07 | 29-Nov-2024 |
Igor Podgainõi <igor.podgainoi@arm.com> |
feat(cpus): add support for Alto CPU
Add basic CPU library code to support the Alto CPU.
Change-Id: I45958be99c4a350a32a9e511d3705fb568b97236 Signed-off-by: Igor Podgainõi <igor.podgainoi@arm.com> |
| aa99881d | 15-Nov-2024 |
AlexeiFedorov <Alexei.Fedorov@arm.com> |
fix(rme): add console name to checksum calculation
The name field of console_info structure was missed in checksum calculation. This is corrected by adding a new helper checksum_calc() which compute
fix(rme): add console name to checksum calculation
The name field of console_info structure was missed in checksum calculation. This is corrected by adding a new helper checksum_calc() which computes the checksum in a field agnostic manner.
Change-Id: I5c39ee43f1fa20872c37846e3feeabd0525a47ae Signed-off-by: AlexeiFedorov <Alexei.Fedorov@arm.com>
show more ...
|
| 19d52a83 | 09-Aug-2024 |
Andre Przywara <andre.przywara@arm.com> |
feat(cpufeat): add ENABLE_FEAT_LS64_ACCDATA
Armv8.6 introduced the FEAT_LS64 extension, which provides a 64 *byte* store instruction. A related instruction is ST64BV0, which will replace the lowest
feat(cpufeat): add ENABLE_FEAT_LS64_ACCDATA
Armv8.6 introduced the FEAT_LS64 extension, which provides a 64 *byte* store instruction. A related instruction is ST64BV0, which will replace the lowest 32 bits of the data with a value taken from the ACCDATA_EL1 system register (so that EL0 cannot alter them). Using that ST64BV0 instruction and accessing the ACCDATA_EL1 system register is guarded by two SCR_EL3 bits, which we should set to avoid a trap into EL3, when lower ELs use one of those.
Add the required bits and pieces to make this feature usable: - Add the ENABLE_FEAT_LS64_ACCDATA build option (defaulting to 0). - Add the CPUID and SCR_EL3 bit definitions associated with FEAT_LS64. - Add a feature check to check for the existing four variants of the LS64 feature and detect future extensions. - Add code to save and restore the ACCDATA_EL1 register on secure/non-secure context switches. - Enable the feature with runtime detection for FVP and Arm FPGA.
Please note that the *basic* FEAT_LS64 feature does not feature any trap bits, it's only the addition of the ACCDATA_EL1 system register that adds these traps and the SCR_EL3 bits.
Change-Id: Ie3e2ca2d9c4fbbd45c0cc6089accbb825579138a Signed-off-by: Andre Przywara <andre.przywara@arm.com>
show more ...
|
| e4b77745 | 31-Oct-2024 |
Olivier Deprez <olivier.deprez@arm.com> |
Merge "refactor(fvp): add support for cluster power-on" into integration |
| 30655136 | 06-Sep-2024 |
Govindraj Raja <govindraj.raja@arm.com> |
feat(d128): add support for FEAT_D128
This patch disables trapping to EL3 when the FEAT_D128 specific registers are accessed by setting the SCR_EL3.D128En bit.
If FEAT_D128 is implemented, then FEA
feat(d128): add support for FEAT_D128
This patch disables trapping to EL3 when the FEAT_D128 specific registers are accessed by setting the SCR_EL3.D128En bit.
If FEAT_D128 is implemented, then FEAT_SYSREG128 is implemented. With FEAT_SYSREG128 certain system registers are treated as 128-bit, so we should be context saving and restoring 128-bits instead of 64-bit when FEAT_D128 is enabled.
FEAT_SYSREG128 adds support for MRRS and MSRR instruction which helps us to read write to 128-bit system register. Refer to Arm Architecture Manual for further details.
Change the FVP platform to default to handling this as a dynamic option so the right decision can be made by the code at runtime.
Change-Id: I1a53db5eac29e56c8fbdcd4961ede3abfcb2411a Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com> Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
show more ...
|
| 190ae702 | 24-Oct-2024 |
Olivier Deprez <olivier.deprez@arm.com> |
Merge "feat(cpus): add support for cortex-a720ae" into integration |
| b9c3a8c0 | 15-Oct-2024 |
Govindraj Raja <govindraj.raja@arm.com> |
refactor(fvp): add support for cluster power-on
All new FVP's have incorporated the following PYSR bits
bit 31 is cluster ON status bit 30 is core ON status bit 29 is thread ON status
So add suppo
refactor(fvp): add support for cluster power-on
All new FVP's have incorporated the following PYSR bits
bit 31 is cluster ON status bit 30 is core ON status bit 29 is thread ON status
So add support to check cluster power ON which is supported from affinity-level-2
But older cores with no DSU still uses affinity-level-1 for cluster power-on status.
Ref: https://developer.arm.com/documentation/100964/1125/Base-Platform/Base---components
Change-Id: Id86811b14685d9ca900021301e5e8b7d52189963 Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
show more ...
|
| 67c09735 | 22-Oct-2024 |
Boyan Karatotev <boyan.karatotev@arm.com> |
chore(fvp): use correct dts for dynamiq cores
The default dts doesn't describe the core topology correctly - it uses a two level affinity, while new cores use 3 level with MPIDR_EL1.MT set. As a res
chore(fvp): use correct dts for dynamiq cores
The default dts doesn't describe the core topology correctly - it uses a two level affinity, while new cores use 3 level with MPIDR_EL1.MT set. As a result Linux doesn't discover secondary cores correctly unless this is specifically provided on the command line. CI already accounts for this in tf_config/fvp-dynamiq-aarch64-only.
Change-Id: I137b213cfc48d98b8856c113d4ec0bf6474d3e2d Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|
| 8118078b | 15-Oct-2024 |
Ahmed Azeem <ahmed.azeem@arm.com> |
feat(cpus): add support for cortex-a720ae
Add the basic CPU library code to support Cortex-A720AE. The overall library code is adapted based on Cortex-A720 code.
Signed-off-by: David Hu <david.hu2@
feat(cpus): add support for cortex-a720ae
Add the basic CPU library code to support Cortex-A720AE. The overall library code is adapted based on Cortex-A720 code.
Signed-off-by: David Hu <david.hu2@arm.com> Signed-off-by: Ahmed Azeem <ahmed.azeem@arm.com> Change-Id: I3d64dc5a3098cc823e656a5ad3ea05cd71598dc6
show more ...
|
| 8fa54607 | 02-Oct-2024 |
Govindraj Raja <govindraj.raja@arm.com> |
feat(cpus): add support for arcadia cpu
Add basic CPU library code to support the Arcadia CPU.
Change-Id: Iecb0634dc6dcb34e9b5fda4902335530d237cc43 Signed-off-by: Govindraj Raja <govindraj.raja@arm
feat(cpus): add support for arcadia cpu
Add basic CPU library code to support the Arcadia CPU.
Change-Id: Iecb0634dc6dcb34e9b5fda4902335530d237cc43 Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
show more ...
|
| b6f2e376 | 16-Oct-2024 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "feat(sctlr2): add support for FEAT_SCTLR2" into integration |
| 1cafc96f | 16-Oct-2024 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "feat(the): add support for FEAT_THE" into integration |
| 6a88ec8b | 04-Jun-2024 |
Raghu Krishnamurthy <raghupathyk@nvidia.com> |
feat(rmmd): el3 token sign during attestation
Add required SMCs by RMM to push attestation signing requests to EL3 and get responses. EL3 may then choose to push these requests to a HES as suitable
feat(rmmd): el3 token sign during attestation
Add required SMCs by RMM to push attestation signing requests to EL3 and get responses. EL3 may then choose to push these requests to a HES as suitable for a platform. This patch also supports the new RMM_EL3_FEATURES interface, that RMM can use to query for support for HES based signing. The new interface exposes a feature register with different bits defining different discoverable features. This new interface is available starting the 0.4 version of the RMM-EL3 interface, causing the version to bump up. This patch also adds a platform port for FVP that implements the platform hooks required to enable the new SMCs, but it does not push to a HES and instead copies a zeroed buffer in EL3.
Change-Id: I69c110252835122a9533e71bdcce10b5f2a686b2 Signed-off-by: Raghu Krishnamurthy <raghupathyk@nvidia.com>
show more ...
|
| 4ec4e545 | 06-Sep-2024 |
Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com> |
feat(sctlr2): add support for FEAT_SCTLR2
Arm v8.9 introduces FEAT_SCTLR2, adding SCTLR2_ELx registers. Support this, context switching the registers and disabling traps so lower ELs can access the
feat(sctlr2): add support for FEAT_SCTLR2
Arm v8.9 introduces FEAT_SCTLR2, adding SCTLR2_ELx registers. Support this, context switching the registers and disabling traps so lower ELs can access the new registers.
Change the FVP platform to default to handling this as a dynamic option so the right decision can be made by the code at runtime.
Change-Id: I0c4cba86917b6b065a7e8dd6af7daf64ee18dcda Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com> Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
show more ...
|
| 6d0433f0 | 05-Sep-2024 |
Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com> |
feat(the): add support for FEAT_THE
Arm v8.9 introduces FEAT_THE, adding Translation Hardening Extension Read-Check-Write mask registers, RCWMASK_EL1 and RCWSMASK_EL1. Support this, context switchin
feat(the): add support for FEAT_THE
Arm v8.9 introduces FEAT_THE, adding Translation Hardening Extension Read-Check-Write mask registers, RCWMASK_EL1 and RCWSMASK_EL1. Support this, context switching the registers and disabling traps so lower ELs can access the new registers.
Change the FVP platform to default to handling this as a dynamic option so the right decision can be made by the code at runtime.
Change-Id: I8775787f523639b39faf61d046ef482f73b2a562 Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com> Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
show more ...
|
| 2329e22b | 28-Aug-2024 |
Harrison Mutai <harrison.mutai@arm.com> |
feat(handoff): make tl generation flexible
Make the process of compiling a TL from DT source flexible. Provide a top level recipe to make it easier for developers to build a transfer list. Clean up
feat(handoff): make tl generation flexible
Make the process of compiling a TL from DT source flexible. Provide a top level recipe to make it easier for developers to build a transfer list. Clean up integration of TLC into the build system.
Change-Id: I4466e27a457dfd5bf709dc3a360a2b63bf6030ce Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| 45252f14 | 17-Sep-2024 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge "feat(fvp): scale SP_MIN max size based on SRAM size" into integration |
| 056b4154 | 13-Sep-2024 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge changes from topic "draft-ffm-rats-cca-token-00" into integration
* changes: refactor(docs): update RSE docs to match the example CCA token refactor(qemu): use the example CCA platform tok
Merge changes from topic "draft-ffm-rats-cca-token-00" into integration
* changes: refactor(docs): update RSE docs to match the example CCA token refactor(qemu): use the example CCA platform token from iat-verifier refactor(fvp): use the example CCA platform token from iat-verifier
show more ...
|