Commit graph

15693 commits

Author SHA1 Message Date
Tamas Ban
9db2b059eb fix(docs): fix the example command for doc build
Signed-off-by: Tamas Ban <tamas.ban@arm.com>
Change-Id: I8ee666ee4cd135d09380ce31751ddba9962ff831
2024-11-06 15:18:06 +01:00
Harrison Mutai
c1c406a4de fix(arm): load dt before updating entry point
For firmware handoff, ensure the device tree (dt) is loaded into memory
before setting the entry point arguments for the next bootloader stage.
This allows the dt to be found and its address passed as an argument.

Change-Id: Ifedd7c573e2d4f6d68c596907d9d6c6a3eded317
Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
2024-11-06 14:13:38 +00:00
Soby Mathew
88ed66bd45 Merge "docs: el3 token signing" into integration 2024-11-06 14:38:41 +01:00
Raghu Krishnamurthy
b226357bdb docs: el3 token signing
Add documentation for the feature where EL3 can be used to sign realm
attestation token requests using RMM_EL3_TOKEN_SIGN command.
This patch also adds documentation for the RMM_EL3_FEATURES features
command that can be used to discover support for features such as
RMM_EL3_TOKEN_SIGN.

Change-Id: Iab5a157761ed17931210c3702f813198fc9c4b3a
Signed-off-by: Raghu Krishnamurthy <raghupathyk@nvidia.com>
2024-11-06 14:38:28 +01:00
Joanna Farley
a9fdd198fd Merge changes from topic "xlnx_fix_plat_extn_decl_link" into integration
* changes:
  fix(versal2): variable conflicting with external linkage
  fix(versal-net): variable conflicting with external linkage
  fix(versal): variable conflicting with external linkage
  fix(zynqmp): variable conflicting with external linkage
  fix(versal2): add external declaration
  fix(versal): add external declaration
  fix(zynqmp): add external declaration
2024-11-06 13:16:46 +01:00
Govindraj Raja
830ed3927a Merge "feat(feat_sctlr2): enable FEAT_SCTLR2 for Realm world" into integration 2024-11-05 18:29:38 +01:00
Govindraj Raja
e053e89ff8 Merge "fix(st): set no-pie option when building ST elf file" into integration 2024-11-05 16:31:24 +01:00
Govindraj Raja
add536ed8c Merge "fix(st-ddr): move skipddc_dat definition" into integration 2024-11-05 16:30:48 +01:00
Govindraj Raja
34088d7d80 Merge changes I26cefbb5,I6a8b3528,I323fb741 into integration
* changes:
  fix(stm32mp2): set PLAT_MAX_PWR_LVL to one
  feat(stm32mp2): boot BL33 at EL1 or EL2
  feat(stm32mp2): disable unsupported features
2024-11-05 16:28:25 +01:00
Yann Gautier
6b7189dd59 Merge "feat(mediatek): move plat_helpers.h to the common folder" into integration 2024-11-05 10:55:20 +01:00
Ye Li
86acbbe2d8 build(bl31): support separated memory for RW DATA
Update linker file and init codes to allow using separated
memory region for RW DATA. Init codes will copy the RW DATA
from the image to the linked address.

On some NXP platforms, after the BL31 image has been verified,
the bl31 image space will be locked/protected as RO only, so
need to move the RW DATA and NOBITS out of the bl31 image.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Jacky Bai <ping.bai@nxp.com>
Change-Id: I361d9a715890961bf30790a3325f8085a40c0c39
2024-11-05 17:24:41 +08:00
Maheedhar Bollapalli
ca39fd46c1 fix(versal2): variable conflicting with external linkage
This corrects the MISRA violation C2012-5.8:
Identifiers that define objects or functions with
external linkage shall be unique.
Modify the variable name to prevent conflict with
external object linkage.

Change-Id: I2448e4ad0660e654ceb40940e0046d2f2899b41b
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-11-05 08:25:40 +00:00
Maheedhar Bollapalli
4d2b4e4dd7 fix(versal-net): variable conflicting with external linkage
This corrects the MISRA violation C2012-5.8:
Identifiers that define objects or functions with
external linkage shall be unique.
Modify the variable name to prevent conflict with
external object linkage.

Change-Id: Icba1860d789d3826a58b3d83b65ca86a7b364c46
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-11-05 08:25:29 +00:00
Maheedhar Bollapalli
e452826ad3 fix(versal): variable conflicting with external linkage
This corrects the MISRA violation C2012-5.8:
Identifiers that define objects or functions with
external linkage shall be unique.
Modify the variable name to prevent conflict with
external object linkage.

