]> git.baikalelectronics.ru Git - arm-tf.git/log
arm-tf.git
3 years agofeat(cpus): add a64fx cpu to tf-a
Itaru Kitayama [Mon, 4 Jul 2022 05:36:00 +0000 (14:36 +0900)]
feat(cpus): add a64fx cpu to tf-a

while sbsa maintainers upstream decide whether new cpus types
should be in, add fujitsu a64fx cpu type in advance

Signed-off-by: Itaru Kitayama <itaru.kitayama@fujitsu.com>
Change-Id: I521a62f1233f3fe6e92f040edaff2cc60a1bd874

3 years agoMerge "feat(stm32mp1): save boot auth status and partition info" into integration
Manish Pandey [Tue, 28 Jun 2022 08:53:01 +0000 (10:53 +0200)]
Merge "feat(stm32mp1): save boot auth status and partition info" into integration

3 years agoMerge "fix(measured-boot): clear the entire digest array of Startup Locality event...
Sandrine Bailleux [Tue, 28 Jun 2022 07:33:44 +0000 (09:33 +0200)]
Merge "fix(measured-boot): clear the entire digest array of Startup Locality event" into integration

3 years agoMerge changes from topic "HEAD" into integration
Madhukar Pappireddy [Tue, 28 Jun 2022 01:43:48 +0000 (03:43 +0200)]
Merge changes from topic "HEAD" into integration

* changes:
  feat(synquacer): add FWU Multi Bank Update support
  feat(synquacer): add TBBR support
  feat(synquacer): add BL2 support
  refactor(synquacer): move common source files

3 years agofeat(synquacer): add FWU Multi Bank Update support
Jassi Brar [Mon, 23 May 2022 18:16:01 +0000 (13:16 -0500)]
feat(synquacer): add FWU Multi Bank Update support

Add FWU Multi Bank Update support. This reads the platform metadata
and update the FIP base address so that BL2 can load correct BL3X
based on the boot index.

Cc: Sumit Garg <sumit.garg@linaro.org>
Cc: Masahisa Kojima <masahisa.kojima@linaro.org>
Cc: Manish V Badarkhe <manish.badarkhe@arm.com>
Cc: Leonardo Sandoval <leonardo.sandoval@linaro.org>
Change-Id: I5d96972bc4b3b9a12a8157117e53a05da5ce89f6
Signed-off-by: Masami Hiramatsu <masami.hiramatsu@linaro.org>
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
3 years agofeat(synquacer): add TBBR support
Jassi Brar [Thu, 3 Mar 2022 21:24:31 +0000 (15:24 -0600)]
feat(synquacer): add TBBR support

enable Trusted-Boot for Synquacer platform.

Cc: Sumit Garg <sumit.garg@linaro.org>
Cc: Masahisa Kojima <masahisa.kojima@linaro.org>
Cc: Manish V Badarkhe <manish.badarkhe@arm.com>
Cc: Leonardo Sandoval <leonardo.sandoval@linaro.org>
Change-Id: I2608b4d573d95d55da1fc5544333e0dbf3f763f2
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
3 years agofeat(synquacer): add BL2 support
Jassi Brar [Thu, 3 Mar 2022 21:24:31 +0000 (15:24 -0600)]
feat(synquacer): add BL2 support

Add BL2 support by default. Move the legacy mode behind the
RESET_TO_BL31 define.

Cc: Sumit Garg <sumit.garg@linaro.org>
Cc: Masahisa Kojima <masahisa.kojima@linaro.org>
Cc: Manish V Badarkhe <manish.badarkhe@arm.com>
Cc: Leonardo Sandoval <leonardo.sandoval@linaro.org>
Change-Id: Ic490745a7e8f6114172733428ebd6bd6adfcc1ec
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
3 years agorefactor(synquacer): move common source files
Jassi Brar [Thu, 3 Mar 2022 21:24:31 +0000 (15:24 -0600)]
refactor(synquacer): move common source files

Prepare for introduction of BL2 support by moving
reusable files from BL31_SOURCES into PLAT_BL_COMMON_SOURCES

Cc: Sumit Garg <sumit.garg@linaro.org>
Cc: Masahisa Kojima <masahisa.kojima@linaro.org>
Cc: Manish V Badarkhe <manish.badarkhe@arm.com>
Cc: Leonardo Sandoval <leonardo.sandoval@linaro.org>
Change-Id: I21137cdd40d027cfa77f1dec3598ee85d4873581
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
3 years agoMerge "feat(auth): enable MBEDTLS_CHECK_RETURN_WARNING" into integration
Madhukar Pappireddy [Mon, 27 Jun 2022 16:01:12 +0000 (18:01 +0200)]
Merge "feat(auth): enable MBEDTLS_CHECK_RETURN_WARNING" into integration

3 years agoMerge changes from topic "st_optee_paged" into integration
Manish Pandey [Mon, 27 Jun 2022 16:00:50 +0000 (18:00 +0200)]
Merge changes from topic "st_optee_paged" into integration

* changes:
  feat(stm32mp1): optionally use paged OP-TEE
  feat(optee): check paged_image_info

3 years agofeat(stm32mp1): save boot auth status and partition info
Igor Opaniuk [Thu, 23 Jun 2022 18:19:26 +0000 (21:19 +0300)]
feat(stm32mp1): save boot auth status and partition info

Introduce a functionality for saving/restoring boot auth status
and partition used for booting (FSBL partition on which the boot
was successful).

Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Change-Id: I4d7f153b70dfc49dad8c1c3fa71111a350caf1ee

3 years agoMerge changes from topic "mb_hash" into integration
Lauren Wehrmeister [Mon, 27 Jun 2022 15:32:59 +0000 (17:32 +0200)]
Merge changes from topic "mb_hash" into integration

* changes:
  refactor(imx): update config of mbedtls support
  refactor(qemu): update configuring mbedtls support
  refactor(measured-boot): mb algorithm selection

3 years agoMerge "fix(nxp-ddr): fix firmware buffer re-mapping issue" into integration
Madhukar Pappireddy [Mon, 27 Jun 2022 13:46:58 +0000 (15:46 +0200)]
Merge "fix(nxp-ddr): fix firmware buffer re-mapping issue" into integration

3 years agofeat(auth): enable MBEDTLS_CHECK_RETURN_WARNING
Sandrine Bailleux [Wed, 15 Jun 2022 13:31:52 +0000 (15:31 +0200)]
feat(auth): enable MBEDTLS_CHECK_RETURN_WARNING

