Commit graph

12648 commits

Author SHA1 Message Date
Soby Mathew
b709f12db3 Merge "feat(rme): save PAuth context when RME is enabled" into integration 2023-05-24 14:23:38 +02:00
Joanna Farley
545330b844 Merge "fix(versal-net): fix BLXX memory limits for user defined values" into integration 2023-05-24 14:06:39 +02:00
Joanna Farley
74bda905e8 Merge changes Ica1f9786,Ic96e3680 into integration
* changes:
  fix(versal): fix BLXX memory limits for user defined values
  fix(zynqmp): fix BLXX memory limits for user defined values
2023-05-24 14:03:17 +02:00
Michal Simek
a80da3899a fix(versal-net): fix BLXX memory limits for user defined values
When compiling with user defined areas of memory the platform code
calculates the size with (base + size - 1).  However, the linker
file aligns section on a page boundary. So having the -1 in
the size calculations leads to an error message looking like this:

bl31.elf section `coherent_ram' will not fit in region `RAM'
aarch64-buildroot-linux-uclibc-ld: region `RAM' overflowed by 1 byte

While at it fix all other occurences of predefined values that were
calculated with -1.

Fixes: 1d333e6909 ("feat(versal-net): add support for Xilinx
Versal NET platform")
Change-Id: I4455f63ee3ad52369f517a7d8d3627faf0b28c0f
Signed-off-by: Michal Simek <michal.simek@amd.com>
2023-05-24 12:40:46 +02:00
Shruti Gupta
13cc1aa70a feat(rme): save PAuth context when RME is enabled
This patch enables CTX_INCLUDE_PAUTH_REGS for RME builds.
The RMM-EL3 specification is also updated to reflect the changes
and also version of the same is bumped from 0.1 to 0.2.

Signed-off-by: Shruti Gupta <shruti.gupta@arm.com>
Change-Id: I2e96a592d2b75abaee24294240c1727c5ceba420
2023-05-24 10:56:40 +01:00
Ilias Apalodimas
f123b91fdd fix(versal): fix BLXX memory limits for user defined values
When compiling with user defined areas of memory the platform code
calculates the size with (base + size - 1).  However, the linker file
aligns section on a page boundary.  So having the -1 in the size
calculations leads to an error message looking like this:

bl31.elf section `coherent_ram' will not fit in region `RAM'
aarch64-buildroot-linux-uclibc-ld: region `RAM' overflowed by 1 byte

While at it fix all other occurences of predefined values that were
calculated with -1

Fixes: commit f91c3cb1df ("arm64: versal: Add support for new Xilinx Versal ACAPs")
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Change-Id: Ica1f97867b701e7fcd60ea8ea07d2ae96c485443
2023-05-24 10:46:49 +03:00
Ilias Apalodimas
8ce2fbffe3 fix(zynqmp): fix BLXX memory limits for user defined values
When compiling with user defined areas of memory the platform code
calculates the size with (base + size - 1).  However, the linker file
aligns section on a page boundary.  So having the -1 in the size
calculations leads to an error message looking like this:

bl31.elf section `coherent_ram' will not fit in region `RAM'
aarch64-buildroot-linux-uclibc-ld: region `RAM' overflowed by 1 byte

Commit 9b4ed0af02 ("feat(plat/zynqmp): fix section `coherent_ram' will not fit in region `RAM'")
applied a similar fix, but only in the predefined for BL31LIMIT/BASE.

While at it fix all other occurences of predefined values that were
calculated with -1

Fixes: 01555332fa ("zynqmp: Revise memory configuration options")
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Change-Id: Ic96e36808d01f6bb92e6839cec92fc52320dd3f3
2023-05-24 10:46:49 +03:00
Sandrine Bailleux
2abbb457fa Merge "fix(intel): update checking for memcpy and memset" into integration 2023-05-24 08:31:09 +02:00
Sandrine Bailleux
816c27fbba Merge changes I38545567,I2f52d3ea into integration
* changes:
  feat(intel): restructure sys mgr for S10/N5X
  feat(intel): restructure sys mgr for Agilex