Change-Id: I118fc302e6c37ba589a2871a7c59a694314910c2
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-11-05 08:16:35 +00:00
Maheedhar Bollapalli
eda23fa5aa fix(zynqmp): variable conflicting with external linkage
This corrects the MISRA violation C2012-5.8:
Identifiers that define objects or functions with
external linkage shall be unique.
Modify the variable name to prevent conflict with
external object linkage.

Change-Id: I32bed542c4810508174029ab0aaec18bcdf849a5
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-11-05 08:16:00 +00:00
Maheedhar Bollapalli
17a8f41e45 fix(versal2): add external declaration
This corrects the MISRA violation C2012-8.4:
A compatible declaration shall be visible when an object or
function with external linkage is defined.

Change-Id: I75c8e6a23ec192417f0e09c226f53c922a43f33c
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-11-05 08:10:24 +00:00
Maheedhar Bollapalli
16c611f8a6 fix(versal): add external declaration
This corrects the MISRA violation C2012-8.4:
A compatible declaration shall be visible when an object or
function with external linkage is defined.

Change-Id: I91817596c5de84b259a5dffcc01a7b1106a5b7a4
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-11-05 08:10:17 +00:00
Maheedhar Bollapalli
6c08d1df0c fix(zynqmp): add external declaration
This corrects the MISRA violation C2012-8.4:
A compatible declaration shall be visible when an object or
function with external linkage is defined.

Change-Id: I0e554972c24b70abd5b563639482f267cd4e1b5e
Signed-off-by: Nithin G <nithing@amd.com>
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-11-05 08:10:10 +00:00
Gavin Liu
b741293f34 feat(mediatek): move plat_helpers.h to the common folder
The plat_helpers.h is identical across various platforms, moved to the
common folder for easier maintenance.

Change-Id: Ic9f10c697fcda7e3cfbf32e67486c9cd28481b8a
Signed-off-by: Gavin Liu <gavin.liu@mediatek.com>
2024-11-05 15:46:19 +08:00
Javier Almansa Sobrino
b17fecd6cf feat(feat_sctlr2): enable FEAT_SCTLR2 for Realm world
Change-Id: I62e769ae796bbeb41741c2c421a5f129d875f5fb
Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
2024-11-05 06:07:36 +02:00
Manish V Badarkhe
0a4cecadd7 Merge changes from topic "dtpm_poc" into integration
* changes:
  feat(docs): add DPE to RSE desing doc
  feat(docs): add RSE provided mboot backends to the threat model
  feat(docs): update mboot threat model
2024-11-04 22:16:46 +01:00
Yann Gautier
13cc1a5064 fix(st-ddr): move skipddc_dat definition
The skipddc_dat variable is only use at one place in dfixlat_program()
function. Move its definition and update there to avoid compilation
issues about variables being set but not used.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I6b5273365f1da26773fc46f898362cb9af170506
2024-11-04 18:45:26 +01:00
Tamas Ban
e4582e4247 feat(docs): add DPE to RSE desing doc
Signed-off-by: Tamas Ban <tamas.ban@arm.com>
Change-Id: Iec38be8a3eb93a54d9b5bc7db7a7ff8c126920ac
2024-11-04 17:28:15 +01:00
Tamas Ban
3849d272e3 feat(docs): add RSE provided mboot backends to the threat model
Add CCA Measured Boot and DPE measured boot backends to
the threat model.

Signed-off-by: Tamas Ban <tamas.ban@arm.com>
Change-Id: I234a2400d00fea606c5312ebddf94e2624463ff8
2024-11-04 17:25:15 +01:00
Abhi Singh
07c2d18f4e feat(docs): update mboot threat model
Restructure Measured Boot threat model for more description and clarity:
- Add what critical assets are to be protected.
- Mention other attributes and the possible attacks.
- Rephrase the section that describes the Measured Boot backends.