Define the MBEDTLS_CHECK_RETURN_WARNING macro in mbedTLS configuration
file to get compile-time warnings for mbedTLS functions we call and do
not check the return value of. Right now, this does not flag anything
but it could help catching bugs in the future.

This was a new feature introduced in mbed TLS 2.28.0 release.

Change-Id: If26f3c83b6ccc8bc60e75c3e582ab20817d047aa
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
3 years agoMerge "fix(measured-boot): fix verbosity level of RSS digests traces" into integration
Sandrine Bailleux [Mon, 27 Jun 2022 07:37:39 +0000 (09:37 +0200)]
Merge "fix(measured-boot): fix verbosity level of RSS digests traces" into integration

3 years agoMerge "fix(zynqmp): move bl31 with DEBUG=1 back to OCM" into integration
Manish Pandey [Fri, 24 Jun 2022 11:43:41 +0000 (13:43 +0200)]
Merge "fix(zynqmp): move bl31 with DEBUG=1 back to OCM" into integration

3 years agoMerge changes from topic "xlnx_versal_misra_fix" into integration
Manish Pandey [Fri, 24 Jun 2022 11:40:01 +0000 (13:40 +0200)]
Merge changes from topic "xlnx_versal_misra_fix" into integration

* changes:
  fix(versal): resolve misra 15.6 warnings
  fix(zynqmp): resolve misra 8.13 warnings
  fix(versal): resolve misra 8.13 warnings
  fix(versal): resolve the misra 4.6 warnings

3 years agoMerge changes from topic "lw/cca_cot" into integration
Manish Pandey [Fri, 24 Jun 2022 10:44:06 +0000 (12:44 +0200)]
Merge changes from topic "lw/cca_cot" into integration

* changes:
  feat(arm): retrieve the right ROTPK for cca
  feat(arm): add support for cca CoT
  feat(arm): provide some swd rotpk files
  build(tbbr): drive cert_create changes for cca CoT
  refactor(arm): add cca CoT certificates to fconf
  feat(fiptool): add cca, core_swd, plat cert in FIP
  feat(cert_create): define the cca chain of trust
  feat(cca): introduce new "cca" chain of trust
  build(changelog): add new scope for CCA
  refactor(fvp): increase bl2 size when bl31 in DRAM

3 years agoMerge changes from topic "ns/cpu_info" into integration
Madhukar Pappireddy [Wed, 22 Jun 2022 15:45:45 +0000 (17:45 +0200)]
Merge changes from topic "ns/cpu_info" into integration

* changes:
  feat(plat/arm/sgi): increase memory reserved for bl31 image
  feat(plat/arm/sgi): read isolated cpu mpid list from sds

3 years agoMerge "feat(board/rdn2): add a new 'isolated-cpu-list' property" into integration
Madhukar Pappireddy [Wed, 22 Jun 2022 15:45:40 +0000 (17:45 +0200)]
Merge "feat(board/rdn2): add a new 'isolated-cpu-list' property" into integration

3 years agofeat(stm32mp1): optionally use paged OP-TEE
Yann Gautier [Mon, 20 Jun 2022 09:43:17 +0000 (11:43 +0200)]
feat(stm32mp1): optionally use paged OP-TEE

STM32MP13 can encrypt the DDR. OP-TEE is then fully in DDR, and there
is no need for paged image on STM32MP13. The management of the paged
OP-TEE is made conditional, and will be kept only for STM32MP15.

Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
Change-Id: I85ac7aaf6a172c4ee529736113ed40fe66835fd7

3 years agofeat(optee): check paged_image_info
Yann Gautier [Mon, 20 Jun 2022 09:24:22 +0000 (11:24 +0200)]
feat(optee): check paged_image_info

For OP-TEE without pager, the paged image may not be present in OP-TEE
header. We could then pass NULL for paged_image_info to the function
parse_optee_header(). It avoids creating a useless struct for that
non existing image. But we should then avoid assigning header_ep args
that depend on paged_image_info.

Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
Change-Id: I4fdb45a91ac1ba6f912d6130813f5215c7e28c8b

3 years agoMerge changes from topic "st_clk_fixes" into integration
Madhukar Pappireddy [Tue, 21 Jun 2022 15:19:58 +0000 (17:19 +0200)]
Merge changes from topic "st_clk_fixes" into integration

* changes:
  fix(st-clock): correct MISRA C2012 15.6
  fix(st-clock): correctly check ready bit

3 years agofix(st-clock): correct MISRA C2012 15.6
Yann Gautier [Tue, 21 Jun 2022 12:34:13 +0000 (14:34 +0200)]
fix(st-clock): correct MISRA C2012 15.6

Add braces to correct MISRA C2012 15.6 warning:
The body of an iteration-statement or a selection-statement shall be a
compound-statement.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: If26f3732d31df11bf389a16298ec9e9d8a4a2279

3 years agofix(st-clock): correctly check ready bit
Yann Gautier [Tue, 21 Jun 2022 13:12:27 +0000 (15:12 +0200)]
fix(st-clock): correctly check ready bit

The function clk_oscillator_wait_ready() was wrongly checking the set
bit and not the ready bit. Correct that by using osc_data->gate_rdy_id
when calling _clk_stm32_gate_wait_ready().

Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
Change-Id: Ida58f14d7f0f326b580ae24b98d6b9f592d2d711

3 years agofeat(plat/arm/sgi): increase memory reserved for bl31 image
Nishant Sharma [Thu, 31 Mar 2022 16:16:21 +0000 (17:16 +0100)]
feat(plat/arm/sgi): increase memory reserved for bl31 image

Increase the size of bl31 image by 52K to accomodate increased size of
xlat table.

Signed-off-by: Nishant Sharma <nishant.sharma@arm.com>
Change-Id: Ic3a8d8be1104adf48d22aa829e2197f710b6b666

3 years agofeat(plat/arm/sgi): read isolated cpu mpid list from sds
Nishant Sharma [Tue, 30 Nov 2021 09:31:48 +0000 (09:31 +0000)]
feat(plat/arm/sgi): read isolated cpu mpid list from sds

Add support to read the list of isolated CPUs from SDS and publish this
list via the non-trusted firmware configuration file for the next stages
of boot software to use.

