| 1d204ee4 | 19-May-2021 |
Yann Gautier <yann.gautier@foss.st.com> |
feat(plat/st): use FIP to load images
BL2 still uses the STM32 header binary format to be loaded from ROM code. BL32 and BL33 and their respective device tree files are now put together in a FIP fil
feat(plat/st): use FIP to load images
BL2 still uses the STM32 header binary format to be loaded from ROM code. BL32 and BL33 and their respective device tree files are now put together in a FIP file. One DTB is created for each BL. To reduce their sizes, 2 new dtsi file are in charge of removing useless nodes for a given BL. This is done because BL2 and BL32 share the same device tree files base.
The previous way of booting is still available, the compilation flag STM32MP_USE_STM32IMAGE has to be set to 1 in the make command. Some files are duplicated and their names modified with _stm32_ to avoid too much switches in the code.
Change-Id: I1ffada0af58486d4cf6044511b51e56b52269817 Signed-off-by: Lionel Debieve <lionel.debieve@st.com> Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
show more ...
|
| 43de546b | 28-Sep-2020 |
Lionel Debieve <lionel.debieve@st.com> |
feat(dt-bindings): add STM32MP1 TZC400 bindings
Add bindings that will be used to define DDR regions and their access rights.
Change-Id: I745a7e580ef2b9e251d53db12c5a0a86dfe34463 Signed-off-by: Lio
feat(dt-bindings): add STM32MP1 TZC400 bindings
Add bindings that will be used to define DDR regions and their access rights.
Change-Id: I745a7e580ef2b9e251d53db12c5a0a86dfe34463 Signed-off-by: Lionel Debieve <lionel.debieve@st.com> Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
show more ...
|
| 21e002fb | 27-Sep-2020 |
Lionel Debieve <lionel.debieve@st.com> |
feat(fdts): add IO policies for STM32MP1
Add the UUID into the io policies node that are retrieved by BL2 using stm32mp_fconf_io.c populate function.
Change-Id: I595d5a41a1e0a27fcc02ea2ab5495d9dbf0
feat(fdts): add IO policies for STM32MP1
Add the UUID into the io policies node that are retrieved by BL2 using stm32mp_fconf_io.c populate function.
Change-Id: I595d5a41a1e0a27fcc02ea2ab5495d9dbf0e6773 Signed-off-by: Lionel Debieve <lionel.debieve@st.com> Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
show more ...
|
| d9e0586b | 02-Jul-2021 |
Yann Gautier <yann.gautier@foss.st.com> |
feat(fdts): add STM32MP1 fw-config DT files
Create all boards fw-config DT files. They all include a generic stm32mp15-fw-config.dtsi.
Change-Id: Ib9ac8a59e93e01365001b0d11fee41f7c507c08e Signed-of
feat(fdts): add STM32MP1 fw-config DT files
Create all boards fw-config DT files. They all include a generic stm32mp15-fw-config.dtsi.
Change-Id: Ib9ac8a59e93e01365001b0d11fee41f7c507c08e Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
show more ...
|
| e5bc3ef3 | 06-Sep-2021 |
Joanna Farley <joanna.farley@arm.com> |
Merge "feat(gic600ae): introduce support for Fault Management Unit" into integration |
| 8a5bd3cf | 01-Sep-2021 |
Olivier Deprez <olivier.deprez@arm.com> |
docs(ff-a): fix specification naming
Rename the FF-A specification to: Arm Firmware Framework for Arm A-profile
Signed-off-by: Olivier Deprez <olivier.deprez@arm.com> Change-Id: I4f9d29409d048e7a49
docs(ff-a): fix specification naming
Rename the FF-A specification to: Arm Firmware Framework for Arm A-profile
Signed-off-by: Olivier Deprez <olivier.deprez@arm.com> Change-Id: I4f9d29409d048e7a49832b95d39d2583c1fb5792
show more ...
|
| 2b9bfbc2 | 06-Sep-2021 |
Olivier Deprez <olivier.deprez@arm.com> |
Merge "feat(fvp): enable external SP images in BL2 config" into integration |
| 84090d2c | 13-Jul-2021 |
Yann Gautier <yann.gautier@foss.st.com> |
refactor(plat/st): updates for OP-TEE
Protect BL32 (SP_min) with MMU if OP-TEE is not used. Validate OP-TEE header with optee_header_is_valid(). Use default values in bl2_mem_params_descs[]. They wi
refactor(plat/st): updates for OP-TEE
Protect BL32 (SP_min) with MMU if OP-TEE is not used. Validate OP-TEE header with optee_header_is_valid(). Use default values in bl2_mem_params_descs[]. They will be overwritten in bl2_plat_handle_post_image_load() if OP-TEE is used.
Change-Id: I8614f3a17caa827561614d0f25f30ee90c4ec3fe Signed-off-by: Etienne Carriere <etienne.carriere@st.com> Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
show more ...
|
| b84a8508 | 15-Apr-2019 |
Etienne Carriere <etienne.carriere@st.com> |
feat(lib/optee): introduce optee_header_is_valid()
This new function optee_header_is_valid() allows platform to know whether OP-TEE OS is loaded from multi-image (using OP-TEE header image as BL32_I
feat(lib/optee): introduce optee_header_is_valid()
This new function optee_header_is_valid() allows platform to know whether OP-TEE OS is loaded from multi-image (using OP-TEE header image as BL32_IMAGE_ID) or from a single OP-TEE binary image. The function tee_validate_header() is reworked to return a boolean, and is now silent.
Change-Id: Idc7dde091f2ada8898f40d02e68c3834ca39d8e8 Signed-off-by: Etienne Carriere <etienne.carriere@st.com> Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
show more ...
|
| f465cc16 | 03-Sep-2021 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge "feat(board/rdn2): add tzc master source ids for soc dma" into integration |
| ef03e78f | 03-Sep-2021 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes from topic "erratas" into integration
* changes: errata: workaround for Neoverse N2 erratum 2138956 errata: workaround for Neoverse N2 erratum 2189731 errata: workaround for Cort
Merge changes from topic "erratas" into integration
* changes: errata: workaround for Neoverse N2 erratum 2138956 errata: workaround for Neoverse N2 erratum 2189731 errata: workaround for Cortex-A710 erratum 2017096 errata: workaround for Cortex-A710 erratum 2055002
show more ...
|
| 1cafb08d | 01-Sep-2021 |
Bipin Ravi <bipin.ravi@arm.com> |
errata: workaround for Neoverse N2 erratum 2138956
Neoverse N2 erratum 2138956 is a Cat B erratum that applies to revision r0p0 and is still open. This erratum can be avoided by inserting a sequence
errata: workaround for Neoverse N2 erratum 2138956
Neoverse N2 erratum 2138956 is a Cat B erratum that applies to revision r0p0 and is still open. This erratum can be avoided by inserting a sequence of 16 DMB ST instructions prior to WFI or WFE.
SDEN can be found here: https://developer.arm.com/documentation/SDEN1982442/latest
Signed-off-by: Bipin Ravi <bipin.ravi@arm.com> Change-Id: I1aac87b3075992f875451e4767b21857f596d0b2
show more ...
|
| 7cfae932 | 30-Aug-2021 |
Bipin Ravi <bipin.ravi@arm.com> |
errata: workaround for Neoverse N2 erratum 2189731
Neoverse N2 erratum 2189731 is a Cat B erratum that applies to revision r0p0 and is still open. The workaround is to set CPUACTLR5_EL1[44] to 1 whi
errata: workaround for Neoverse N2 erratum 2189731
Neoverse N2 erratum 2189731 is a Cat B erratum that applies to revision r0p0 and is still open. The workaround is to set CPUACTLR5_EL1[44] to 1 which will cause the CPP instruction to invalidate the hardware prefetcher state trained from any EL.
SDEN can be found here: https://developer.arm.com/documentation/SDEN1982442/latest
Signed-off-by: Bipin Ravi <bipin.ravi@arm.com> Change-Id: Iddc6a59adf9fa3cab560c46f2133e1f5a8b3ad03
show more ...
|
| afc2ed63 | 31-Mar-2021 |
Bipin Ravi <bipin.ravi@arm.com> |
errata: workaround for Cortex-A710 erratum 2017096
Cortex-A710 erratum 2017096 is a Cat B erratum that applies to revisions r0p0, r1p0 & r2p0 and is still open. The workaround is to set CPUECLTR_EL1
errata: workaround for Cortex-A710 erratum 2017096
Cortex-A710 erratum 2017096 is a Cat B erratum that applies to revisions r0p0, r1p0 & r2p0 and is still open. The workaround is to set CPUECLTR_EL1[8] to 1 which disables store issue prefetching.
SDEN can be found here: https://developer.arm.com/documentation/SDEN1775101/latest
Signed-off-by: Bipin Ravi <bipin.ravi@arm.com> Change-Id: If5f61ec30dbc2fab7f2c68663996057086e374e3
show more ...
|
| 213afde9 | 31-Mar-2021 |
Bipin Ravi <bipin.ravi@arm.com> |
errata: workaround for Cortex-A710 erratum 2055002
Cortex-A710 erratum 2055002 is a Cat B erratum that applies to revisions r1p0 & r2p0 and is still open. The workaround is to set CPUACTLR_EL1[46] t
errata: workaround for Cortex-A710 erratum 2055002
Cortex-A710 erratum 2055002 is a Cat B erratum that applies to revisions r1p0 & r2p0 and is still open. The workaround is to set CPUACTLR_EL1[46] to force L2 tag ECC inline correction mode. This workaround works on revision r1p0 & r2p0.
SDEN can be found here: https://developer.arm.com/documentation/SDEN1775101/latest
Signed-off-by: Bipin Ravi <bipin.ravi@arm.com> Change-Id: I67be1dce53c4651167d8cee33c116e73b9dafe81
show more ...
|
| b7942a91 | 03-Sep-2021 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes from topic "erratas" into integration
* changes: errata: workaround for Neoverse N2 erratum 2025414 errata: workaround for Neoverse N2 erratum 2067956 |
| 13e16fee | 02-Sep-2021 |
Andre Przywara <andre.przywara@arm.com> |
fix(arm_fpga): reserve BL31 memory
Embarrassingly we never told the non-secure world that secure firmware lives in the first few hundred KBs of DRAM, so any non-secure payload could happily overwrit
fix(arm_fpga): reserve BL31 memory
Embarrassingly we never told the non-secure world that secure firmware lives in the first few hundred KBs of DRAM, so any non-secure payload could happily overwrite TF-A, and we couldn't even blame it.
Advertise the BL31 region in the reserved-memory DT node, so non-secure world stays out of it.
This fixes Linux booting on FPGAs with less memory than usual.
Change-Id: I7fbe7d42c0b251c0ccc43d7c50ca902013d152ec Signed-off-by: Andre Przywara <andre.przywara@arm.com>
show more ...
|
| 81de40f2 | 03-Sep-2021 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes I3c20611a,Ib1671011,I5eab3f33,Ib149b3ea into integration
* changes: refactor(plat/nxp): refine api to read SVR register refactor(plat/nxp): each errata use a seperate source file
Merge changes I3c20611a,Ib1671011,I5eab3f33,Ib149b3ea into integration
* changes: refactor(plat/nxp): refine api to read SVR register refactor(plat/nxp): each errata use a seperate source file refactor(plat/nxp): use a unified errata api refactor(plat/soc-lx2160): move errata to common directory
show more ...
|
| d4572303 | 02-Sep-2021 |
Andre Przywara <andre.przywara@arm.com> |
fix(arm_fpga): limit BL31 memory usage
At the moment we specified the BL31 memory limits to 1MB; since we typically have gigabytes of DRAM, we can be quite generous.
However the default parameters
fix(arm_fpga): limit BL31 memory usage
At the moment we specified the BL31 memory limits to 1MB; since we typically have gigabytes of DRAM, we can be quite generous.
However the default parameters expect the devicetree binary at 0x80070000, so we should actually make sure we have no code or data beyond that point.
Limit the ARM FPGA BL31 memory footprint to this available 7*64K region. We stay within the limit at the moment, with more than half of it reserved for stacks, so this could be downsized later should we run into problems.
The PIE addresses stay as they are, since the default addresses do not apply there anywhere, and the build is broken anyway.
Change-Id: I7768af1a93ff67096f4359fc5f5feb66464bafaa Signed-off-by: Andre Przywara <andre.przywara@arm.com>
show more ...
|
| 33993a37 | 26-Mar-2021 |
Balint Dobszay <balint.dobszay@arm.com> |
feat(fvp): enable external SP images in BL2 config
Currently the list of SP UUIDs loaded by BL2 is hardcoded in the DT. This is a problem when building a system with other SPs (e.g. from Trusted Ser
feat(fvp): enable external SP images in BL2 config
Currently the list of SP UUIDs loaded by BL2 is hardcoded in the DT. This is a problem when building a system with other SPs (e.g. from Trusted Services). This commit implements a workaround to enable adding SP UUIDs to the list at build time.
Signed-off-by: Balint Dobszay <balint.dobszay@arm.com> Change-Id: Iff85d3778596d23d777dec458f131bd7a8647031
show more ...
|
| 7c78e4f7 | 25-Mar-2021 |
Pankaj Gupta <pankaj.gupta@nxp.com> |
docs: nxp soc-lx2160a based platforms
Addition of documents for platforms based on NXP SoC LX2160A.
Signed-off-by: Pankaj Gupta <pankaj.gupta@nxp.com> Change-Id: I39ac5a9eb0b668d26301a0a24a1e6bf87f
docs: nxp soc-lx2160a based platforms
Addition of documents for platforms based on NXP SoC LX2160A.
Signed-off-by: Pankaj Gupta <pankaj.gupta@nxp.com> Change-Id: I39ac5a9eb0b668d26301a0a24a1e6bf87f245f02
show more ...
|
| 9dc2534f | 02-Sep-2021 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge "errata: workaround for Cortex-A78 errata 1952683" into integration |
| 4618b2bf | 31-Mar-2021 |
Bipin Ravi <bipin.ravi@arm.com> |
errata: workaround for Neoverse N2 erratum 2025414
Neoverse N2 erratum 2025414 is a Cat B erratum that applies to revision r0p0 and is still open. The workaround is to set CPUECLTR_EL1[8] to 1 which
errata: workaround for Neoverse N2 erratum 2025414
Neoverse N2 erratum 2025414 is a Cat B erratum that applies to revision r0p0 and is still open. The workaround is to set CPUECLTR_EL1[8] to 1 which disables store issue prefetching.
SDEN can be found here: https://developer.arm.com/documentation/SDEN1982442/latest
Signed-off-by: Bipin Ravi <bipin.ravi@arm.com> Change-Id: Ia1c63fb93a1bdb1c3f4cf019a197b2a59233885a
show more ...
|
| 65e04f27 | 30-Mar-2021 |
Bipin Ravi <bipin.ravi@arm.com> |
errata: workaround for Neoverse N2 erratum 2067956
Neoverse N2 erratum 2067956 is a Cat B erratum that applies to revision r0p0 and is still open. The workaround is to set CPUACTLR_EL1[46] to force
errata: workaround for Neoverse N2 erratum 2067956
Neoverse N2 erratum 2067956 is a Cat B erratum that applies to revision r0p0 and is still open. The workaround is to set CPUACTLR_EL1[46] to force L2 tag ECC inline correction mode. This workaround works on revision r0p0.
SDEN can be found here: https://developer.arm.com/documentation/SDEN1982442/latest
Signed-off-by: Bipin Ravi <bipin.ravi@arm.com> Change-Id: Ie92d18a379c66675b5c1c50fd0b8dde130848b21
show more ...
|
| 2c248ade | 04-May-2021 |
Varun Wadekar <vwadekar@nvidia.com> |
feat(gic600ae): introduce support for Fault Management Unit
The FMU is part of the GIC Distributor (GICD) component. It implements the following functionality in GIC-600AE:
* Provides software the
feat(gic600ae): introduce support for Fault Management Unit
The FMU is part of the GIC Distributor (GICD) component. It implements the following functionality in GIC-600AE:
* Provides software the means to enable or disable a Safety Mechanism within a GIC block. * Receives error signaling from all Safety Mechanisms within other GIC blocks. * Maintains error records for each GIC block, for software inspection and provides information on the source of the error. * Retains error records across functional reset. * Enables software error recovery testing by providing error injection capabilities in a Safety Mechanism.
This patch introduces support to enable error detection for all safety mechanisms provided by the FMU. Platforms are expected to invoke the initialization function during cold boot.
The support for the FMU is guarded by the GICV3_SUPPORT_GIC600AE_FMU makefile variable. The default value of this variable is '0'.
Change-Id: I421c3d059624ddefd174cb1140a2d2a2296be0c6 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|