Change-Id: I6577a56184992bf16f4aa1b773d1636781cbb049
Signed-off-by: Tamas Ban <tamas.ban@arm.com>
Signed-off-by: Abhi Singh <abhi.singh@arm.com>
2024-11-04 17:21:08 +01:00
Manish V Badarkhe
e01bcfb02c Merge "build: fix grouped targets on Make <= 4.2" into integration 2024-11-04 15:22:35 +01:00
Manish Pandey
0bc3e4a16c Merge "chore(tc): mark TC2 platform as deprecated in Makefile" into integration 2024-11-04 13:38:37 +01:00
Manish Pandey
6ecae4d26f Merge "feat(mt8188): add MT8188 TRNG driver" into integration 2024-11-04 12:17:55 +01:00
Joanna Farley
6a0441bd55 Merge "fix(versal2): ospi data integrity cases are failing" into integration 2024-11-04 09:57:15 +01:00
Maheedhar Bollapalli
a14736268b fix(versal2): ospi data integrity cases are failing
Value of linear mode is in bit 1 and not in bit 0.
Updated logic to clear and set bit 1 for linear mode.

Change-Id: Ia39b2a1b2e35f02edd36e043045b568d231745ba
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-11-04 10:40:35 +05:30
Suyuan Su
b88d1f527b feat(mt8188): add MT8188 TRNG driver
Add MTK TRNG driver for MT8188.

Change-Id: I604edd42ffce9a153e209a015ba454b51da454e1
Signed-off-by: Suyuan Su <suyuan.su@mediatek.com>
Signed-off-by: Gavin Liu <gavin.liu@mediatek.com>
2024-11-04 03:56:21 +01:00
Joanna Farley
dddded1414 Merge changes from topic "xlnx_fix_plat_boolc_fn_ret" into integration
* changes:
  fix(xilinx): avoid altering function parameters
  fix(versal-net): ignore the unused function return value
  fix(zynqmp): ignore the unused function return value
  fix(versal-net): modify conditions to have boolean type
  fix(versal): modify conditions to have boolean type
  fix(xilinx): modify conditions to have boolean type
  fix(zynqmp): modify conditions to have boolean type
2024-11-01 14:29:20 +01:00
Manish V Badarkhe
df32faa761 chore(tc): mark TC2 platform as deprecated in Makefile
Following recent commit [1], update the Makefile to mark
the TC2 platform as deprecated and trigger a build failure
if someone attempts to build the TC0 or TC1 platform.

[1]: https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/31702

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: Ib6ed4933328e35209443ceec59f1e2056881f927
2024-11-01 09:53:31 +00:00
Madhukar Pappireddy
58b25570c9 Merge "feat(ti): implement DM_MANAGED suspend" into integration 2024-11-01 05:20:32 +01:00
Olivier Deprez
e4b7774511 Merge "refactor(fvp): add support for cluster power-on" into integration 2024-10-31 18:31:52 +01:00
Yann Gautier
6d26d75c37 fix(st): set no-pie option when building ST elf file
This elf file is used to build a binary file that concatenates BL2 and
its device tree blob. It then does not need PIE option, and this avoids
the following compilation error with some compiler versions:
  error: PHDR segment not covered by LOAD segment

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I7562e8c1890275fe0409f3a23cc66a8e14ea1ee0
2024-10-31 14:40:41 +01:00
Markus Schneider-Pargmann
9b7550f1f0 feat(ti): implement DM_MANAGED suspend
DM_MANAGED is the new mode to support a model where DM chooses the
suspend mode. Previously suspend always chose deep sleep. Now DM may
also choose other modes like IO+DDR or other modes in the future. DM has
more knowledge about constraints regarding wakeup latency or which parts
of the system need to work continuously, so it is better able to decide
what suspend mode should be used.

To support DM_MANAGED in TF-A the next system mode needs to be fetched
and passed to the enter sleep message. The new ti_sci command to fetch
the next system mode is added which is ti_sci_lpm_get_next_sys_mode().

DM_MANAGED is only enabled if the firmware capability is supported.

Change-Id: I7244e27793cc60e1673271990d7cd840294d6cc3
Signed-off-by: Markus Schneider-Pargmann <msp@baylibre.com>
2024-10-31 10:50:29 +01:00
Boyan Karatotev
25cde5f810 fix(romlib): prevent race condition on the build directory
When building with many cores (-j64), there's a good chance that the
rule to make the build directory is getting executed at the same time as
the rule for romlib.ldflags. On my machine, the former is slower,
resulting in romlib_generator.py not being able to write the file as the
directory doesn't exist yet.

Add an explicit dependency on the build directory for the target.
This ensures that we have a build directory before we start putting
stuff in it.

Change-Id: I120b0dc66c692c759ab1046c735be405b41db87c
Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
2024-10-30 14:15:03 +00:00
Maheedhar Bollapalli
b21e2874f8 fix(xilinx): avoid altering function parameters
This corrects the MISRA violation C2012-17.8:
A function parameter should not be modified.
Local variable is declared and used to process the value
from the argument.