2023-05-23 17:43:00 +02:00
Madhukar Pappireddy
a2ecddde4b Merge "fix(ti): remove check for zero value in BL31 boot args" into integration 2023-05-23 17:15:12 +02:00
Olivier Deprez
6a6fdd16d0 Merge "docs: fix rendering for code blocks in SPM" into integration 2023-05-23 16:01:02 +02:00
Sandrine Bailleux
f7ed5bea1d Merge "feat(intel): setup SEU ERR read interface for FP8" into integration 2023-05-23 15:43:21 +02:00
Manish Pandey
ce0f98e80f Merge "docs(maintainers): add Yann Gautier in TF-A maintainers list" into integration 2023-05-23 15:40:41 +02:00
Jit Loon Lim
b653f3caf0 feat(intel): restructure sys mgr for S10/N5X
This patch is to restructure system manager. Move platform dependent
MACROs to individual platform system manager. Common system manager will
remain for those common declaration only.

Signed-off-by: Jit Loon Lim <jit.loon.lim@intel.com>
Change-Id: I385455671413e154d04a879d33fdd774fcfefbd6
2023-05-23 21:14:07 +08:00
Jit Loon Lim
6197dc98fe feat(intel): restructure sys mgr for Agilex
This patch is to restructure system manager. Move platform dependent
MACROs to individual platform system manager. Common system manager will
remain for those common declaration only.

Signed-off-by: Jit Loon Lim <jit.loon.lim@intel.com>
Change-Id: I2f52d3eaf47716f7dfc636bbf1a23d68a04f39cb
2023-05-23 21:13:05 +08:00
Jit Loon Lim
c418064eb5 fix(intel): update checking for memcpy and memset
Add checking on the size of source data does not exceed source size
when using memcpy and memset.

Add checking on the size of source data in FPGA Crypto Service does
not exceed the maximum of expected data size and does not meet the
minimum of expected data size.

Signed-off-by: Phui Kei Wong <phui.kei.wong@intel.com>
Signed-off-by: Jit Loon Lim <jit.loon.lim@intel.com>
Change-Id: Idb18f05c18d9142fbe703c3f4075341d179d8bad
2023-05-23 21:09:01 +08:00
Jit Loon Lim
91239f2c05 feat(intel): setup SEU ERR read interface for FP8
Enable SEU ERR read interfaces for non-secure world to read out SEU status
for DDR.
SEU ERR SMC opcode updated to 0xC2000099

Signed-off-by: Jit Loon Lim <jit.loon.lim@intel.com>
Change-Id: I0618dfcdc86a7c1e0c8047b7214d369866dd2281
2023-05-23 11:28:33 +08:00
Joanna Farley
d3e71ead6e Merge "docs(changelog): changelog for v2.9 release" into integration 2023-05-22 16:12:59 +02:00
Sandrine Bailleux
abcdbcfcd1 docs(maintainers): add Yann Gautier in TF-A maintainers list
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
Change-Id: I8d3966e230609f9da4c313201ed0cb0f46f27200
2023-05-22 14:45:00 +02:00
Madhukar Pappireddy
d386d53d5c Merge "docs: update feature support overview" into integration 2023-05-22 14:43:02 +02:00
Manish Pandey
9494de0798 docs: update feature support overview
The feature support overview is meant to list all the major features
present in TF-A. It should be precise, non-exhaustive and up-to-date.

Updated the document with new features and removed few unnecessary
details.

Signed-off-by: Manish Pandey <manish.pandey2@arm.com>
Change-Id: I28b378f405a6b9d8f86e7b44e435c33625e3d260
2023-05-22 12:03:22 +01:00
Manish Pandey
be3a456315 Merge "docs: update usage of ARM_ARCH_MAJOR/MINOR" into integration 2023-05-22 11:10:47 +02:00
Manish Pandey
00be88ec1a Merge "docs(n1sdp): add N1SDP PSCI instrumentation data" into integration 2023-05-22 10:47:50 +02:00
Manish Pandey
57da5c1f55 Merge "docs: add Juno runtime instrumentation data" into integration 2023-05-22 10:40:37 +02:00
Joanna Farley
c54579dda3 Merge "fix: pin poetry to version used in CI" into integration 2023-05-20 19:25:42 +02:00
Harrison Mutai
5f0f3bf408 fix: pin poetry to version used in CI
Pin poetry to version 1.3.2, which is currently used in CI, to ensure
that all builds are consistent. Also, fix typo in `doc` group name.