Isolated CPUs are those that are not to be used on the platform for
various reasons. The isolated CPU list is an array of MPID values of the
CPUs that have to be isolated.

Signed-off-by: Nishant Sharma <nishant.sharma@arm.com>
Change-Id: I4313cf025f4c9e9feffebca2d35b259f5bafce69

3 years agoMerge changes from topic "mb/gic600-errata" into integration
Manish Pandey [Tue, 21 Jun 2022 12:11:47 +0000 (14:11 +0200)]
Merge changes from topic "mb/gic600-errata" into integration

* changes:
  refactor(arm): update BL2 base address
  refactor(nxp): use DPG0 mask from Arm GICv3 header
  fix(gic600): implement workaround to forward highest priority interrupt

3 years agofeat(board/rdn2): add a new 'isolated-cpu-list' property
Nishant Sharma [Tue, 30 Nov 2021 09:38:46 +0000 (09:38 +0000)]
feat(board/rdn2): add a new 'isolated-cpu-list' property

Add a new property named 'isolated-cpu-list' to list the CPUs that are
to be isolated and not used by the platform. The data represented by
this property is formatted as below.

  strutct isolated_cpu_mpid_list {
          uint64_t count;
          uint64_t mpid_list[MAX Number of PE];
  }

Also, the property is pre-initialized to 0 to reserve space for the
property in the dtb. The data for this property is read from SDS and
updated during boot. The number of entries in this list is equal to the
maximum number of PEs present on the platform.

Signed-off-by: Nishant Sharma <nishant.sharma@arm.com>
Change-Id: I4119f899a273ccbf8259e0d711d3a25501c7ec64

3 years agoMerge changes from topic "uart_segregation_v2" into integration
Manish Pandey [Tue, 21 Jun 2022 10:42:08 +0000 (12:42 +0200)]
Merge changes from topic "uart_segregation_v2" into integration

* changes:
  feat(sgi): add page table translation entry for secure uart
  feat(sgi): route TF-A logs via secure uart
  feat(sgi): deviate from arm css common uart related definitions

3 years agofix(nxp-ddr): fix firmware buffer re-mapping issue
Jiafei Pan [Fri, 8 Apr 2022 03:10:40 +0000 (11:10 +0800)]
fix(nxp-ddr): fix firmware buffer re-mapping issue

Firmware buffer has already been mapped when loading 1D firmware,
so the same buffer address will be re-mapped when loading 2D
firmware. Move the buffer mapping to be out of load_fw().

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Change-Id: Idb29d504bc482a1e7ca58bc51bec09ffe6068324

3 years agofeat(sgi): add page table translation entry for secure uart
Rohit Mathew [Mon, 13 Dec 2021 15:33:04 +0000 (15:33 +0000)]
feat(sgi): add page table translation entry for secure uart

Add page table translation entry for secure uart so that logs from
secure partition can be routed via the same.

Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
Change-Id: I3416d114bcee13824a7d0861ee54fb799e154897

3 years agofeat(sgi): route TF-A logs via secure uart
Rohit Mathew [Mon, 13 Dec 2021 15:40:25 +0000 (15:40 +0000)]
feat(sgi): route TF-A logs via secure uart

Route the boot, runtime and crash stage logs via secure UART port
instead of the existing use of non-secure UART. This aligns with the
security state the PE is in when logs are put out. In addition to this,
this allows consolidation of the UART related macros across all the
variants of the Neoverse reference design platforms.

Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
Change-Id: I417f5d16457b602c94da4c74b4d88bba03da7462

3 years agofeat(sgi): deviate from arm css common uart related definitions
Rohit Mathew [Mon, 13 Dec 2021 13:50:15 +0000 (13:50 +0000)]
feat(sgi): deviate from arm css common uart related definitions

The Neoverse reference design platforms will migrate to use different
set of secure and non-secure UART ports. This implies that the board
specific macros defined in the common Arm platform code will no longer
be usable for Neoverse reference design platforms.

In preparation for migrating to a different set of UART ports, add a
Neoverse reference design platform specific copy of the board
definitions. The value of these definitions will be changed in
subsequent patches.

Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
Change-Id: I1ab17a3f02c8180b63be24e9266f7129beee819f

3 years agofix(measured-boot): clear the entire digest array of Startup Locality event
Manish V Badarkhe [Thu, 9 Jun 2022 21:39:32 +0000 (22:39 +0100)]
fix(measured-boot): clear the entire digest array of Startup Locality event

According to TCG PC Client Platform Firmware Profile Specification
(Section 10.2.2, TCG_PCR_EVENT2 Structure, and 10.4.5 EV_NO_ACTION Event
Types), all EV_NO_ACTION events shall set TCG_PCR_EVENT2.digests to all
0x00's for each allocated Hash algorithm.

Right now, this is not enforced. Only part of the buffer is zeroed due
to the wrong macro being used for the size of the buffer in the clearing
operation (TPM_ALG_ID instead of TCG_DIGEST_SIZE). This could confuse
a TPM event log parser.

Also, add an assertion to ensure that the Event Log size is large enough
before writing the Event Log header.

Change-Id: I6d4bc3fb28fd10c227e33c8c7bb4a40b08c3fd5e
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
3 years agoMerge "docs(security): update security advisory for CVE-2022-23960" into integration
Manish Pandey [Fri, 17 Jun 2022 09:10:35 +0000 (11:10 +0200)]
Merge "docs(security): update security advisory for CVE-2022-23960" into integration

3 years agodocs(security): update security advisory for CVE-2022-23960
Bipin Ravi [Thu, 16 Jun 2022 21:32:22 +0000 (16:32 -0500)]
docs(security): update security advisory for CVE-2022-23960

Update advisory document following Spectre-BHB mitigation support for
additional CPUs.

Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
Change-Id: I4492397f18882f514beff4da06afe973acecf1f0

3 years agoMerge "fix(errata): workaround for Neoverse-V1 erratum 2372203" into integration
Madhukar Pappireddy [Thu, 16 Jun 2022 21:30:22 +0000 (23:30 +0200)]
Merge "fix(errata): workaround for Neoverse-V1 erratum 2372203" into integration

3 years agoMerge "fix(errata): workaround for Cortex-A77 erratum 2356587" into integration
Madhukar Pappireddy [Thu, 16 Jun 2022 20:06:40 +0000 (22:06 +0200)]
Merge "fix(errata): workaround for Cortex-A77 erratum 2356587" into integration

