| #
9bfad24c |
| 05-Aug-2024 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes from topic "hm/handoff" into integration
* changes: fix(arm): move HW_CONFIG relocation into BL31 feat: add option to input attr as string of flag names feat: add option to input
Merge changes from topic "hm/handoff" into integration
* changes: fix(arm): move HW_CONFIG relocation into BL31 feat: add option to input attr as string of flag names feat: add option to input text instead of tag id number feat: add creating transfer lists from yaml files
show more ...
|
| #
fe94a21a |
| 12-Jul-2024 |
Harrison Mutai <harrison.mutai@arm.com> |
fix(arm): move HW_CONFIG relocation into BL31
Refactor DT relocation logic from BL2 to BL31 for non-secure DRAM. Previously, BL2 was responsible for copying the DT into SRAM and DRAM, resulting in d
fix(arm): move HW_CONFIG relocation into BL31
Refactor DT relocation logic from BL2 to BL31 for non-secure DRAM. Previously, BL2 was responsible for copying the DT into SRAM and DRAM, resulting in duplicate code in BL31 to cater for the `RESET_TO_BL31` case. By moving the re-location logic to BL31, we simplify handling of the non-secure DT and TL.
Change-Id: Id239f9410669afe4b223fa8d8bb093084a0e5e1b Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| #
63edd92b |
| 11-Jul-2024 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "fix(arm): remove critical handoff code from assert" into integration
|
| #
cca1b72b |
| 03-Jul-2024 |
Harrison Mutai <harrison.mutai@arm.com> |
fix(arm): remove critical handoff code from assert
Fix BL31 crashes caused by incorrect placement of firmware handoff code within an assert. The function call has been removed from the assert to ens
fix(arm): remove critical handoff code from assert
Fix BL31 crashes caused by incorrect placement of firmware handoff code within an assert. The function call has been removed from the assert to ensure it’s executed even when assertions are disabled.
Change-Id: I668f5c08af33327e8ff0e22887c3da109bd6be31 Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| #
2a0ca84f |
| 07-May-2024 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes from topic "sm/feat_detect" into integration
* changes: refactor(cpufeat): restore functions in detect_arch_features refactor(cpufeat): add macro to simplify is_feat_xx_present c
Merge changes from topic "sm/feat_detect" into integration
* changes: refactor(cpufeat): restore functions in detect_arch_features refactor(cpufeat): add macro to simplify is_feat_xx_present chore: simplify the macro names in ENABLE_FEAT mechanism
show more ...
|
| #
aaaf2cc3 |
| 13-Mar-2024 |
Sona Mathew <sonarebecca.mathew@arm.com> |
refactor(cpufeat): add macro to simplify is_feat_xx_present
In this patch, we are trying to introduce the wrapper macro CREATE_FEATURE_PRESENT to get the following capability and align it for all th
refactor(cpufeat): add macro to simplify is_feat_xx_present
In this patch, we are trying to introduce the wrapper macro CREATE_FEATURE_PRESENT to get the following capability and align it for all the features:
-> is_feat_xx_present(): Does Hardware implement the feature. -> uniformity in naming the function across multiple features. -> improved readability
The is_feat_xx_present() is implemented to check if the hardware implements the feature and does not take into account the ENABLE_FEAT_XXX flag enabled/disabled in software.
- CREATE_FEATURE_PRESENT(name, idreg, shift, mask, idval) The wrapper macro reduces the function to a single line and creates the is_feat_xx_present function that checks the id register based on the shift and mask values and compares this against a determined idvalue.
Change-Id: I7b91d2c9c6fbe55f94c693aa1b2c50be54fb9ecc Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
show more ...
|
| #
f9d40b5c |
| 26-Apr-2024 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes from topic "hm/handoff" into integration
* changes: feat(handoff): add support for RESET_TO_BL2 feat(arm): support FW handoff b/w BL1 & BL2 feat(handoff): add TL source files to
Merge changes from topic "hm/handoff" into integration
* changes: feat(handoff): add support for RESET_TO_BL2 feat(arm): support FW handoff b/w BL1 & BL2 feat(handoff): add TL source files to BL1 feat(handoff): add TE's for BL1 handoff interface refactor(bl1): clean up bl2 layout calculation feat(arm): support FW handoff b/w BL2 & BL31
show more ...
|
| #
f019c801 |
| 23-Apr-2024 |
Harrison Mutai <harrison.mutai@arm.com> |
feat(handoff): add support for RESET_TO_BL2
When BL2 is enabled as the entrypoint in the reset vector, none of the TL initialisation ordinarily performed in BL1 will have been done. This change ensu
feat(handoff): add support for RESET_TO_BL2
When BL2 is enabled as the entrypoint in the reset vector, none of the TL initialisation ordinarily performed in BL1 will have been done. This change ensures that BL2 has a secure TL to pass information onto BL31 through.
Change-Id: I553b0b7aac9390cd6a2d63471b81ddc72cc40a60 Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| #
9c11ed7e |
| 22-Dec-2023 |
Harrison Mutai <harrison.mutai@arm.com> |
feat(arm): support FW handoff b/w BL1 & BL2
Leverage the framework between BL1 and BL2. Migrate all handoff structures to the TL.
Change-Id: I79ff3a319596b5656184cde10b5204b10a4d03bb Signed-off-by:
feat(arm): support FW handoff b/w BL1 & BL2
Leverage the framework between BL1 and BL2. Migrate all handoff structures to the TL.
Change-Id: I79ff3a319596b5656184cde10b5204b10a4d03bb Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| #
a5566f65 |
| 01-Dec-2023 |
Harrison Mutai <harrison.mutai@arm.com> |
feat(arm): support FW handoff b/w BL2 & BL31
Add support for the firmware handoff framework between BL2 and BL31. Create a transfer list in trusted SRAM, leveraging the larger SRAM sizes in recent m
feat(arm): support FW handoff b/w BL2 & BL31
Add support for the firmware handoff framework between BL2 and BL31. Create a transfer list in trusted SRAM, leveraging the larger SRAM sizes in recent models. Load the HW_CONFIG as a TE along with entry point parameters for BL31 execution.
Change-Id: I7c4c6e8353ca978a13520fb3e15fb2803f0f1d0e Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| #
28c79e10 |
| 30-Jan-2024 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge changes from topic "plat_gpt_setup" into integration
* changes: feat(arm): move GPT setup to common BL source feat(arm): retrieve GPT related data from platform refactor(arm): rename L0/
Merge changes from topic "plat_gpt_setup" into integration
* changes: feat(arm): move GPT setup to common BL source feat(arm): retrieve GPT related data from platform refactor(arm): rename L0/L1 GPT base macros
show more ...
|
| #
341df6af |
| 21-Jan-2024 |
Rohit Mathew <Rohit.Mathew@arm.com> |
feat(arm): move GPT setup to common BL source
As of now, GPT setup is being handled from BL2 for plat/arm platforms. However, for platforms having a separate entity to load firmware images, it is po
feat(arm): move GPT setup to common BL source
As of now, GPT setup is being handled from BL2 for plat/arm platforms. However, for platforms having a separate entity to load firmware images, it is possible for BL31 to setup the GPT. In order to address this concern, move the GPT setup implementation from arm_bl2_setup.c file to arm_common.c. Additionally, rename the API from arm_bl2_gpt_setup to arm_gpt_setup to make it boot stage agnostic.
Signed-off-by: Rohit Mathew <Rohit.Mathew@arm.com> Change-Id: I35d17a179c8746945c69db37fd23d763a7774ddc
show more ...
|
| #
86e4859a |
| 20-Dec-2023 |
Rohit Mathew <Rohit.Mathew@arm.com> |
feat(arm): retrieve GPT related data from platform
For RME-enabled platforms, initializing L0 and L1 tables and enabling GPC checks is necessary. For systems using BL2 to load firmware images, the G
feat(arm): retrieve GPT related data from platform
For RME-enabled platforms, initializing L0 and L1 tables and enabling GPC checks is necessary. For systems using BL2 to load firmware images, the GPT initialization has to be done in BL2 prior to the image load. The common Arm platform code currently implements this in the "arm_bl2_plat_gpt_setup" function, relying on the FVP platform's specifications (PAS definitions, GPCCR_PPS, and GPCCR_PGS).
Different Arm platforms may have distinct PAS definitions, GPCCR_PPS, GPCCR_PGS, L0/L1 base, and size. To accommodate these variations, introduce the "plat_arm_get_gpt_info" API. Platforms must implement this API to provide the necessary data for GPT setup on RME-enabled platforms. It is essential to note that these additions are relevant to platforms under the plat/arm hierarchy that will reuse the "arm_bl2_plat_gpt_setup" function.
As a result of these new additions, migrate data related to the FVP platform to its source and header files.
Signed-off-by: Rohit Mathew <Rohit.Mathew@arm.com> Change-Id: I4f4c8894c1cda0adc1f83e7439eb372e923f6147
show more ...
|
| #
1e7545ac |
| 18-Jan-2024 |
Rohit Mathew <Rohit.Mathew@arm.com> |
refactor(arm): rename L0/L1 GPT base macros
In accordance with common naming conventions, macros specifying the base address of a region typically use the prefix "BASE" combined with the region name
refactor(arm): rename L0/L1 GPT base macros
In accordance with common naming conventions, macros specifying the base address of a region typically use the prefix "BASE" combined with the region name, rather than "ADDR_BASE."
Currently, the macros defining the base addresses for L0 and L1 GPT tables within `arm_def.h` are named "ARM_L0_GPT_ADDR_BASE" and "ARM_L1_GPT_ADDR_BASE" respectively. To adhere to the established naming convention, rename these macros as "ARM_L1_GPT_BASE" and "ARM_L0_GPT_BASE" respectively.
Signed-off-by: Rohit Mathew <Rohit.Mathew@arm.com> Change-Id: Ibd50a58a1f63ba97d2df141f41a21a89ef97d6fb
show more ...
|
| #
31a815db |
| 08-Nov-2023 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes from topic "sb/remove-cryptocell" into integration
* changes: chore(npcm845x): remove CryptoCell-712/713 support chore(auth)!: remove CryptoCell-712/713 support
|
| #
b65dfe40 |
| 26-Oct-2023 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
chore(auth)!: remove CryptoCell-712/713 support
CryptoCell-712 and CryptoCell-713 drivers have been deprecated since TF-A v2.9 and their removal was announced for TF-A v2.10 release. See [1].
As th
chore(auth)!: remove CryptoCell-712/713 support
CryptoCell-712 and CryptoCell-713 drivers have been deprecated since TF-A v2.9 and their removal was announced for TF-A v2.10 release. See [1].
As the release is approaching, this patch deletes these drivers' code as well as all references to them in the documentation and Arm platforms code (Nuvoton platform is taken care in a subsequent patch). Associated build options (ARM_CRYPTOCELL_INTEG and PLAT_CRYPTOCELL_BASE) have also been removed and thus will have no effect if defined.
This is a breaking change for downstream platforms which use these drivers.
[1] https://trustedfirmware-a.readthedocs.io/en/v2.9/about/release-information.html#removal-of-deprecated-drivers Note that TF-A v3.0 release later got renumbered into v2.10.
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com> Change-Id: Idabbc9115f6732ac1a0e52b273d3380677a39813
show more ...
|
| #
fd7e32b8 |
| 31-Oct-2023 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes from topic "hm/post-image" into integration
* changes: refactor(fvp): move image handling into generic procedure refactor(bl2): make post image handling platform-specific
|
| #
ed567207 |
| 18-Oct-2023 |
Harrison Mutai <harrison.mutai@arm.com> |
refactor(bl2): make post image handling platform-specific
In certain instances a platform may need to make modifications to an image after it has been loaded by BL2. The existing common implementati
refactor(bl2): make post image handling platform-specific
In certain instances a platform may need to make modifications to an image after it has been loaded by BL2. The existing common implementation is a thin wrapper for a more generic arm post image handler. To enable platforms to make changes to images when they're loaded, move this into platform code.
Change-Id: I44025391056adb2d8a8eb4ea5984257b02027181 Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| #
a0896467 |
| 27-Oct-2023 |
Sandrine Bailleux (on vacation) <sandrine.bailleux@arm.com> |
Merge changes from topic "gpt_updates" into integration
* changes: refactor(arm): use gpt_partition_init feat(partition): add interface to init gpt refactor(partition): convert warn to verbose
Merge changes from topic "gpt_updates" into integration
* changes: refactor(arm): use gpt_partition_init feat(partition): add interface to init gpt refactor(partition): convert warn to verbose feat(partition): add support to use backup GPT header refactor(partition): get GPT header location from MBR feat(arm): add IO policy to use backup gpt header feat(tbbr): add image id for backup GPT
show more ...
|
| #
08ec77c7 |
| 24-Oct-2023 |
Govindraj Raja <govindraj.raja@arm.com> |
refactor(arm): use gpt_partition_init
Current interface partition_init accepts GPT image id and parses the GPT image but doesn't return any error on failure.
So use gpt_partition_init which implici
refactor(arm): use gpt_partition_init
Current interface partition_init accepts GPT image id and parses the GPT image but doesn't return any error on failure.
So use gpt_partition_init which implicitly initialises with GPT image ID and returns a value.
Change-Id: I63280aa672388f1f8d9dc377ae13002c9f861f03 Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
show more ...
|
| #
e3df3ffa |
| 01-Feb-2023 |
Soby Mathew <soby.mathew@arm.com> |
Merge changes I1b092bc1,Ifc2461b4,I5176caa5 into integration
* changes: docs(rme): update RMM-EL3 Boot Manifest structure description feat(rme): read DRAM information from FVP DTB feat(rme): s
Merge changes I1b092bc1,Ifc2461b4,I5176caa5 into integration
* changes: docs(rme): update RMM-EL3 Boot Manifest structure description feat(rme): read DRAM information from FVP DTB feat(rme): set DRAM information in Boot Manifest platform data
show more ...
|
| #
82685904 |
| 29-Dec-2022 |
AlexeiFedorov <Alexei.Fedorov@arm.com> |
feat(rme): read DRAM information from FVP DTB
This patch builds on the previous patch by implementing support for reading NS DRAM layout of FVP model from HW_CONFIG Device tree.
Macro _RMMD_MANIFES
feat(rme): read DRAM information from FVP DTB
This patch builds on the previous patch by implementing support for reading NS DRAM layout of FVP model from HW_CONFIG Device tree.
Macro _RMMD_MANIFEST_VERSION is renamed to SET_RMMD_MANIFEST_VERSION to suppress MISRA-C "rule MC3R1.D4.5: (advisory) Identifiers in the same name space with overlapping visibility should be typographically unambiguous" warning
Signed-off-by: AlexeiFedorov <Alexei.Fedorov@arm.com> Change-Id: Ifc2461b4441a1efdd4b7c656ab4d15e62479f77b
show more ...
|
| #
a97bfa5f |
| 14-Dec-2022 |
AlexeiFedorov <Alexei.Fedorov@arm.com> |
feat(rme): set DRAM information in Boot Manifest platform data
This patch adds support for setting configuration of DRAM banks for FVP model in RMM-EL3 Boot Manifest structure. Structure 'rmm_manife
feat(rme): set DRAM information in Boot Manifest platform data
This patch adds support for setting configuration of DRAM banks for FVP model in RMM-EL3 Boot Manifest structure. Structure 'rmm_manifest' is extended with 'plat_dram' structure which contains information about platform's DRAM layout: - number of DRAM banks; - pointer to 'dram_bank[]' array; - check sum: two's complement 64-bit value of the sum of data in 'plat_dram' and 'dram_bank[] array. Each 'dram_bank' structure holds information about DRAM bank base address and its size. This values must be aligned to 4KB page size. The patch increases Boot Manifest minor version to 2 and removes 'typedef rmm_manifest_t' as per "3.4.15.1. Avoid anonymous typedefs of structs/enums in headers" of https://trustedfirmware-a.readthedocs.io/en/latest/process/coding-style.html
Signed-off-by: AlexeiFedorov <Alexei.Fedorov@arm.com> Change-Id: I5176caa5780e27d1e0daeb5dea3e40cf6ad5fd12
show more ...
|
| #
b8dbfacc |
| 07-Dec-2022 |
Soby Mathew <soby.mathew@arm.com> |
Merge "feat(rmm): add support for the 2nd DRAM bank" into integration
|
| #
346cfe2b |
| 29-Nov-2022 |
AlexeiFedorov <Alexei.Fedorov@arm.com> |
feat(rmm): add support for the 2nd DRAM bank
This patch adds support for RMM granules allocation in FVP 2nd DRAM 2GB bank at 0x880000000 base address. For ENABLE_RME = 1 case it also removes "mem=1G
feat(rmm): add support for the 2nd DRAM bank
This patch adds support for RMM granules allocation in FVP 2nd DRAM 2GB bank at 0x880000000 base address. For ENABLE_RME = 1 case it also removes "mem=1G" Linux kernel command line option in fvp-base-psci-common.dsti to allow memory layout discovery from the FVP device tree. FVP parameter 'bp.dram_size' - size of main memory in gigabytes documented in docs/components/realm-management-extension.rst is changed from 2 to 4.
Signed-off-by: AlexeiFedorov <Alexei.Fedorov@arm.com> Change-Id: I174da4416ad5a8d41bf0ac89f356dba7c0cd3fe7
show more ...
|