Change-Id: Id0c1aa88ac7ffcc241a51c693570e87abacf7ebc
Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
2023-05-20 10:16:50 +01:00
Juan Pablo Conde
b78ad00e58 docs(changelog): changelog for v2.9 release
Change-Id: Ic8cd82c5424af422feedefdc001d291001817a8b
Signed-off-by: Juan Pablo Conde <juanpablo.conde@arm.com>
2023-05-19 13:49:08 -05:00
Harrison Mutai
6338876b6d docs(n1sdp): add N1SDP PSCI instrumentation data
Change-Id: Id22715cb1d36edf6cb8719f3a0415993f067e7c9
Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
2023-05-19 17:29:23 +01:00
Madhukar Pappireddy
09c020f457 Merge "docs(spm): memory region nodes definition" into integration 2023-05-19 17:42:58 +02:00
Manish Pandey
666aec4016 Merge changes I0a307cc1,Ic2ad5a56 into integration
* changes:
  fix(morello): remove platform specific pwr_domain_suspend wrapper
  fix(n1sdp): remove platform specific pwr_domain_suspend wrapper
2023-05-19 14:57:03 +02:00
sahil
d5ca76fc4f fix(morello): remove platform specific pwr_domain_suspend wrapper
Turning redistributor off during suspend disables any wakeup interrupts
resulting in cpu getting stuck. This patch removes the platform specific
psci pwr_domain_suspend handler.

Signed-off-by: sahil <sahil@arm.com>
Change-Id: I0a307cc140447e91fd0808fcfb309593f24c14ca
2023-05-19 16:55:24 +05:30
sahil
c071c5a293 fix(n1sdp): remove platform specific pwr_domain_suspend wrapper
Turning redistributor off during suspend disables any wakeup interrupts
resulting in cpu getting stuck. This patch removes the platform specific
psci pwr_domain_suspend handler.

Signed-off-by: sahil <sahil@arm.com>
Change-Id: Ic2ad5a561be29eee9229a5cc11aa3c9320a51cb7
2023-05-19 16:54:53 +05:30
Manish Pandey
be6484cbb7 docs: update usage of ARM_ARCH_MAJOR/MINOR
Signed-off-by: Manish Pandey <manish.pandey2@arm.com>
Change-Id: I433488ecbaf7773a9e062223599fb0d3bc892f94
2023-05-19 10:16:01 +01:00
J-Alves
433f6d2b41 docs(spm): memory region nodes definition
Update the documentation related with memory region nodes
of SP's FF-A manifest, to relate to changes from patches [1].

[1] https://review.trustedfirmware.org/q/topic:%22ja%252Fmem_region_fix%22+(status:open%20OR%20status:merged)

Signed-off-by: J-Alves <joao.alves@arm.com>
Change-Id: I16595ec581b0ad9d2c20fca8dab64b6fd9ad001a
2023-05-19 09:37:16 +01:00
Harrison Mutai
a3077ae1e9 docs: add Juno runtime instrumentation data
Add results from running the TFTF test suite Runtime Instrumentation on Juno.

Change-Id: I4c5b64e1a80b5b88e42835f0700294a02edc8032
Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
2023-05-18 09:32:14 +01:00
Andrew Davis
44edd3bd7c fix(ti): remove check for zero value in BL31 boot args
The commit 3e14df6f63 removed clearing of argument registers even when
BL31 is the first stage. In that case the registers are left in a random
state. TI platforms check that the arguments have been zero'd in early
setup and so all TI platforms are not broken. Not sure why this check was
here at all, so simply remove it to fix boot.

Fixes: 3e14df6f63 ("fix(bl31): avoid clearing of argument registers in RESET_TO_BL31 case")
Signed-off-by: Andrew Davis <afd@ti.com>
Change-Id: I02bdd16b67fb5facc4c47ec596a42f110a663377
2023-05-17 10:47:28 -05:00
Bipin Ravi
08d7a10157 Merge "docs(prerequisites): update software and libraries prerequisites" into integration 2023-05-16 22:22:08 +02:00
Govindraj Raja
0d7e702e4f docs(prerequisites): update software and libraries prerequisites
Update to use the following software:

- mbed TLS == 3.4.0
- (DTC) >= 1.4.7
- Ubuntu 22.04 for builds.

Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
Change-Id: I384aab4dfee9cae9453eebf4091abe82ef9ccfaa
2023-05-16 17:36:18 +01:00
Manish Pandey
2834bc6b83 Merge "fix(tegra210): mark bits [23:17] as zero for Fast SMCs" into integration 2023-05-16 16:58:09 +02:00
Manish Pandey
20304ce22f Merge changes from topic "ja/mem_share_doc" into integration
* changes:
  docs(spm): threat model for memory sharing functionality
  docs(spm): add memory sharing documentation
