| 92d0eb0c | 29-Jan-2026 |
Yann Gautier <yann.gautier@st.com> |
Merge "feat(rcar): rewrite console_renesas_register() in C" into integration |
| 6acdf7b7 | 29-Jan-2026 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge changes from topics "qemu-sve", "xl/simd-hash" into integration
* changes: feat(qemu): disable fpregs traps for QEMU in BL31 feat(crypto): enable the runtime instrumentation for crypto ext
Merge changes from topics "qemu-sve", "xl/simd-hash" into integration
* changes: feat(qemu): disable fpregs traps for QEMU in BL31 feat(crypto): enable the runtime instrumentation for crypto extension feat(crypto): enable access to SIMD crypto in BL1 and BL2 feat(crypto): enable floating point register traps in EL3 feat(crypto): build flag for SIMD crypto extensions for v8+ platform refactor(build): add a default filter list for lib cflags
show more ...
|
| 55877c63 | 28-Jan-2026 |
Govindraj Raja <govindraj.raja@arm.com> |
Merge changes from topic "xlnx_fix_misra_common_fdt_split" into integration
* changes: fix(libfdt): resolve misra 10.3 violations feat(lib): use C/assembler for HI/LO macros fix(libfdt): addin
Merge changes from topic "xlnx_fix_misra_common_fdt_split" into integration
* changes: fix(libfdt): resolve misra 10.3 violations feat(lib): use C/assembler for HI/LO macros fix(libfdt): adding missing curly braces fix(libfdt): fix misra 14.4 and 15.6 violations fix(libfdt): typecast operands to match data type
show more ...
|
| 993c004c | 22-Oct-2025 |
Xialin Liu <xialin.liu@arm.com> |
feat(crypto): enable the runtime instrumentation for crypto extension
Add runtime instrumentation for the authentication process in BL1 and BL2, to measure the speedup of the authentication after en
feat(crypto): enable the runtime instrumentation for crypto extension
Add runtime instrumentation for the authentication process in BL1 and BL2, to measure the speedup of the authentication after enabling the crypto extension.
Change-Id: Ieea927e7e8bd0d109525f28b06510acf0ab62e5c Signed-off-by: Xialin Liu <xialin.liu@arm.com>
show more ...
|
| 96f227b7 | 21-Jan-2026 |
Xialin Liu <xialin.liu@arm.com> |
feat(crypto): enable floating point register traps in EL3
To prevent the leakage of EL3 information to lower ELs, access to floating point registers needed to be traped to EL3 unless necessary (e.g
feat(crypto): enable floating point register traps in EL3
To prevent the leakage of EL3 information to lower ELs, access to floating point registers needed to be traped to EL3 unless necessary (e.g the SIMD crypto extension, SIMD context save/restore).
Change-Id: I28a734c43d3e965de87ccc08e99f86669729871f Signed-off-by: Xialin Liu <xialin.liu@arm.com>
show more ...
|
| e8cc9706 | 15-Oct-2025 |
Xialin Liu <xialin.liu@arm.com> |
feat(crypto): build flag for SIMD crypto extensions for v8+ platform
Add new build flags ENABLE_FEAT_CRYPTO to enable SIMD crypto extension for hash256 in bootflow authentication process and ENABLE_
feat(crypto): build flag for SIMD crypto extensions for v8+ platform
Add new build flags ENABLE_FEAT_CRYPTO to enable SIMD crypto extension for hash256 in bootflow authentication process and ENABLE_FEAT_CRYPTO_SHA3 to enable SIMD crypto extension for sha384 and sha512 in bootflow authentication process for Arm platform greater than v8.0.
Change-Id: I6e52feb318136910d34cafd89319bf94f90e16fc Signed-off-by: Xialin Liu <xialin.liu@arm.com>
show more ...
|
| 23e15fad | 27-Jan-2026 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes I8d332dbe,I9d30b6f9,I2fd7eece,Ibcd65f39,I86cc5e97 into integration
* changes: feat(bl2): support RESET_TO_BL2 and ENABLE_RME fix(build): fix BL2_CPPFLAGS when ENABLE_RME is set f
Merge changes I8d332dbe,I9d30b6f9,I2fd7eece,Ibcd65f39,I86cc5e97 into integration
* changes: feat(bl2): support RESET_TO_BL2 and ENABLE_RME fix(build): fix BL2_CPPFLAGS when ENABLE_RME is set fix(fvp): increase resident text size of BL2 fix(arm): support FCONF when TRANSFER_LIST and RESET_BL2 is set fix(arm): update next image's ep info with the FW config address
show more ...
|
| 8c824273 | 20-Oct-2025 |
Arunachalam Ganapathy <arunachalam.ganapathy@arm.com> |
feat(bl2): support RESET_TO_BL2 and ENABLE_RME
When RSE is used as the root of trust along with CPU that supports RME there is a need to enable both RESET_TO_BL2 and ENABLE_RME.
In current bl2_main
feat(bl2): support RESET_TO_BL2 and ENABLE_RME
When RSE is used as the root of trust along with CPU that supports RME there is a need to enable both RESET_TO_BL2 and ENABLE_RME.
In current bl2_main there are two different code paths for RESET_BL2, one handles BL2 running in EL1 and other for BL2 running in EL3.
When RME is enabled, BL2 always runs at EL3 but the current flow calls bl2_early_platform_setup2, bl2_plat_arch_setup instead of bl2_el3_early_platform_setup, bl2_el3_plat_arch_setup. Adding RME, TRANSFER_LIST, ROMLIB support in bl2_el3_* helpers makes arm_bl2_el3_setup.c almost identical to arm_bl2_setup.c.
This patch removes bl2_el3_plat helpers and related files. Now different combinations of RESET_TO_BL2, ENABLE_RME are handled in common bl2_setup routines in arm_bl2_setup.c. This helps to have common place to support new features and build flags for BL2 irrespective of which EL the BL2 runs.
BREAKING-CHANGE: This patch also changes all existing platform files and functions that use format bl2_el3_* to bl2_plat helpers. If any platform or out-of-tree platforms that need to support running BL2 in EL1 or EL3 must now handle it in bl2_early_platform_setup2 and bl2_plat_arch_setup.
Signed-off-by: Arunachalam Ganapathy <arunachalam.ganapathy@arm.com> Change-Id: I8d332dbe2de1db3b69319496c8d04626cdcf4140
show more ...
|
| 12d80bbb | 27-Jan-2026 |
Yann Gautier <yann.gautier@st.com> |
Merge "feat(marvell): add odyssey platform header files" into integration |
| 28014279 | 26-Jan-2026 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge changes I6deddab4,I432b05b2,I4af7371d,I2318ea4b into integration
* changes: feat(rdv3): use SFCP PSA call instead of RSE comms feat(tc): use SFCP PSA call instead of RSE comms feat(tc):
Merge changes I6deddab4,I432b05b2,I4af7371d,I2318ea4b into integration
* changes: feat(rdv3): use SFCP PSA call instead of RSE comms feat(tc): use SFCP PSA call instead of RSE comms feat(tc): add tc_sfcp.c feat(sfcp): add SFCP stack and PSA call
show more ...
|
| ded1b9c7 | 21-Jan-2026 |
Marek Vasut <marek.vasut+renesas@mailbox.org> |
feat(rcar): rewrite console_renesas_register() in C
Replace assembler implementation of console_renesas_register() with matching C implementation. Since it is now easily possible to pass flags into
feat(rcar): rewrite console_renesas_register() in C
Replace assembler implementation of console_renesas_register() with matching C implementation. Since it is now easily possible to pass flags into console_renesas_register() and then onward to the console initialization, adjust the signature of console_renesas_register() and include the flags in it. Adjust both rcar_console_boot_init() and rcar_console_runtime_init() to call console_renesas_register() with its new combined set of parameters and drop console_set_scope() invocation which is no longer needed, because the flags are passed directly into console_renesas_register().
Drop console_renesas_flush() which is always a noop. Drop return value from console_renesas_init() which is always 1.
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Change-Id: I1c7d1a81b6922138b6e2e80f2635fcc8558685c7
show more ...
|
| 416b8613 | 05-Mar-2025 |
John Powell <john.powell@arm.com> |
fix(security): add workaround for CVE-2025-0647
This workaround fixes an issue with the CPP RCTX instruction by issuing an instruction patch sequence to trap uses of the CPP RCTX instruction from EL
fix(security): add workaround for CVE-2025-0647
This workaround fixes an issue with the CPP RCTX instruction by issuing an instruction patch sequence to trap uses of the CPP RCTX instruction from EL0, EL1, and EL2 to EL3 and perform a workaround procedure using the implementation defined trap handler to ensure the correct behavior of the system. In addition, it includes an EL3 API to be used if EL3 firmware needs to use the CPP RCTX instruction. This saves the overhead of exception handling, and EL3 does not generically support trapping EL3->EL3, and adding support for that is not trivial due to the implications for context management.
The issue affects the following CPUs:
C1-Premium C1-Ultra Cortex-A710 Cortex-X2 Cortex-X3 Cortex-X4 Cortex-X925 Neoverse N2 Neoverse V2 Neoverse V3 Neoverse V3AE (handled same as V3 CPU in TF-A CPU-Lib)
Arm Security Bulletin Document: https://developer.arm.com/documentation/111546
Change-Id: I5e7589afbeb69ebb79c01bec80e29f572aff3d89 Signed-off-by: John Powell <john.powell@arm.com> Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
show more ...
|
| e4731b1c | 23-Jan-2026 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes from topic "upstream_ddr_training" into integration
* changes: feat(s32g274ardb): add DDR post training setup feat(s32g274ardb): add training for 1D and 2D feat(s32g274ardb): add
Merge changes from topic "upstream_ddr_training" into integration
* changes: feat(s32g274ardb): add DDR post training setup feat(s32g274ardb): add training for 1D and 2D feat(s32g274ardb): add DDR training stubs
show more ...
|
| a806cc5a | 22-Jan-2026 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge changes I2485d583,I1374c482,I07e29dbb,I949e6486 into integration
* changes: feat(qemu): enable ENABLE_FEAT_RAS and ENABLE_FEAT_SB feat(cpufeat): update FEAT_SB's FEAT_STATE_CHECKED status
Merge changes I2485d583,I1374c482,I07e29dbb,I949e6486 into integration
* changes: feat(qemu): enable ENABLE_FEAT_RAS and ENABLE_FEAT_SB feat(cpufeat): update FEAT_SB's FEAT_STATE_CHECKED status feat(cpufeat): advertise support for FEAT_RASv2 feat(cpufeat): enable FEAT_RAS for FEAT_STATE_CHECKED again
show more ...
|
| 7b256791 | 22-Jan-2026 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge "fix(arm): build fails on RESET_TO_BL2=1 and ARM_FW_CONFIG_LOAD_ENABLE=1" into integration |
| a60aeae7 | 09-Oct-2025 |
Khristine Andreea Barbulescu <khristineandreea.barbulescu@nxp.com> |
feat(s32g274ardb): add DDR post training setup
Add the final configuration step after PHY training, including CSR storage, memory initialization and DDRC adjustments.
The post training setup is now
feat(s32g274ardb): add DDR post training setup
Add the final configuration step after PHY training, including CSR storage, memory initialization and DDRC adjustments.
The post training setup is now integrated into the DDR initialization flow.
Change-Id: I457d1f58479b282607c9d42773d6f922f563b2fb Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com> Signed-off-by: Andrei Cherechesu <andrei.cherechesu@nxp.com> Signed-off-by: Khristine Andreea Barbulescu <khristineandreea.barbulescu@nxp.com>
show more ...
|
| 14215dac | 22-Jan-2026 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "refactor(psci): make CMOs target the whole psci_cpu_data_t" into integration |
| 479e2648 | 27-Nov-2025 |
Jackson Cooper-Driver <jackson.cooper-driver@arm.com> |
feat(sfcp): add SFCP stack and PSA call
Add SFCP stack from trusted-firmware-m commit 8eb72a3bc5cc. SFCP is the Simple Firmware Communication Protocol, which is a more substantial software stack des
feat(sfcp): add SFCP stack and PSA call
Add SFCP stack from trusted-firmware-m commit 8eb72a3bc5cc. SFCP is the Simple Firmware Communication Protocol, which is a more substantial software stack designed to replace the existing RSE comms (and indeed wider communication between firmware components in the system). It has support for both polling mode and interrupt driver communication handling, and is able to support any underlying transport (this patch adds MHU only). It requires a static routing layout between system components.
This patch adds the link layer (with support for the MHU transport), top-level SFCP API implementation and the implementation of PSA call making use of the SFCP API.
Note that encryption support is not implemented and only the stub encryption implementation is added in this patch. This can be implemented when TF-A needs it.
The sfcp_link_hal.c implementation is the same as that in trusted-firmware-m, and it makes use of the MHU V2 and V3 drivers directly. This is possible as the underlying MHU driver APIs is the same in trusted-firmware-m and trusted-firmware-a.
Change-Id: I2318ea4bdb4e533b8a4a5000040aec0635a83857 Signed-off-by: Jackson Cooper-Driver <jackson.cooper-driver@arm.com>
show more ...
|
| 2d054940 | 19-Jan-2026 |
Suraj Kakade <suraj.hanumantkakade@amd.com> |
feat(lib): use C/assembler for HI/LO macros
Add conditional HI() and LO() macros so assembler/linker builds keep the original shift‑and‑mask form, while C builds use a typed uint32_t version for LO(
feat(lib): use C/assembler for HI/LO macros
Add conditional HI() and LO() macros so assembler/linker builds keep the original shift‑and‑mask form, while C builds use a typed uint32_t version for LO() to ensure correct typing and MISRA‑compliant masking.
Change-Id: I0c707c387bf8ec5742ea5600017343882682e100 Signed-off-by: Suraj Kakade <suraj.hanumantkakade@amd.com>
show more ...
|
| 47f0a591 | 09-Oct-2025 |
Khristine Andreea Barbulescu <khristineandreea.barbulescu@nxp.com> |
feat(s32g274ardb): add training for 1D and 2D
Extend the logic for executing the training stage to include 1D and 2D PHY training.
Change-Id: If3445125d868e67cfcd81eaeeb20b2283731a4ea Signed-off-by
feat(s32g274ardb): add training for 1D and 2D
Extend the logic for executing the training stage to include 1D and 2D PHY training.
Change-Id: If3445125d868e67cfcd81eaeeb20b2283731a4ea Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com> Signed-off-by: Andrei Cherechesu <andrei.cherechesu@nxp.com> Signed-off-by: Khristine Andreea Barbulescu <khristineandreea.barbulescu@nxp.com>
show more ...
|
| 54239065 | 09-Oct-2025 |
Khristine Andreea Barbulescu <khristineandreea.barbulescu@nxp.com> |
feat(s32g274ardb): add DDR training stubs
Introduce logic to load DDR firmware configuration data from memory into internal structures.
Introduce the components required to initialize the DDR contr
feat(s32g274ardb): add DDR training stubs
Introduce logic to load DDR firmware configuration data from memory into internal structures.
Introduce the components required to initialize the DDR controller and prepare for PHY training. It includes controller setup and the training orchestration function.
Change-Id: Icd8649516d9bad1a6d72616a774b8b60c6bae067 Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com> Signed-off-by: Andrei Cherechesu <andrei.cherechesu@nxp.com> Signed-off-by: Khristine Andreea Barbulescu <khristineandreea.barbulescu@nxp.com>
show more ...
|
| 867fe8ec | 20-Jan-2026 |
Boyan Karatotev <boyan.karatotev@arm.com> |
refactor(cpus): export midr_match to a more global location
It's a useful little helper that is horribly underused. Put it in common code so that we can use it in future.
Change-Id: I635c581644b07a
refactor(cpus): export midr_match to a more global location
It's a useful little helper that is horribly underused. Put it in common code so that we can use it in future.
Change-Id: I635c581644b07a6ca5ff68bb4fa475c4052da691 Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|
| 4b8b8d74 | 12-Dec-2024 |
Jaiprakash Singh <jaiprakashs@marvell.com> |
feat(marvell): add odyssey platform header files
Add register files for marvell odyssey platform.
Change-Id: I09000f453303aca2a389c061d02c4151a5386f6b Signed-off-by: Jaiprakash Singh <jaiprakashs@m
feat(marvell): add odyssey platform header files
Add register files for marvell odyssey platform.
Change-Id: I09000f453303aca2a389c061d02c4151a5386f6b Signed-off-by: Jaiprakash Singh <jaiprakashs@marvell.com>
show more ...
|
| 9dda4082 | 13-Jan-2026 |
Boyan Karatotev <boyan.karatotev@arm.com> |
feat(cpufeat): update FEAT_SB's FEAT_STATE_CHECKED status
FEAT_SB is mostly FEAT_STATE_CHECKED enabled but that is not apparent from docs and code's check is sub-optimal. Update docs to make this ap
feat(cpufeat): update FEAT_SB's FEAT_STATE_CHECKED status
FEAT_SB is mostly FEAT_STATE_CHECKED enabled but that is not apparent from docs and code's check is sub-optimal. Update docs to make this apparent and update code to have a proper FEAT_STATE_CHECKED fallback.
Also enable it for FVP so it's tested a bit more.
Change-Id: I1374c4828b235ad16904f6c4ac9e39b9c2596a37 Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|
| 553c24c3 | 07-Jul-2025 |
Boyan Karatotev <boyan.karatotev@arm.com> |
feat(cpufeat): enable FEAT_RAS for FEAT_STATE_CHECKED again
FEAT_RAS was originally converted to FEAT_STATE_CHECKED in 6503ff291. However, the ability to use it was removed with 970a4a8d8 by simply
feat(cpufeat): enable FEAT_RAS for FEAT_STATE_CHECKED again
FEAT_RAS was originally converted to FEAT_STATE_CHECKED in 6503ff291. However, the ability to use it was removed with 970a4a8d8 by simply saying it impacts execution at EL3. That's true, but FEAT_STATE_CHECKED can still be allowed by being a bit clever about it.
First, the remainder of common code can be converted to use the is_feat_ras_supported() helper instead of the `#if FEATURE` pattern. There are no corner cases to consider there. The feature is either present (and appropriate action must be taken) or the feature is not (so we can skip RAS code).
A conscious choice is taken to check the RAS code in synchronize_errors despite it being in a hot path. Any fixed platform that seeks to be performant should be setting features to 0 or 1. Then, the SCTLR_EL3.IESB bit is always set if ENABLE_FEAT_RAS != 0 since we expect FEAT_IESB to be present if FEAT_RAS is (despite the architecture not guaranteeing it). If FEAT_RAS isn't present then we don't particularly care about the status of FEAT_IESB.
Second, platforms that don't set ENABLE_FEAT_RAS must continue to work. This is true out of the box with the is_feat_xyz_supported() helpers, as they make sure to fully disable code within them.
Third, platforms that do set ENABLE_FEAT_RAS=1 must continue to work. This is also true out of the box and no logical change is undertaken in common code.
Finally, ENABLE_FEAT_RAS is set to 2 on FVP. Having RAS implies that the whole handling machinery will be built-in and registered as appropriate. However, when RAS is built-in but not present in hardware, these registrations can still happen, they will only never be invoked at runtime.
Change-Id: I949e648601dc0951ef9c2b217f34136b6ea4b3dc Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|