3 years agorefactor(imx): update config of mbedtls support
laurenw-arm [Thu, 16 Jun 2022 18:40:48 +0000 (13:40 -0500)]
refactor(imx): update config of mbedtls support

Pull in MbedTLS support for sha512 when greater than sha256 is required
based on refactoring for hash algorithm selection for Measured Boot.

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: I489392133435436a16edced1d810bc5204ba608f

3 years agorefactor(qemu): update configuring mbedtls support
laurenw-arm [Thu, 16 Jun 2022 18:36:52 +0000 (13:36 -0500)]
refactor(qemu): update configuring mbedtls support

Pull in MbedTLS support for sha512 when greater than sha256 is required
based on refactoring for hash algorithm selection for Measured Boot.

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: Ib0ca5ecdee7906b41a0e1060339d43ce7a018d31

3 years agorefactor(measured-boot): mb algorithm selection
laurenw-arm [Tue, 31 May 2022 21:39:09 +0000 (16:39 -0500)]
refactor(measured-boot): mb algorithm selection

With RSS now introduced, we have 2 Measured Boot backends. Both backends
can be used in the same firmware build with potentially different hash
algorithms, so now there can be more than one hash algorithm in a build.
Therefore the logic for selecting the measured boot hash algorithm needs
to be updated and the coordination of algorithm selection added. This is
done by:

- Adding MBOOT_EL_HASH_ALG for Event Log to define the hash algorithm
to replace TPM_HASH_ALG, removing reference to TPM.

- Adding MBOOT_RSS_HASH_ALG for RSS to define the hash algorithm to
replace TPM_HASH_ALG.

- Coordinating MBOOT_EL_HASH_ALG and MBOOT_RSS_HASH_ALG to define the
Measured Boot configuration macros through defining
TF_MBEDTLS_MBOOT_USE_SHA512 to pull in SHA-512 support if either
backend requires a stronger algorithm than SHA-256.

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: I4ddf06ebdc3835beb4d1b6c7bab5a257ffc5c71a

3 years agofix(errata): workaround for Cortex-A77 erratum 2356587
Bipin Ravi [Wed, 8 Jun 2022 20:27:00 +0000 (15:27 -0500)]
fix(errata): workaround for Cortex-A77 erratum 2356587

Cortex-A77 erratum 2356587 is a cat B erratum that applies to revisions
r0p0 - r1p1 and is still open. The workaround is to set bit[0] of
CPUACTLR2_EL1 to force PLDW/PFRM ST to behave like PLD/PRFM LD and not
cause invalidations to other PE caches.

SDEN can be found here:
https://developer.arm.com/documentation/SDEN1152370/latest

Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
Change-Id: I243cfd587bca06ffd2a7be5bce28f8d2c5e68230

3 years agofix(errata): workaround for Neoverse-V1 erratum 2372203
Bipin Ravi [Tue, 14 Jun 2022 22:09:23 +0000 (17:09 -0500)]
fix(errata): workaround for Neoverse-V1 erratum 2372203

Neoverse-V1 erratum 2372203 is a cat B erratum that applies to revisions
r0p0 - r1p1 and is still open. The workaround is to set bit[40] of
CPUACTLR2_EL1 to disable folding of demand requests into older
prefetches with L2 miss requests outstanding.

SDEN can be found here:
https://developer.arm.com/documentation/SDEN1401781/latest

Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
Change-Id: Ice8c2e5a0152972a35219c8245a2e07e646d0557

3 years agofix(measured-boot): fix verbosity level of RSS digests traces
Sandrine Bailleux [Wed, 15 Jun 2022 12:21:17 +0000 (14:21 +0200)]
fix(measured-boot): fix verbosity level of RSS digests traces

Most traces displayed by log_measurement() use the INFO verbosity
level. Only the digests are unconditionally printed, regardless of
the verbosity level. As a result, when the verbosity level is set
lower than INFO (typically in release mode), only the digests are
printed, which look weird and out of context.

Change-Id: I0220977c35dcb636f1510d8a7a0a9e3d92548bdc
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
3 years agorefactor(arm): update BL2 base address
Manish V Badarkhe [Mon, 13 Jun 2022 17:23:01 +0000 (18:23 +0100)]
refactor(arm): update BL2 base address

BL2 base address updated to provide enough space for BL31 in
Trusted SRAM when building with BL2_AT_EL3 and ENABLE_PIE options.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: Ieaba00d841648add855feb99b7923a4b0cccfb08

3 years agorefactor(nxp): use DPG0 mask from Arm GICv3 header
Manish V Badarkhe [Mon, 6 Jun 2022 11:08:35 +0000 (12:08 +0100)]
refactor(nxp): use DPG0 mask from Arm GICv3 header

Removed GICR_CTLR_DPG0_MASK definition from platform GIC header file
as Arm GICv3 header file added its definition.

Change-Id: Ieec43aeef96b9b6c8a7f955a8d145be6e4b183c5
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
3 years agofix(gic600): implement workaround to forward highest priority interrupt
Manish V Badarkhe [Mon, 9 May 2022 20:55:19 +0000 (21:55 +0100)]
fix(gic600): implement workaround to forward highest priority interrupt

If the interrupt being targeted is released from the CPU before the
CLEAR command is sent to the CPU then a subsequent SET command may not
be delivered in a finite time. To workaround this, issue an unblocking
event by toggling GICR_CTLR.DPG* bits after clearing the cpu group
enable (EnableGrp* bits of GIC CPU interface register)
This fix is implemented as per the errata 2384374-part 2 workaround
mentioned here:
https://developer.arm.com/documentation/sden892601/latest/

Change-Id: I13926ceeb7740fa4c05cc5b43170e7ce49598f70
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
3 years agoMerge "build(changelog): add stm32mp13 and stm32mp15 scopes" into integration
Madhukar Pappireddy [Wed, 15 Jun 2022 15:15:47 +0000 (17:15 +0200)]
Merge "build(changelog): add stm32mp13 and stm32mp15 scopes" into integration

3 years agofix(zynqmp): move bl31 with DEBUG=1 back to OCM
Michal Simek [Wed, 15 Jun 2022 12:19:56 +0000 (14:19 +0200)]
fix(zynqmp): move bl31 with DEBUG=1 back to OCM