Change-Id: I96b4381c3e05f7065d824592e7b5e5929f6b3627
Signed-off-by: Nithin G <nithing@amd.com>
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-10-30 12:48:43 +05:30
Maheedhar Bollapalli
aa6df8ec32 fix(versal-net): ignore the unused function return value
This correct MISRA violation C2012-17.7:
The value returned by a function having non-void return type shall
be used.
Typecast the function call to void to discard the return value.

Change-Id: I670b476ba16e791e46aaa00feca991e1a4fff227
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-10-30 12:48:30 +05:30
Maheedhar Bollapalli
355ccf895e fix(zynqmp): ignore the unused function return value
This corrects the MISRA violation C2012-17.7:
The value returned by a function having non-void return type shall
be used.
Typecast the function call to void to discard the return value.

Change-Id: I097863843ee125e51c709fa964f0524dc984cebe
Signed-off-by: Nithin G <nithing@amd.com>
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-10-30 12:48:15 +05:30
Maheedhar Bollapalli
83c3c36b1b fix(versal-net): modify conditions to have boolean type
This corrects the MISRA violation C2012-14.4:
The controlling expression of an if statement and the controlling
expression of an iteration-statement shall have essentially
boolean type.
Updated controlling expression to explicitly compare with zero.

Change-Id: If5d9e8400e6c41cbe9e9c69d810fa62192f02bf3
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-10-30 12:48:05 +05:30
Maheedhar Bollapalli
12475663b5 fix(versal): modify conditions to have boolean type
This corrects the MISRA violation C2012-14.4:
The controlling expression of an if statement and the controlling
expression of an iteration-statement shall have essentially
boolean type.
Updated controlling expression to explicitly compare with zero.

Change-Id: Ice208ea07ce88f571f8868692c1e92cbfcd35cf4
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-10-30 07:05:40 +00:00
Maheedhar Bollapalli
e223037525 fix(xilinx): modify conditions to have boolean type
This corrects the MISRA violation C2012-14.4:
The controlling expression of an if statement and the controlling
expression of an iteration-statement shall have essentially
boolean type.
Updated controlling expression to explicitly compare with zero.

Change-Id: I12eb4f4c615131d5ee63425b2ccb4f77f3dffa2e
Signed-off-by: Nithin G <nithing@amd.com>
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-10-30 07:05:39 +00:00
Maheedhar Bollapalli
a42e6e44b8 fix(zynqmp): modify conditions to have boolean type
This corrects the MISRA violation C2012-14.4:
The controlling expression of an if statement and the controlling
expression of an iteration-statement shall have essentially
boolean type.
Updated controlling expression to explicitly compare with zero.

Change-Id: I5bf7070db9bced50f5d37a3d9406301585930b50
Signed-off-by: Nithin G <nithing@amd.com>
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-10-30 07:05:30 +00:00
Govindraj Raja
7e9d2a56e7 Merge "refactor(bl): remove un-necessary variable" into integration 2024-10-29 16:46:54 +01:00
Joanna Farley
a539dce9d0 Merge changes from topic "xlnx_fix_plat_const_preced" into integration
* changes:
  fix(versal2): explicitly check operators precedence
  fix(versal-net): explicitly check operators precedence
  fix(versal): explicitly check operators precedence
  fix(xilinx): explicitly check operators precedence
  fix(zynqmp): explicitly check operators precedence
  fix(versal2): add const qualifier
  fix(versal): add const qualifier
  fix(zynqmp): add const qualifier
2024-10-29 12:11:25 +01:00
Manish Pandey
d684e7fbb3 Merge "feat(mt8186): add common and MT8186 TRNG driver" into integration 2024-10-29 12:02:32 +01:00
Suyuan Su
8c1740e2f2 feat(mt8186): add common and MT8186 TRNG driver
Introduce a common RNG driver along with the specific driver for MT8186
platform.

Change-Id: I9f4437b6a4b3e8564a035ff5abb681bcfe85bd1e
Signed-off-by: Suyuan Su <suyuan.su@mediatek.com>
Signed-off-by: Gavin Liu <gavin.liu@mediatek.com>
2024-10-29 09:42:19 +08:00
Mark Dykes
15d668c5a1 Merge "fix(rockchip): fix "unexpected token" error with clang" into integration 2024-10-28 23:13:38 +01:00