2023-05-16 16:57:15 +02:00
Sandrine Bailleux
493d422363 Merge changes from topics "plat_tests_scalability", "sb/tc-plat-tests" into integration
* changes:
  test(tc): unify platform tests traces
  test(tc): return test failures count for tfm-testsuite
  test(tc): move platform tests in their own function
  test(tc): centralize platform error handling
  refactor(tc): define PLATFORM_TESTS for scale
2023-05-16 13:03:28 +02:00
Sandrine Bailleux
303ef33e7d test(tc): unify platform tests traces
Add some traces at the start and end of platform tests. These traces
are the same regardless of the set of platform tests we run (NV
counter tests / TF-M testsuite / future set of tests).

This makes it easier to integrate these tests in the CI because we can
now have a unified "expect" script for all platform tests, instead of
having one dedicated "expect" script for each possible set of tests.

Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
Change-Id: I5ec30a7a25d8a9a4a90e3338a9789acff7ad4843
2023-05-15 13:02:30 +02:00
Sandrine Bailleux
26207c2d33 test(tc): return test failures count for tfm-testsuite
When running the "tfm-testsuite" set of platform tests, we now count
the number of failed tests (in addition to printing a test summary)
and report that back to the caller,
i.e. tc_bl31_common_platform_setup().

This will be useful to consolidate the tests failure reporting code in
a subsequent patch.

Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
Change-Id: I8e51f03869f3b2f264b6581b3bd2a53be0198057
2023-05-15 13:02:27 +02:00
Sandrine Bailleux
4eefbf1bf7 test(tc): move platform tests in their own function
This is a bit cleaner, as it avoids cluttering the normal boot execution
path. It also gives us the opportunity to mark the tests function with
the __dead2 attribute, which inform both the compiler and the developer
that the test function never returns (since it suspends booting).

Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
Change-Id: I082a34a840ef791a2ac4c1f59b19b32aeb0a9ec7
2023-05-15 13:02:24 +02:00
Sandrine Bailleux
57cc12c85c test(tc): centralize platform error handling
Note that this change only affects the platform tests execution
path. It has no impact on the normal boot flow.

Make individual test functions propagate an error code, instead of
calling the platform error handler at the point of failure. The latter
is now the responsibility of the caller - in this case
tc_bl31_common_platform_setup().

Note that right now, tc_bl31_common_platform_setup() does not look at
the said error code but this initial change opens up an opportunity to
centralize any error handling in tc_bl31_common_platform_setup(),
which we will seize in subsequent patches.

Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
Change-Id: Ib282b64039e0b1ec6e6d29476fbaa2bcd33cb0c7
2023-05-15 13:02:19 +02:00
Kalyani Chidambaram Vaidyanathan
cb6c8efc4f fix(tegra210): mark bits [23:17] as zero for Fast SMCs
Per SMCCC documentation, bits [23:17] must be zero for Fast
SMCs. Other values are reserved for future use. Ensure that
these bits are zeroes for TEGRA_SIP_PMC_COMMANDS.

Commit f8a35797 introduced a check to return error if these
bits are not zero, thus breaking Tegra210 platforms. This
patch fixes the anomaly.

Change-Id: I19edc3b33c999a6fee6b86184233fba146316466
Signed-off-by: Kalyani Chidambaram Vaidyanathan <kalyanic@nvidia.com>
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
2023-05-12 09:54:51 +01:00
J-Alves
ff8f1c5fe1 docs(spm): threat model for memory sharing functionality
Update the SPM threat model with information about FF-A v1.1
memory sharing functionality.

Change-Id: I65ea0d53aba8ac2f8432539968ceaab6be109ac8
Signed-off-by: J-Alves <joao.alves@arm.com>
2023-05-12 09:32:21 +01:00
J-Alves
cc63ff9762 docs(spm): add memory sharing documentation
Add documentation that explains implementation specific
relevant information from the update done to FF-A v1.1
memory sharing in Hafnium.

Change-Id: Ifc3c6b86c0545d53331207b017b990427ee84f2d
Signed-off-by: J-Alves <joao.alves@arm.com>
2023-05-12 09:32:21 +01:00
Manish Pandey
dcf430656c Merge "docs(psci): expound runtime instrumentation docs" into integration 2023-05-11 13:41:35 +02:00
Joanna Farley
3011e1afeb Merge changes from topic "ms/external_deps" into integration
* changes:
  feat(libc): add %c to printf/snprintf
  feat(compiler-rt): update source files
  chore(libfdt): update to v1.7.0 source files
2023-05-11 13:12:06 +02:00