By default placing bl31 to addrexx 0x1000 is not good. Because this
location is used by U-Boot SPL. That's why move TF-A back to OCM where it
should be placed. BL31_BASE address exactly matches which requested address
for U-BOOT SPL boot flow.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Change-Id: I608c1b88baffec538c6ae528f057820e34971c4c

3 years agofeat(arm): retrieve the right ROTPK for cca
laurenw-arm [Thu, 21 Apr 2022 21:53:37 +0000 (16:53 -0500)]
feat(arm): retrieve the right ROTPK for cca

The cca chain of trust involves 3 root-of-trust public keys:
- The CCA components ROTPK.
- The platform owner ROTPK (PROTPK).
- The secure world ROTPK (SWD_ROTPK).

Use the cookie argument as a key ID for plat_get_rotpk_info() to return
the appropriate one.

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: Ieaae5b0bc4384dd12d0b616596596b031179044a

3 years agofeat(arm): add support for cca CoT
laurenw-arm [Thu, 21 Apr 2022 21:50:49 +0000 (16:50 -0500)]
feat(arm): add support for cca CoT

- Use the development PROTPK and SWD_ROTPK if using cca CoT.

- Define a cca CoT build flag for the platform code to provide
different implementations where needed.

- When ENABLE_RME=1, CCA CoT is selected by default on Arm
platforms if no specific CoT is specified by the user.

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: I70ae6382334a58d3c726b89c7961663eb8571a64

3 years agofeat(arm): provide some swd rotpk files
laurenw-arm [Thu, 21 Apr 2022 21:31:07 +0000 (16:31 -0500)]
feat(arm): provide some swd rotpk files

When using the new cca chain of trust, a new root of trust key is needed
to authenticate the images belonging to the secure world. Provide a
development one to deploy this on Arm platforms.

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: I9ea7bc1c15c0c94c1021d879a839cef40ba397e3

3 years agobuild(tbbr): drive cert_create changes for cca CoT
laurenw-arm [Thu, 21 Apr 2022 21:25:52 +0000 (16:25 -0500)]
build(tbbr): drive cert_create changes for cca CoT

The build system needs to drive the cert_create tool in a slightly
different manner when using the cca chain of trust.

- It needs to pass it the plat, core_swd, and swd ROT key files.

- It must now generate the cca, core_swd, and plat key certificates,
and exclude the non-relevant certificates.

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: I5759bfaf06913f86b47c7d04c897773bba16a807

3 years agorefactor(arm): add cca CoT certificates to fconf
laurenw-arm [Thu, 21 Apr 2022 22:03:30 +0000 (17:03 -0500)]
refactor(arm): add cca CoT certificates to fconf

Adding support in fconf for the cca CoT certificates for cca, core_swd,
and plat key.

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: I8019cbcb7ccd4de6da624aebf3611b429fb53f96

3 years agofeat(fiptool): add cca, core_swd, plat cert in FIP
laurenw-arm [Thu, 21 Apr 2022 21:36:26 +0000 (16:36 -0500)]
feat(fiptool): add cca, core_swd, plat cert in FIP

Added support for cca CoT in the fiptool by adding the cca,
core_swd, and plat key certificates.

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: I1ba559e188ad8c33cb0e643d7a2fc6fb96736ab9

3 years agofeat(cert_create): define the cca chain of trust
laurenw-arm [Thu, 21 Apr 2022 21:21:53 +0000 (16:21 -0500)]
feat(cert_create): define the cca chain of trust

Selection of the cca chain of trust is done through the COT build
option:

> make COT=cca

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: I123c0a841f67434633a3123cc1fa3e2318585482

3 years agofeat(cca): introduce new "cca" chain of trust
laurenw-arm [Thu, 21 Apr 2022 20:49:00 +0000 (15:49 -0500)]
feat(cca): introduce new "cca" chain of trust

This chain of trust is targeted at Arm CCA solutions and defines 3
independent signing domains:

1) CCA signing domain. The Arm CCA Security Model (Arm DEN-0096.A.a) [1]
refers to the CCA signing domain as the provider of CCA components
running on the CCA platform. The CCA signing domain might be independent
from other signing domains providing other firmware blobs.

The CCA platform is a collective term used to identify all hardware and
firmware components involved in delivering the CCA security guarantee.
Hence, all hardware and firmware components on a CCA enabled system that
a Realm is required to trust.

In the context of TF-A, this corresponds to BL1, BL2, BL31, RMM and
associated configuration files.

The CCA signing domain is rooted in the Silicon ROTPK, just as in the
TBBR CoT.

2) Non-CCA Secure World signing domain. This includes SPMC (and
associated configuration file) as the expected BL32 image as well as
SiP-owned secure partitions. It is rooted in a new SiP-owned key called
Secure World ROTPK, or SWD_ROTPK for short.

3) Platform owner signing domain. This includes BL33 (and associated
configuration file) and the platform owner's secure partitions. It is
rooted in the Platform ROTPK, or PROTPK.

[1] https://developer.arm.com/documentation/DEN0096/A_a

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: I6ffef3f53d710e6a2072fb4374401249122a2805

3 years agobuild(changelog): add new scope for CCA
laurenw-arm [Wed, 1 Jun 2022 18:45:39 +0000 (13:45 -0500)]
build(changelog): add new scope for CCA

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: Iccba57a292e6668e6a6d93f1cb0e1633592a4009

3 years agorefactor(fvp): increase bl2 size when bl31 in DRAM
laurenw-arm [Wed, 8 Jun 2022 21:50:42 +0000 (16:50 -0500)]
refactor(fvp): increase bl2 size when bl31 in DRAM

Increase the space for BL2 by 0xC000 to accommodate the increase in size
of BL2 when ARM_BL31_IN_DRAM is set.

Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
Change-Id: Ifc99da51f2de3c152bbed1c8269dcc8b9100797a

3 years agoMerge "fix(errata): workaround for Neoverse-V1 erratum 2294912" into integration
Madhukar Pappireddy [Mon, 13 Jun 2022 20:55:09 +0000 (22:55 +0200)]
Merge "fix(errata): workaround for Neoverse-V1 erratum 2294912" into integration

3 years agofix(errata): workaround for Neoverse-V1 erratum 2294912
Bipin Ravi [Wed, 8 Jun 2022 21:28:46 +0000 (16:28 -0500)]
fix(errata): workaround for Neoverse-V1 erratum 2294912

