| 0c86a846 | 08-Jan-2024 |
Olivier Deprez <olivier.deprez@arm.com> |
fix(fconf): boot fails using ARM_ARCH_MINOR=8
When building TF-A (with SPMD support) with ARM_ARCH_MAJOR=8/ ARCH_ARCH_MINOR=8 options, this forces the -march=armv8.8-a compiler option. In this condi
fix(fconf): boot fails using ARM_ARCH_MINOR=8
When building TF-A (with SPMD support) with ARM_ARCH_MAJOR=8/ ARCH_ARCH_MINOR=8 options, this forces the -march=armv8.8-a compiler option. In this condition, the compiler optimises statement [1] into a store pair to an unaligned address resulting to a supposedly alignment fault. With -march=armv8.7-a and earlier the compiler resolves with a memcpy. Replacing this line by an explicit memcpy masks out the issue. Prefer using the plain struct uuid in place of the uuid_helper union for further clarity.
[1] https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/tree/ plat/arm/common/fconf/arm_fconf_sp.c?h=v2.10#n77
Signed-off-by: Olivier Deprez <olivier.deprez@arm.com> Change-Id: I509b7bc50c7c4a894885d24dc8279d0fe634e8f2
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 ...
|
| 7516d93d | 29-Jan-2024 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "feat(cpufeat): add feature detection for FEAT_CSV2_3" into integration |
| 0d136806 | 29-Jan-2024 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes from topic "st-bsec3" into integration
* changes: feat(stm32mp2): add BSEC and OTP support feat(st-bsec): add driver for the new IP version BSEC3 |
| 30019d86 | 25-Oct-2023 |
Sona Mathew <sonarebecca.mathew@arm.com> |
feat(cpufeat): add feature detection for FEAT_CSV2_3
This feature provides support to context save the SCXTNUM_ELx register. FEAT_CSV2_3 implies the implementation of FEAT_CSV2_2. FEAT_CSV2_3 is sup
feat(cpufeat): add feature detection for FEAT_CSV2_3
This feature provides support to context save the SCXTNUM_ELx register. FEAT_CSV2_3 implies the implementation of FEAT_CSV2_2. FEAT_CSV2_3 is supported in AArch64 state only and is an optional feature in Arm v8.0 implementations.
This patch adds feature detection for v8.9 feature FEAT_CSV2_3, adds macros for ID_AA64PFR0_EL1.CSV2 bits [59:56] for detecting FEAT_CSV2_3 and macro for ENABLE_FEAT_CSV2_3.
Change-Id: Ida9f31e832b5f11bd89eebd6cc9f10ddad755c14 Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
show more ...
|
| 6d2c502a | 31-Oct-2023 |
Igor Opaniuk <igor.opaniuk@foundries.io> |
feat(imx8m): obtain boot image set for imx8mn/mp
In i.MX8MM/MQ it is possible to have two copies of bootloader in SD/eMMC and switch between them. The switch is triggered either by the BootROM in ca
feat(imx8m): obtain boot image set for imx8mn/mp
In i.MX8MM/MQ it is possible to have two copies of bootloader in SD/eMMC and switch between them. The switch is triggered either by the BootROM in case the bootloader image is faulty OR can be enforced by the user, and there is API introduced in 9ce232fe ("feat(plat/imx8m): add SiP call for secondary boot"), which leverages this SoC feature.
However neither i.MX8MP nor i.MX8MN have a dedicated bit which indicates what boot image set is currently booted. According to AN12853 [1] "i.MX ROMs Log Events", it is possible to determine whether fallback event occurred by parsing the BootROM event log. In case ROM event ID 0x51 is present,fallback event did occur and secondary boot image was booted.
Knowing which boot image was booted might be useful for reliable bootloader A/B updates, detecting fallback event might be used for making decision if boot firmware rollback is required.
This patche introduces implementation, that replicates the same imx_src_handler() behaviour as on i.MX8MM/MQ SoCs.
The code is based on original U-Boot implementation [2].
[1]: https://www.nxp.com/webapp/Download?colCode=AN12853 [2]: https://github.com/u-boot/u-boot/commit/a5ee05cf7180b411ffdf148ca8cb220c029f2e19
Change-Id: I9a4c5229aa0e53fa23b5261459da99cb3ce6bdbe Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
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 ...
|
| 07da4854 | 24-Jan-2024 |
Lauren Wehrmeister <lauren.wehrmeister@arm.com> |
Merge changes from topics "rcar-tools-fix", "toolchain-cleanup" into integration
* changes: build: remove the `NM` variable build: prefer `gcc-ar` over `ar` build: add `--no-warn-rwx-segments`
Merge changes from topics "rcar-tools-fix", "toolchain-cleanup" into integration
* changes: build: remove the `NM` variable build: prefer `gcc-ar` over `ar` build: add `--no-warn-rwx-segments` when linking with GCC build: always use the C compiler to assemble build: always use the C compiler to preprocess fix(rcar): fix implicit rule invocations in tools
show more ...
|
| d6bb94f3 | 24-Jan-2024 |
Robin van der Gracht <robin@protonic.nl> |
feat(stm32mp1): only fuse monotonic counter on closed devices
The fused monotonic counter is checked by the ROM bootloader. The ROM bootloader won't allow booting images build with a lower STM32_TF_
feat(stm32mp1): only fuse monotonic counter on closed devices
The fused monotonic counter is checked by the ROM bootloader. The ROM bootloader won't allow booting images build with a lower STM32_TF_VERSION value.
On non-closed devices a user can easily circumvent this. But it is annoying for a developer when open development hardware gets the counter value fused.
Signed-off-by: Robin van der Gracht <robin@protonic.nl> Change-Id: Ie52561368a3178de9d9a44b9d089664241452651
show more ...
|
| fc26a0fc | 24-Jan-2024 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
Merge "feat(qemu-sbsa): handle memory information" into integration |
| ae6ce196 | 19-Jan-2024 |
Ahmad Fatoum <a.fatoum@pengutronix.de> |
fix(imx8mp): uncondtionally enable only the USB power domain
The i.MX8MP exists in multiple SKUs, some of which lack the NPU or VPU. Yet, we unconditionally enable NPU and VPU power domains in upstr
fix(imx8mp): uncondtionally enable only the USB power domain
The i.MX8MP exists in multiple SKUs, some of which lack the NPU or VPU. Yet, we unconditionally enable NPU and VPU power domains in upstream TF-A, causing it to hang on such SoCs, unless patched.
Enabling all power domains is an idiosyncrasy of the i.MX8MP support, which we don't have on i.MX8MQ, i.MX8MM or i.MX8MN. Therefore let's drop unconditional powering on of all power domains.
As only exception, we will keep enabling the USB power domains. These are enabled in the BootROM if booting over SDPS and boot firmware may expect them to be enabled for non-SDPS recovery too. As USB is available unconditionally on the current i.MX8MP variants, this is deemed acceptable and reduces the chance of breaking existing systems.
Fixes: a775ef25c312 ("plat: imx8mp: Add the basic support for i.MX8MP") Change-Id: Idc6e8f770d240f4d929dffa91f9ccf8c476c6c12 Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
show more ...
|
| d4a770a9 | 23-Jan-2024 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
Merge "fix(intel): update nand driver to match GHRD design" into integration |
| 4b8e5078 | 23-Jan-2024 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
Merge changes Ib481fade,Id4070b46,I4ac997cd into integration
* changes: feat(rcar3): update IPL and Secure Monitor Rev.4.0.0 feat(rcar3): add cache operations to boot process feat(rcar3): chan
Merge changes Ib481fade,Id4070b46,I4ac997cd into integration
* changes: feat(rcar3): update IPL and Secure Monitor Rev.4.0.0 feat(rcar3): add cache operations to boot process feat(rcar3): change MMU configurations
show more ...
|
| 197ac780 | 03-Jan-2024 |
Yann Gautier <yann.gautier@st.com> |
feat(stm32mp2): add BSEC and OTP support
Add compilation and initialization of BSEC peripheral, to access OTP fuses. Add the definition of OTP fuses.
Signed-off-by: Yann Gautier <yann.gautier@st.co
feat(stm32mp2): add BSEC and OTP support
Add compilation and initialization of BSEC peripheral, to access OTP fuses. Add the definition of OTP fuses.
Signed-off-by: Yann Gautier <yann.gautier@st.com> Change-Id: If6403838b1e2c04c59effc8545b381aced5f7cda
show more ...
|
| e6a0994c | 23-Jan-2024 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes from topic "st-bsec-otp" into integration
* changes: feat(stm32mp2-fdts): add board ID OTP in STM32MP257F-EV1 feat(stm32mp2-fdts): add OTP nodes in STM32MP251 SoC DT file fix(stm
Merge changes from topic "st-bsec-otp" into integration
* changes: feat(stm32mp2-fdts): add board ID OTP in STM32MP257F-EV1 feat(stm32mp2-fdts): add OTP nodes in STM32MP251 SoC DT file fix(stm32mp2): add missing include feat(st): do not directly call BSEC functions in common code feat(st): use stm32_get_otp_value_from_idx() in BL31 refactor(st): update test for closed chip refactor(st-bsec): improve BSEC driver refactor(st): use dashes for BSEC node names
show more ...
|
| a773f412 | 15-Nov-2023 |
Girisha Dengi <girisha.dengi@intel.com> |
fix(intel): update nand driver to match GHRD design
Update nand driver to match GHRD design, fix row address calculation method and other misc updates.
Signed-off-by: Girisha Dengi <girisha.dengi@i
fix(intel): update nand driver to match GHRD design
Update nand driver to match GHRD design, fix row address calculation method and other misc updates.
Signed-off-by: Girisha Dengi <girisha.dengi@intel.com> Signed-off-by: Sieu Mun Tang <sieu.mun.tang@intel.com> Change-Id: I1cb3dda43e767ba243fbe89bfa18818db321c5c2
show more ...
|
| 1064bc6c | 22-Jan-2024 |
Joanna Farley <joanna.farley@arm.com> |
Merge changes from topic "idling-during-subsystem-restart" into integration
* changes: fix(xilinx): add console_flush() before shutdown fix(xilinx): fix sending sgi to linux feat(xilinx): add
Merge changes from topic "idling-during-subsystem-restart" into integration
* changes: fix(xilinx): add console_flush() before shutdown fix(xilinx): fix sending sgi to linux feat(xilinx): add new state to identify cpu power down feat(xilinx): request cpu power down from reset feat(xilinx): power down all cores on receiving cpu pwrdwn req feat(xilinx): add handler for power down req sgi irq feat(xilinx): add wrapper to handle cpu power down req fix(versal-net): use arm common GIC handlers fix(xilinx): rename macros to align with ARM
show more ...
|
| b7e85c7c | 22-Jan-2024 |
Joanna Farley <joanna.farley@arm.com> |
Merge "feat(versal): extend platform address space sizes" into integration |
| c0bf07e0 | 22-Jan-2024 |
Joanna Farley <joanna.farley@arm.com> |
Merge "fix(xilinx): deprecate SiP service count query" into integration |
| 8b7dd839 | 12-Jan-2024 |
Xiong Yining <xiongyining1480@phytium.com.cn> |
feat(qemu-sbsa): handle memory information
As a part of removing DeviceTree from EDK2, we move functions to TF-A:
- counting the number of memory nodes - checking NUMA node id - checking the memory
feat(qemu-sbsa): handle memory information
As a part of removing DeviceTree from EDK2, we move functions to TF-A:
- counting the number of memory nodes - checking NUMA node id - checking the memory address
Signed-off-by: Xiong Yining <xiongyining1480@phytium.com.cn> Signed-off-by: Chen Baozi <chenbaozi@phytium.com.cn> Change-Id: Ib7bce3a65c817a5b3bef6c9e0a459c7ce76c7e35
show more ...
|
| 516a98ef | 22-Jul-2023 |
Hieu Nguyen <hieu.nguyen.dn@renesas.com> |
feat(rcar3): update IPL and Secure Monitor Rev.4.0.0
Update the version to match release versioning scheme. No functional change.
Signed-off-by: Hieu Nguyen <hieu.nguyen.dn@renesas.com> Change-Id:
feat(rcar3): update IPL and Secure Monitor Rev.4.0.0
Update the version to match release versioning scheme. No functional change.
Signed-off-by: Hieu Nguyen <hieu.nguyen.dn@renesas.com> Change-Id: Ib481fade925f74dbea1dd2b39c1abfab888379e4
show more ...
|
| 7e06b067 | 12-Jul-2021 |
Toshiyuki Ogasahara <toshiyuki.ogasahara.bo@hitachi.com> |
feat(rcar3): add cache operations to boot process
Add cache operations because BL2 disabled MMU at the end of the boot process, but did not clean/invalidate for the cache used by MMU.
Signed-off-by
feat(rcar3): add cache operations to boot process
Add cache operations because BL2 disabled MMU at the end of the boot process, but did not clean/invalidate for the cache used by MMU.
Signed-off-by: Toshiyuki Ogasahara <toshiyuki.ogasahara.bo@hitachi.com> Signed-off-by: Yoshifumi Hosoya <yoshifumi.hosoya.wj@renesas.com> Change-Id: Id4070b46103ca2b50788b3a99f6961a35df24418
show more ...
|
| 5e8c2d8e | 12-Jul-2021 |
Toshiyuki Ogasahara <toshiyuki.ogasahara.bo@hitachi.com> |
feat(rcar3): change MMU configurations
Always enable MMU and control access protection.
Signed-off-by: Toshiyuki Ogasahara <toshiyuki.ogasahara.bo@hitachi.com> Signed-off-by: Yoshifumi Hosoya <yosh
feat(rcar3): change MMU configurations
Always enable MMU and control access protection.
Signed-off-by: Toshiyuki Ogasahara <toshiyuki.ogasahara.bo@hitachi.com> Signed-off-by: Yoshifumi Hosoya <yoshifumi.hosoya.wj@renesas.com> Change-Id: I4ac997cda2985746b2bf97ab9e4e5ace600f43ca
show more ...
|