Commit graph

16527 commits

Author SHA1 Message Date
Jayanth Dodderi Chidanand
8187b95ec0 refactor(arm): simplify early platform setup function in BL2
Refactor `arm_bl2_early_platform_setup` to accept generic u_register_t
values, enabling support for firmware handoff boot arguments in
common code. This simplifies the interface for early platform setup.

Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
Change-Id: Ie0dbe4d32bbef22bd185fdafe50091a2ea5f550f
2025-03-31 16:45:35 +01:00
Jayanth Dodderi Chidanand
4c5ccbf43c feat(arm): add support for Transfer List creation
This patch introduces Firmware Handoff support for Arm based
platforms listed under Firmware_Handoff specification.
[https://firmwarehandoff.github.io/firmware_handoff/main/transfer_list.html]

Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
Change-Id: Ie3f30ffe38f809db907b663a8dbf1e48944ec690
2025-03-31 16:45:35 +01:00
Govindraj Raja
a4d8012f41 Merge "refactor: report features supported to secure world" into integration 2025-03-31 16:28:55 +02:00
Yann Gautier
952f1f4aca Merge "fix(nxp-tools): fix2 create_pbl buildroot build" into integration 2025-03-31 11:52:01 +02:00
Karl Meakin
d0ee0ec1c6 refactor: report features supported to secure world
Report `FFA_MEM_PERM_GET` and `FFA_MEM_PERM_SET` supported to secure
world instances.

Signed-off-by: Karl Meakin <karl.meakin@arm.com>
Change-Id: I90e6b0ab601ae1142b419cacfa56109c183ab640
2025-03-27 17:24:37 +00:00
Vincent Jardin
bfe7f80189 fix(nxp-tools): fix2 create_pbl buildroot build
For some unknown reasons I did miss this '+' which does not make
sense when I submitted the former commit. We all did miss
it during codre reviews, sorry for the confusion. I do not understand
how it happened, late commits -> stupid issues.

Revert and fix: 634c7d81 fix create_pbl buildroot build
  Wall -Werror -pedantic -std=c99 -O2 -DVERSION='"v2.12.0(release):master"' -D_GNU_SOURCE -D_XOPEN_SOURCE=700 -c -o create_pbl.o create_pbl.c
  make[3]: Wall: No such file or directory

Change-Id: I1e17e4793061966ce5fa5e0c122914bfaed27952
Signed-off-by: Vincent Jardin <vjardin@free.fr>
2025-03-27 18:00:05 +01:00
Govindraj Raja
2377542785 Merge changes from topic "xlnx_fix_gen_datatype_cast" into integration
* changes:
  fix(psci): add const qualifier
  fix(el3-runtime): add const qualifier
  fix(bl31): add const qualifier
  fix(console): typecast expressions to match data type
  fix(arm-drivers): typecast expressions to match data type
  fix(arm-drivers): align essential type categories
  fix(arm-drivers): typecast expression to match data type
2025-03-27 15:53:57 +01:00
Manish Pandey
a008954990 Merge "fix(guid-partition): initialise the mbr_entry variable" into integration 2025-03-27 15:43:28 +01:00
Soby Mathew
8661845026 Merge "fix(rme): do not trap access to MPAM system registers in Realm mode" into integration 2025-03-27 06:25:30 +01:00
Javier Almansa Sobrino
d048af0da1 fix(rme): do not trap access to MPAM system registers in Realm mode
Change-Id: I77496ee962727687b28f71a1a15b4fe4133c613c
Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
2025-03-26 17:09:57 +00:00
Soby Mathew
ca3f2eee11 Merge "feat(rmmd): verify FEAT_MEC present before calling plat hoook" into integration 2025-03-26 17:39:57 +01:00
Juan Pablo Conde
609ada9691 feat(rmmd): verify FEAT_MEC present before calling plat hoook
Some platforms do not support FEAT_MEC. Hence, they do not provide
an interface to update the update of the key corresponding to a
MECID.

This patch adds a condition in order to verify FEAT_MEC is present
before calling the corresponding platform hook, thus preventing it
from being called when the platform does not support the feature.

Change-Id: Ib1eb9e42f475e27ec31529569e888b93b207148c
Signed-off-by: Juan Pablo Conde <juanpablo.conde@arm.com>
2025-03-26 15:46:38 +01:00
Joanna Farley
2869609ca7 Merge changes from topic "xlnx_fix_plat_invalid_entry" into integration
* changes:
  fix(versal): handle invalid entry point in cpu hotplug scenario
  fix(versal-net): handle invalid entry point in cpu hotplug scenario
  fix(zynqmp): handle invalid entry point in cpu hotplug scenario
2025-03-26 11:13:57 +01:00
Maheedhar Bollapalli
435bc14a94 fix(versal): handle invalid entry point in cpu hotplug scenario
Invalid addresses are from 2G-4G and also address where TF-A is.

Change-Id: I3d07808821da3bdd46be819ad829cb284f9d53d3
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2025-03-26 06:33:21 +00:00
Maheedhar Bollapalli
e5e417ddec fix(versal-net): handle invalid entry point in cpu hotplug scenario
Invalid addresses are from 2G-4G and also address where TF-A is.

Change-Id: I153d26bd92ea26efcd7f236e2f1d89c3e5442ba4
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2025-03-26 06:33:21 +00:00
Maheedhar Bollapalli
df44616a12 fix(zynqmp): handle invalid entry point in cpu hotplug scenario
Invalid addresses are from 2G-4G and also address where TF-A is.

Change-Id: Iedb817a2f9667b7d0b9a3ac03891a5b93295bf87
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2025-03-26 06:33:09 +00:00
Boyan Karatotev
ec48d52e78 fix(guid-partition): initialise the mbr_entry variable
The compiler complains that it may be used unitialised. Give it some
confidence that won't be the case.

Change-Id: I14bddd48e4b205121415025175f157b92a89aa26
Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
2025-03-25 16:51:02 +00:00
Govindraj Raja
8fb8b93984 Merge "refactor(mediatek): fix mcusys off issue for MTK GIC v3 driver" into integration 2025-03-25 16:33:40 +01:00
Soby Mathew
90f9c9bef5 Merge "feat(rme): add SMMU and PCIe information to Boot manifest" into integration 2025-03-25 12:35:47 +01:00
AlexeiFedorov
90552c612e feat(rme): add SMMU and PCIe information to Boot manifest
- Define information structures for SMMU, root complex,
  root port and BDF mappings.
- Add entries for SMMU and PCIe root complexes to Boot manifest.
- Update RMMD_MANIFEST_VERSION_MINOR from 4 to 5.

Change-Id: I0a76dc18edbaaff40116f376aeb56c750d57c7c1
Signed-off-by: AlexeiFedorov <Alexei.Fedorov@arm.com>
2025-03-25 10:26:18 +00:00
Manish Pandey
518b278bed Merge changes from topic "hm/handoff-aarch32" into integration
* changes:
  refactor(arm): simplify early platform setup functions
  feat(bl32): enable r3 usage for boot args
  feat(handoff): add lib to sp-min sources
  feat(handoff): add 32-bit variant of SRAM layout
  feat(handoff): add 32-bit variant of ep info
  fix(aarch32): avoid using r12 to store boot params
  fix(arm): reinit secure and non-secure tls
  refactor(handoff): downgrade error messages
2025-03-24 17:29:57 +01:00
Bipin Ravi
b78c307ca6 Merge changes from topic "ar/cvereorder" into integration
* changes:
  chore(cpus): rearrange the errata and cve in order in Cortex-X4
  chore(cpus): rearrange the errata and cve in order in Neoverse-V3
2025-03-21 17:22:00 +01:00
Bipin Ravi
6059e4232d Merge "chore(cpus): rearrange cve and errata order in Cortex-X3" into integration 2025-03-21 17:21:18 +01:00
Bipin Ravi
eeb16181f5 Merge changes from topic "ar/cvereorder" into integration
* changes:
  chore(cpus): fix cve order in Neoverse-V2
  chore(cpus): rearrange the errata and cve in order in Cortex-A710
2025-03-21 17:12:25 +01:00
Bipin Ravi
4a871b56b4 Merge changes from topic "ar/cvereorder" into integration
* changes:
  chore(cpus): rearrange the errata and cve order in Neoverse-N2
  chore(cpus): rearrange cve in order in Cortex-X1
  chore(cpus): fix cve order in Neoverse-V1
  chore(cpus): fix cve order in Cortex-X2
  chore(cpus): fix cve order in Cortex-A78C
  chore(cpus): fix cve order in Cortex-A78_AE
  chore(cpus): fix cve order in Cortex-A78
  chore(cpus): fix cve order in Cortex-A77
2025-03-21 17:08:04 +01:00
Bipin Ravi
43b56d9111 Merge "refactor(cpus): don't panic if errata out of order" into integration 2025-03-21 17:07:06 +01:00
Sona Mathew
ede127e66c chore(cpus): rearrange the errata and cve in order in Cortex-X4
Patch sorts the errata IDs in ascending order and the
CVE's in ascending order based on the year and index
for CPU Cortex-X4.

Change-Id: Ic304c2f68e7d0b96bbb30760696b7bceabe1ae2d
Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
2025-03-21 10:50:14 -05:00
Sona Mathew
6b922fe0f3 chore(cpus): rearrange cve and errata order in Cortex-X3
Patch sorts the errata IDs in ascending order and the
CVE-2024-5660 in order based on the year and index
for Cortex-X3.

Change-Id: I2a4baebe0c3133528c089d999bdffa8c992f4989
Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
2025-03-21 10:50:14 -05:00
Sona Mathew
174ed6188a chore(cpus): fix cve order in Neoverse-V2
Patch rearranges CVE-2024-5660 in order based on
the year and index for Neoverse-V2.

Change-Id: I092a93ef3299fd733abae9c462c019f94d881413
Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
2025-03-21 10:50:14 -05:00
Sona Mathew
216d437c0d chore(cpus): rearrange the errata and cve order in Neoverse-N2
Patch sorts the errata IDs in ascending order and the
CVE's in ascending order based on the year and index
for CPU Neoverse N2.

Change-Id: Ieb4a8ab0030ea4e83efdef86a0ff1e2990b3e0dd
Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
2025-03-21 10:50:14 -05:00
Sona Mathew
4cf62406ed chore(cpus): rearrange the errata and cve in order in Neoverse-V3
Patch sorts the errata IDs in ascending order and the CVE's
in ascending order based on the year and index for Neoverse-V3.

Change-Id: I108eb2896e24c135d56e5096289766d777b48b48
Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
2025-03-21 10:50:14 -05:00
Sona Mathew
10a8e85cba chore(cpus): rearrange the errata and cve in order in Cortex-A710
Patch sorts the errata IDs in ascending order and the
CVE's in ascending order based on the year and index
for CPU Cortex-A710.

Change-Id: Ie7c2b77879f8fa5abb77204678e09cc759b10278
Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
2025-03-21 10:50:14 -05:00
Sona Mathew
e83cccfec4 chore(cpus): rearrange cve in order in Cortex-X1
Patch rearranges CVE-2024-5660 in ascending order based on
the year and index for Cortex X1.

Change-Id: I0c4206e38f09b1f88ee95e8ce69d7e13b8a9bb2d
Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
2025-03-21 10:50:14 -05:00
Arvind Ram Prakash
5c43b966fd chore(cpus): fix cve order in Neoverse-V1
This patch rearranges CVE-2024-5660 apply order in Neoverse-V1.

Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Change-Id: Ice0b1c6efa913f88522fb33182b9cdc0e7723988
2025-03-21 10:50:14 -05:00
Arvind Ram Prakash
eb9220b2d1 chore(cpus): fix cve order in Cortex-X2
This patch rearranges CVE-2024-5660, erratum 2313941
and 3701772 apply order in Cortex-X2.

Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Change-Id: Ie74d7232a14f3cdd14c4d0ffb1ee91b537c491ea
2025-03-21 10:50:14 -05:00
Arvind Ram Prakash
97b1023b46 chore(cpus): fix cve order in Cortex-A78C
This patch rearranges CVE-2024-5660 apply order in Cortex-A78C.

Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Change-Id: I326be1da279bd34df8667f7e957fb4a2c6913ab9
2025-03-21 10:50:14 -05:00
Arvind Ram Prakash
85526d4b84 chore(cpus): fix cve order in Cortex-A78_AE
This patch rearranges CVE-2024-5660 apply order in Cortex-A78_AE.

Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Change-Id: Idfb076b798a840847c00066bd062ee919369272f
2025-03-21 10:50:14 -05:00
Arvind Ram Prakash
67a4f6f96d chore(cpus): fix cve order in Cortex-A78
This patch rearranges CVE-2024-5660 apply order in Cortex-A78.

Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Change-Id: If80a0f95f82dbf69100a2687b06db2373a9e9832
2025-03-21 10:50:14 -05:00
Arvind Ram Prakash
06f2cfb8ac chore(cpus): fix cve order in Cortex-A77
This patch rearranges CVE-2024-5660 apply order in Cortex-A77.

Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Change-Id: I41d76268ce2248bfd3600bbf6b89d16b6bdce8f0
2025-03-21 10:50:14 -05:00
Arvind Ram Prakash
3426ed4966 refactor(cpus): don't panic if errata out of order
Previously we have used enclosed the Errata ordering check
within the FEATURE_DETECTION flag as this flag is only
used for development purpose and it also enforces
ordering by causing a panic when the assert fails.
A simple warning message would suffice and hence this
patch removes the assert.

The erratum and cve ordering check is planned to be implemented
in static check at which point the warning will be taken out as well.

Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Change-Id: I0ffc40361985281163970ea5bc81ca0269b16442
2025-03-21 10:49:31 -05:00
Manish V Badarkhe
9526c2f9ef Merge "fix(plat): remove unused vfp code" into integration 2025-03-21 14:41:37 +01:00
Manish V Badarkhe
2f4bcc08bb Merge "feat(zynqmp): add pin group for lower qspi interface" into integration 2025-03-21 12:30:41 +01:00
Manish V Badarkhe
d3ebd2a111 Merge "chore(docs): explain what the plat_amu_aux_enables array does" into integration 2025-03-21 12:26:06 +01:00
Manish V Badarkhe
4c7fa977b7 Merge "chore(cm): add MDCR_EL3.RLTE to context management" into integration 2025-03-21 12:25:42 +01:00
Manish V Badarkhe
3c198a97ad Merge "fix(rdv3): correctly handle FP regs context saving" into integration 2025-03-21 10:13:57 +01:00
Runyang Chen
2be3014f6b refactor(mediatek): fix mcusys off issue for MTK GIC v3 driver
When mcusys is off, rdist_ctx will save the rdist data of the last core.
In the case of the last core plug off, the data of other cores will be
inconsistent with the data in rdist_ctx.

Therefore, each core needs to use a dedicated context.

Signed-off-by: Runyang Chen <runyang.chen@mediatek.com>
Change-Id: Ic9501f4da219cf906c0e348982be3f550c3ba30b
2025-03-21 06:38:05 +01:00
Madhukar Pappireddy
38b5f93a2b Merge "feat(lib): implement strnlen secure and strcpy secure function" into integration 2025-03-20 15:44:44 +01:00
Harrison Mutai
8921349894 refactor(arm): simplify early platform setup functions
Refactor `arm_sp_min_early_platform_setup` to accept generic
`u_register_r` values to support receiving firmware handoff boot
arguments in common code. This has the added benefit of simplifying the
interface into common early platform setup.

Change-Id: Idfc3d41f94f2bf3a3a0c7ca39f6b9b0013836e3a
Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
2025-03-20 13:57:14 +00:00
Rakshit Goyal
ac05182df0 fix(rdv3): correctly handle FP regs context saving
Commit fe488c3796 added an override to
force `CTX_INCLUDE_SVE_REGS` to 0 when `SPD == spmd` and
`SPMD_SPM_AT_SEL2 == 1`.
Since there is an architectural dependency between FP and SVE registers,
`CTX_INCLUDE_FPREGS` must also be overridden to 0 when
CTX_INCLUDE_SVE_REGS is 0.

Signed-off-by: Rakshit Goyal <rakshit.goyal@arm.com>
Change-Id: I1cd834241a2d5a5368ac532a348d8729a701bbcd
2025-03-20 13:04:53 +00:00
Manish V Badarkhe
b19345ea3a Merge "build(poetry): install SP dependencies with --no-root" into integration 2025-03-20 13:26:12 +01:00