Neoverse-V1 erratum 2294912 is a cat B erratum that applies to revisions
r0p0 - r1p1 and is still open. The workaround is to set bit[0] of
CPUACTLR2_EL1 to force PLDW/PFRM ST to behave like PLD/PRFM LD and not
cause invalidations to other PE caches.

SDEN can be found here:
https://developer.arm.com/documentation/SDEN1401781/latest

Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
Change-Id: Ia7afb4c42fe66b36fdf38a7d4281a0d168f68354

3 years agoMerge "feat(zynqmp): add support for xck24 silicon" into integration
Madhukar Pappireddy [Mon, 13 Jun 2022 18:12:31 +0000 (20:12 +0200)]
Merge "feat(zynqmp): add support for xck24 silicon" into integration

3 years agoMerge "refactor(context mgmt): refactor EL2 context save and restore functions" into...
Manish Pandey [Mon, 13 Jun 2022 12:18:57 +0000 (14:18 +0200)]
Merge "refactor(context mgmt): refactor EL2 context save and restore functions" into integration

3 years agoMerge changes from topic "jc/detect_feat" into integration
Manish Pandey [Fri, 10 Jun 2022 09:57:12 +0000 (11:57 +0200)]
Merge changes from topic "jc/detect_feat" into integration

* changes:
  feat(trbe): add trbe under feature detection mechanism
  feat(brbe): add brbe under feature detection mechanism

3 years agoMerge "fix(mmc): remove broken, unsecure, unused eMMC RPMB handling" into integration
Madhukar Pappireddy [Thu, 9 Jun 2022 14:23:04 +0000 (16:23 +0200)]
Merge "fix(mmc): remove broken, unsecure, unused eMMC RPMB handling" into integration

3 years agorefactor(context mgmt): refactor EL2 context save and restore functions
Zelalem Aweke [Mon, 4 Apr 2022 22:42:48 +0000 (17:42 -0500)]
refactor(context mgmt): refactor EL2 context save and restore functions

This patch splits the el2_sysregs_context_save/restore functions
into multiple functions based on features. This will allow us to
selectively save and restore EL2 context registers based on
features enabled for a particular configuration.

For now feature build flags are used to decide which registers
to save and restore. The long term plan is to dynamically check
for features that are enabled and then save/restore registers
accordingly. Splitting el2_sysregs_context_save/restore functions
into smaller assembly functions makes that task easier. For more
information please take a look at:
https://trustedfirmware-a.readthedocs.io/en/latest/design_documents/context_mgmt_rework.html

Signed-off-by: Zelalem Aweke <zelalem.aweke@arm.com>
Change-Id: I1819a9de8b70fa35c8f45568908025f790c4808c

3 years agoMerge "fix(rme/fid): refactor RME fid macros" into integration
Soby Mathew [Wed, 8 Jun 2022 11:37:33 +0000 (13:37 +0200)]
Merge "fix(rme/fid): refactor RME fid macros" into integration

3 years agofix(mmc): remove broken, unsecure, unused eMMC RPMB handling
Ahmad Fatoum [Wed, 8 Jun 2022 06:42:24 +0000 (08:42 +0200)]
fix(mmc): remove broken, unsecure, unused eMMC RPMB handling

Replay-protected memory block access is enabled by writing 0x3
to PARTITION_ACCESS (bit[2:0]). Instead the driver is using the
first boot partition, which does not provide any playback protection.
Additionally, it unconditionally activates the first boot partition,
potentially breaking boot for SoCs that consult boot partitions,
require boot ack or downgrading to an old bootloader if the first
partition happens to be the inactive one.

Also, neither enabling or disabling the RPMB observes the
PARTITION_SWITCH_TIME. As there are no in-tree users for these
functions, drop them for now until a properly functional implementation
is added. That one will likely share most code with the existing boot
partition switch, which doesn't suffer from the described issues.

Change-Id: Ia4a3f738f60a0dbcc33782f868cfbb1e1c5b664a
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
3 years agoMerge changes from topic "stm32mp-emmc-boot-fip" into integration
Madhukar Pappireddy [Tue, 7 Jun 2022 22:14:59 +0000 (00:14 +0200)]
Merge changes from topic "stm32mp-emmc-boot-fip" into integration

* changes:
  feat(stm32mp1): extend STM32MP_EMMC_BOOT support to FIP format
  refactor(mmc): replace magic value with new PART_CFG_BOOT_PARTITION_NO_ACCESS
  refactor(mmc): export user/boot partition switch functions

3 years agoMerge changes from topic "st-pinctrl" into integration
Madhukar Pappireddy [Tue, 7 Jun 2022 14:47:12 +0000 (16:47 +0200)]
Merge changes from topic "st-pinctrl" into integration

* changes:
  feat(stm32mp1-fdts): change pin-controller to pinctrl
  feat(st): search pinctrl node by compatible

3 years agofeat(stm32mp1-fdts): change pin-controller to pinctrl
Yann Gautier [Fri, 11 Mar 2022 13:23:43 +0000 (14:23 +0100)]
feat(stm32mp1-fdts): change pin-controller to pinctrl

Due to commit updating kernel yaml file [1], we need to align TF-A DT
files to what is done in kernel.

[1] c09acbc499e8 ("dt-bindings: pinctrl: use pinctrl.yaml")

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: Id717162e42d3959339d6c01883e87a9d4399f5d9

3 years agofeat(st): search pinctrl node by compatible
Yann Gautier [Fri, 11 Mar 2022 13:18:13 +0000 (14:18 +0100)]
feat(st): search pinctrl node by compatible

Instead of searching pinctrl node with its name, search with its
compatible. This will be necessary before pin-controller name changes
to pinctrl due to kernel yaml changes.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I00590414fa65e193c6a72941a372bcecac673f60

3 years agoMerge "fix(changelog): fix the broken link to commitlintrc.js" into integration
Manish Pandey [Tue, 7 Jun 2022 12:05:42 +0000 (14:05 +0200)]
Merge "fix(changelog): fix the broken link to commitlintrc.js" into integration

3 years agofix(changelog): fix the broken link to commitlintrc.js
Jayanth Dodderi Chidanand [Tue, 7 Jun 2022 11:01:41 +0000 (12:01 +0100)]
fix(changelog): fix the broken link to commitlintrc.js

The link to commitlintrc.js file in the v2.7 changelog
is updated.

Change-Id: I24ee736180d8df72b2d831e110a9a3a80a6d9862
Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
3 years agofeat(zynqmp): add support for xck24 silicon
Venkatesh Yadav Abbarapu [Tue, 17 May 2022 04:09:30 +0000 (09:39 +0530)]
feat(zynqmp): add support for xck24 silicon

Add support for new xck24 device.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@xilinx.com>
Change-Id: I913a34d5a48ea665aaa4348f573fc59566dd5a9b

3 years agofix(rme/fid): refactor RME fid macros
Subhasish Ghosh [Thu, 12 May 2022 11:22:17 +0000 (12:22 +0100)]
fix(rme/fid): refactor RME fid macros

Refactored RME FID macros to simplify usage.

Signed-off-by: Subhasish Ghosh <subhasish.ghosh@arm.com>
Change-Id: I68f51f43d6c100d90069577412c2e495fe7b7e40

3 years agoMerge "feat(imx8mq): add 100us delay after USB OTG SRC bit 0 clear" into integration
Madhukar Pappireddy [Mon, 6 Jun 2022 14:18:20 +0000 (16:18 +0200)]
Merge "feat(imx8mq): add 100us delay after USB OTG SRC bit 0 clear" into integration

3 years agoMerge "fix(imx8mq): correct architected counter frequency" into integration
Madhukar Pappireddy [Mon, 6 Jun 2022 14:17:00 +0000 (16:17 +0200)]
Merge "fix(imx8mq): correct architected counter frequency" into integration

3 years agofeat(trbe): add trbe under feature detection mechanism
Jayanth Dodderi Chidanand [Thu, 19 May 2022 13:08:28 +0000 (14:08 +0100)]
feat(trbe): add trbe under feature detection mechanism

This change adds "FEAT_TRBE" to be part of feature detection mechanism.

Previously feature enablement flags were of boolean type, containing
either 0 or 1. With the introduction of feature detection procedure
we now support three states for feature enablement build flags(0 to 2).

Accordingly, "ENABLE_TRBE_FOR_NS" flag is now modified from boolean
to numeric type to align with the feature detection.

Change-Id: I53d3bc8dc2f6eac63feef22dfd627f3a48480afc
Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
3 years agofeat(brbe): add brbe under feature detection mechanism
Jayanth Dodderi Chidanand [Mon, 9 May 2022 11:33:03 +0000 (12:33 +0100)]
feat(brbe): add brbe under feature detection mechanism

This change adds "FEAT_BRBE" to be part of feature detection mechanism.

Previously feature enablement flags were of boolean type, possessing
either 0 or 1. With the introduction of feature detection procedure
we now support three states for feature enablement build flags(0 to 2).

Accordingly, "ENABLE_BRBE_FOR_NS" flag is now modified from boolean
to numeric type to align with the feature detection.

Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
Change-Id: I1eb52863b4afb10b808e2f0b6584a8a210d0f38c

3 years agoMerge "fix(plat/zynqmp): fix coverity scan warnings" into integration
Madhukar Pappireddy [Fri, 3 Jun 2022 17:44:00 +0000 (19:44 +0200)]
Merge "fix(plat/zynqmp): fix coverity scan warnings" into integration

3 years agoMerge "feat(plat/xilinx/zynqmp): optimization on pinctrl_functions" into integration
Madhukar Pappireddy [Thu, 2 Jun 2022 17:33:24 +0000 (19:33 +0200)]
Merge "feat(plat/xilinx/zynqmp): optimization on pinctrl_functions" into integration

3 years agoMerge changes Idafbe02d,Ib01eb5ce into integration
Madhukar Pappireddy [Thu, 2 Jun 2022 15:39:57 +0000 (17:39 +0200)]
Merge changes Idafbe02d,Ib01eb5ce into integration

* changes:
  fix(scmi-msg): base: fix protocol list querying
  fix(scmi-msg): base: fix protocol list response size

3 years agofeat(stm32mp1): extend STM32MP_EMMC_BOOT support to FIP format
Ahmad Fatoum [Thu, 19 May 2022 05:42:33 +0000 (07:42 +0200)]
feat(stm32mp1): extend STM32MP_EMMC_BOOT support to FIP format

STM32MP_EMMC_BOOT allowed placing SSBL into the eMMC boot
partition along with FSBL. This allows atomic update of both
FSBL and SSBL at the same time. Previously, this was only
possible for the FSBL, as the eMMC layout expected by TF-A
had a single SSBL GPT partition in the eMMC user area.
TEE binaries remained in dedicated GPT partitions whether
STM32MP_EMMC_BOOT was on or off.

The new FIP format collects SSBL and TEE partitions into
a single binary placed into a GPT partition.
Extend STM32MP_EMMC_BOOT, so eMMC-booted TF-A first uses
a FIP image placed at offset 256K into the active eMMC boot
partition. If no FIP magic is detected at that offset or if
STM32MP_EMMC_BOOT is disabled, the GPT on the eMMC user area
will be consulted as before.

This allows power fail-safe update of all firmware using the
built-in eMMC boot selector mechanism, provided it fits into
the boot partition - SZ_256K. SZ_256K was chosen because it's
the same offset used with the legacy format and because it's
the size of the on-chip SRAM, where the STM32MP15x BootROM
loads TF-A into. As such, TF-A may not exceed this size limit
for existing SoCs.

Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Change-Id: Id7bec45652b3a289ca632d38d4b51316c5efdf8d

3 years agorefactor(mmc): replace magic value with new PART_CFG_BOOT_PARTITION_NO_ACCESS
Ahmad Fatoum [Tue, 31 May 2022 08:03:04 +0000 (10:03 +0200)]
refactor(mmc): replace magic value with new PART_CFG_BOOT_PARTITION_NO_ACCESS

Disabling access to the boot partition reverts the MMC to read from the
user area. Add a macro to make this clearer.

Suggested-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Change-Id: I34a5a987980bb4690d08d255f465b11a4697ed5a

3 years agorefactor(mmc): export user/boot partition switch functions
Ahmad Fatoum [Mon, 23 May 2022 15:06:37 +0000 (17:06 +0200)]
refactor(mmc): export user/boot partition switch functions

At the moment, mmc_boot_part_read_blocks() takes care to switch
to the boot partition before transfer and back afterwards.
This can introduce large overhead when reading small chunks.
Give consumers of the API more control by exporting
mmc_part_switch_current_boot() and mmc_part_switch_user().

Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Change-Id: Ib641f188071bb8e0196f4af495ec9ad4a292284f

3 years agoMerge "fix(lib/psa): fix Null pointer dereference error" into integration
Madhukar Pappireddy [Thu, 2 Jun 2022 15:26:53 +0000 (17:26 +0200)]
Merge "fix(lib/psa): fix Null pointer dereference error" into integration

3 years agoMerge "fix(stm32mp1): fdts: stm32mp1: align DDR regulators with new driver" into...
Madhukar Pappireddy [Thu, 2 Jun 2022 15:12:24 +0000 (17:12 +0200)]
Merge "fix(stm32mp1): fdts: stm32mp1: align DDR regulators with new driver" into integration

3 years agobuild(changelog): add stm32mp13 and stm32mp15 scopes
Yann Gautier [Wed, 1 Jun 2022 16:17:43 +0000 (18:17 +0200)]
build(changelog): add stm32mp13 and stm32mp15 scopes

The STM32MP1 series includes STM32MP13 and STM32MP15. As some features
may be dedicated to one SoC variant, add the 2 entries in the scopes
list.
While at it, correct the title for STM32MP1.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I521d0e1dfdda0638ab9970c93821cf08efbd183a

3 years agofix(stm32mp1): fdts: stm32mp1: align DDR regulators with new driver
Ahmad Fatoum [Thu, 2 Jun 2022 04:28:31 +0000 (06:28 +0200)]
fix(stm32mp1): fdts: stm32mp1: align DDR regulators with new driver

With recent changes, TF-A now panics on MC-1, Avenger96 and Odyssey:

  NOTICE:  CPU: STM32MP157C?? Rev.B
  NOTICE:  Model: Linux Automation MC-1 board
  ERROR:   regul ldo3: max value 750 is invalid
  PANIC at PC : 0x2ffeebb7

as the driver takes great offense at the content of the device
tree. The parts in question were copy-pasted from ST DTs, but
those ST DTs were fixed by commit 67d95409baae
("refactor(stm32mp1-fdts): update regulator description").

Fix the breakage by transplanting the same changes into all
remaining STM32MP1 DTs.

Change was boot-tested on MC-1, but only build tested for the
other two.

Fixes: bba9fdee589f ("feat(stm32mp1): add regulator framework compilation")
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Change-Id: I143d0091625f62c313b3b71449c9ad99583d01c8

3 years agoMerge "docs(changelog): changelog for v2.7 release" into integration
Joanna Farley [Wed, 1 Jun 2022 15:02:46 +0000 (17:02 +0200)]
Merge "docs(changelog): changelog for v2.7 release" into integration

3 years agodocs(changelog): changelog for v2.7 release
Jayanth Dodderi Chidanand [Thu, 19 May 2022 10:03:07 +0000 (11:03 +0100)]
docs(changelog): changelog for v2.7 release

Change-Id: I573e5eb3c7fad097892292c8a967dc02d72d12e6
Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
3 years agoMerge changes from topic "sb/threat-model" into integration
Joanna Farley [Wed, 1 Jun 2022 12:37:30 +0000 (14:37 +0200)]
Merge changes from topic "sb/threat-model" into integration

* changes:
  docs(threat-model): broaden the scope of threat #05
  docs(threat-model): emphasize whether mitigations are implemented

3 years agoMerge changes from topic "od/spm-doc-update" into integration
Joanna Farley [Wed, 1 Jun 2022 12:29:45 +0000 (14:29 +0200)]
Merge changes from topic "od/spm-doc-update" into integration

* changes:
  docs(spm): refresh FF-A SPM design doc
  docs(spm): update FF-A manifest binding

3 years agodocs(spm): refresh FF-A SPM design doc
Olivier Deprez [Thu, 28 Apr 2022 16:18:36 +0000 (18:18 +0200)]
docs(spm): refresh FF-A SPM design doc

- Move manifest binding doc as a dedicated SPM doc section.
- Highlight introduction of an EL3 FF-A SPM solution.
- Refresh TF-A build options.
- Refresh PE MMU configuration section.
- Add arch extensions for security hardening section.
- Minor corrections, typos fixes and rephrasing.

Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
Change-Id: I2db06c140ef5871a812ce00a4398c663d5433bb4

3 years agodocs(spm): update FF-A manifest binding
Olivier Deprez [Thu, 12 May 2022 16:17:05 +0000 (18:17 +0200)]
docs(spm): update FF-A manifest binding

- Add security state attribute to memory and device regions.
- Rename device region reg attribution to base-address aligned with
  memory regions.
- Add pages-count field to device regions.
- Refresh interrupt attributes description in device regions.

Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
Change-Id: I901f48d410edb8b10f65bb35398b80f18105e427

3 years agodocs(threat-model): broaden the scope of threat #05
Sandrine Bailleux [Mon, 16 May 2022 11:57:38 +0000 (13:57 +0200)]
docs(threat-model): broaden the scope of threat #05

 - Cite crash reports as an example of sensitive
   information. Previously, it might have sounded like this was the
   focus of the threat.

 - Warn about logging high-precision timing information, as well as
   conditionally logging (potentially nonsensitive) information
   depending on sensitive information.

Change-Id: I33232dcb1e4b5c81efd4cd621b24ab5ac7b58685
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
3 years agodocs(threat-model): emphasize whether mitigations are implemented
Sandrine Bailleux [Fri, 13 May 2022 10:39:56 +0000 (12:39 +0200)]
docs(threat-model): emphasize whether mitigations are implemented

For each threat, we now separate:
 - how to mitigate against it;
 - whether TF-A currently implements these mitigations.

A new "Mitigations implemented?" box is added to each threat to
provide the implementation status. For threats that are partially
mitigated from platform code, the original text is improved to make
these expectations clearer. The hope is that platform integrators will
have an easier time identifying what they need to carefully implement
in order to follow the security recommendations from the threat model.

Change-Id: I8473d75946daf6c91a0e15e61758c183603e195b
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
3 years agoMerge changes from topic "ja/boot_protocol" into integration
Olivier Deprez [Mon, 30 May 2022 14:50:10 +0000 (16:50 +0200)]
Merge changes from topic "ja/boot_protocol" into integration

* changes:
  docs(spm): update ff-a boot protocol documentation
  docs(maintainers): add code owner to sptool