History log of /rk3399_ARM-atf/plat/ (Results 1851 – 1875 of 8950)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
aaaf2cc313-Mar-2024 Sona Mathew <sonarebecca.mathew@arm.com>

refactor(cpufeat): add macro to simplify is_feat_xx_present

In this patch, we are trying to introduce the wrapper macro
CREATE_FEATURE_PRESENT to get the following capability and
align it for all th

refactor(cpufeat): add macro to simplify is_feat_xx_present

In this patch, we are trying to introduce the wrapper macro
CREATE_FEATURE_PRESENT to get the following capability and
align it for all the features:

-> is_feat_xx_present(): Does Hardware implement the feature.
-> uniformity in naming the function across multiple features.
-> improved readability

The is_feat_xx_present() is implemented to check if the hardware
implements the feature and does not take into account the
ENABLE_FEAT_XXX flag enabled/disabled in software.

- CREATE_FEATURE_PRESENT(name, idreg, shift, mask, idval)
The wrapper macro reduces the function to a single line and
creates the is_feat_xx_present function that checks the
id register based on the shift and mask values and compares
this against a determined idvalue.

Change-Id: I7b91d2c9c6fbe55f94c693aa1b2c50be54fb9ecc
Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>

show more ...

48f1bc9f02-May-2024 Joanna Farley <joanna.farley@arm.com>

Merge "feat(zynqmp): remove unused pm_get_proc_by_node()" into integration

b109b00602-May-2024 Joanna Farley <joanna.farley@arm.com>

Merge "fix(xilinx): check proc variable before use" into integration

b03ba48016-Apr-2024 Ronak Jain <ronak.jain@amd.com>

feat(zynqmp): remove unused pm_get_proc_by_node()

The pm_get_proc_by_node() is not used anywhere. Hence remove the
same.

Change-Id: Ifd68dd524cae0a9f1684d943019563027859ccea
Signed-off-by: Ronak Ja

feat(zynqmp): remove unused pm_get_proc_by_node()

The pm_get_proc_by_node() is not used anywhere. Hence remove the
same.

Change-Id: Ifd68dd524cae0a9f1684d943019563027859ccea
Signed-off-by: Ronak Jain <ronak.jain@amd.com>

show more ...

5993af4511-Apr-2024 Marek Behún <marek.behun@nic.cz>

fix(plat/marvell/a3k): reset GIC before resetting via CM3 secure coprocessor

Add code that acknowledges all SoC interrupts and resets the Generic
Interrupt Controller before resetting the SoC via th

fix(plat/marvell/a3k): reset GIC before resetting via CM3 secure coprocessor

Add code that acknowledges all SoC interrupts and resets the Generic
Interrupt Controller before resetting the SoC via the Cortex-M3 secure
coprocessor.

Recall that Turris MOX has a HW bug wherein a SoC reset initiated by
writing the magic value to the North Bridge Warm Reset register may
randomly freeze the board.

Back in 2021 we introduced the CM3_SYSTEM_RESET build option for the
Armada 3700 platform, which, when enabled, adds code to the PSCI reset
handler so that the SoC reset is done by requesting the firmware in the
Cortex-M3 secure coprocessor to do it, instead of writing the Warm Reset
register.

The secure coprocessor firmware tried various things to put the board
into a state where the SoC reset circuit would work correctly. This
managed to fix the issue for some boards, but not for all of them.

Another considered method to overcome this issue was to reset all the
SoC peripheral controllers one by one by writing to specific registers,
instead of triggering the SoC reset circuit via the Warm Reset register.
This method was not used because until now, there was one peripheral
that I could not find a way how to reset properly: the Generic Interrupt
Controller (GIC).

After 3 years I have finally found a way how to reset the GIC, and it
needs to be done by the main processor, before the secure coprocessor
resets the main processor.

Change-Id: Icc23251ef97738b6b48af514d5118440ec21cdd7
Signed-off-by: Marek Behún <marek.behun@nic.cz>

show more ...

753c49d501-May-2024 Manish Pandey <manish.pandey2@arm.com>

Merge "feat(mt8188): remove apusys kernel handler usage constraints" into integration

0bd2075e24-Apr-2024 Govindraj Raja <govindraj.raja@arm.com>

build(fvp): make all builds unconditional

commit@138221c2457b9d04101b84084c07d576b0eb5a51 reduced items that
should be build due to SRAM size limitations.

But newer models from 11.19 onwards suppor

build(fvp): make all builds unconditional

commit@138221c2457b9d04101b84084c07d576b0eb5a51 reduced items that
should be build due to SRAM size limitations.

But newer models from 11.19 onwards support to set SRAM size greater
than 256KB. So remove all dependency and conditional builds for FVP.

Change-Id: I38684e100450b74fdda0d685775e2cbce92170b6
Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>

show more ...

b3a9737c14-Apr-2024 Leo Yan <leo.yan@arm.com>

refactor(tc): add platform specific DT files

Currently, the DT binding uses the file 'tc.dts' as a central place for
all TC platforms. And the variables (for different platforms, or FVP vs
FPGA, etc

refactor(tc): add platform specific DT files

Currently, the DT binding uses the file 'tc.dts' as a central place for
all TC platforms. And the variables (for different platforms, or FVP vs
FPGA, etc.) are maintained in 'tc_vers.dtsi'.

This patch renames 'tc.dts' to 'tc-base.dtsi' and creates an individual
.dts file for every platform. The purpose is to use 'tc-base.dtsi' for
maintaining common DT binding and every platform's specific definitions
will be moved into its own .dts file. This is a preparation for
sequential refactoring.

It changes to include the header files in platform DTS files but not in
the 'tc-base.dtsi'. This can allow 'tc-base.dtsi' is general enough and
platform DTS files covers platform specific defintions.

Change-Id: I034fb3f8836bcea36e8ad8ae01de41127693b0c6
Signed-off-by: Leo Yan <leo.yan@arm.com>

show more ...

154eb0a229-Apr-2024 Leo Yan <leo.yan@arm.com>

fix(tc): enable FEAT_MTE2

Commit c282384db ("refactor(mte): remove mte, mte_perm") removes the
option FEAT_MTE and introduces FEAT_MTE2 option. Afterwards, the
FEAT_MTE2 option is missed on the TC p

fix(tc): enable FEAT_MTE2

Commit c282384db ("refactor(mte): remove mte, mte_perm") removes the
option FEAT_MTE and introduces FEAT_MTE2 option. Afterwards, the
FEAT_MTE2 option is missed on the TC platform and the feature is
disabled. As a result, it causes the panic in secure world.

This patch enables the FEAT_MTE2 option for TC platform to allow the
secure world can access the MTE registers properly.

Change-Id: If697236aa59bf4fb374e0ff43b53455ac2154e9c
Fixes: c282384db ("refactor(mte): remove mte, mte_perm")
Signed-off-by: Leo Yan <leo.yan@arm.com>

show more ...

784092ee11-Mar-2024 Chris Kay <chris.kay@arm.com>

build(rzg): separate BL2 and BL31 SREC generation

This small change creates individual Make non-phony targets for the Bl2
and BL31 SREC binaries to avoid rebuilding them unnecessarily.

Change-Id: I

build(rzg): separate BL2 and BL31 SREC generation

This small change creates individual Make non-phony targets for the Bl2
and BL31 SREC binaries to avoid rebuilding them unnecessarily.

Change-Id: Ia8e5db0e4a968d4b379fdb66123b6a8f20933bf5
Signed-off-by: Chris Kay <chris.kay@arm.com>

show more ...

4d1289bd11-Mar-2024 Chris Kay <chris.kay@arm.com>

build(rcar): separate BL2 and BL31 SREC generation

This small change creates individual Make non-phony targets for the Bl2
and BL31 SREC binaries to avoid rebuilding them unnecessarily.

Change-Id:

build(rcar): separate BL2 and BL31 SREC generation

This small change creates individual Make non-phony targets for the Bl2
and BL31 SREC binaries to avoid rebuilding them unnecessarily.

Change-Id: Ibb8880bb5c00a0956fc78d252fcc56391fbfe439
Signed-off-by: Chris Kay <chris.kay@arm.com>

show more ...

758ccb8008-Mar-2024 Chris Kay <chris.kay@arm.com>

build: remove `MAKE_BUILD_STRINGS` function

This function causes the build message to be generated and compiled in
two different ways, with one way done inside `build_macros.mk` and the
other done i

build: remove `MAKE_BUILD_STRINGS` function

This function causes the build message to be generated and compiled in
two different ways, with one way done inside `build_macros.mk` and the
other done inside `windows.mk`, mostly because it's done by generating
the C file on the command line.

We can instead replace this whole build message generation sequence with
a simple standard C compilation command and a normal C file.

Change-Id: I8bc136380c9585ddeec9a11154ee39ef70526f81
Signed-off-by: Chris Kay <chris.kay@arm.com>

show more ...

0c77651f26-Apr-2024 Karl Li <karl.li@mediatek.corp-partner.google.com>

feat(mt8188): remove apusys kernel handler usage constraints

It is expected that kernel can control the flow of the TF-A operations.
This patch remove the apusys kernel handler usage constraints, ma

feat(mt8188): remove apusys kernel handler usage constraints

It is expected that kernel can control the flow of the TF-A operations.
This patch remove the apusys kernel handler usage constraints, making
the operations all controlled on kernel side.

Signed-off-by: Karl Li <karl.li@mediatek.com>
Change-Id: Idc205a2cf23e1ff5f1920658a3b089c823f0288a

show more ...

6704cba226-Mar-2024 Sieu Mun Tang <sieu.mun.tang@intel.com>

fix(intel): add in watchdog for QSPI driver

ATF->Linux boot with QSPI boot source need to enable watchdog
so that it will not hang.

Change-Id: Id2a9ceebb1c89f711992a424f4394265efc6b388
Signed-off-b

fix(intel): add in watchdog for QSPI driver

ATF->Linux boot with QSPI boot source need to enable watchdog
so that it will not hang.

Change-Id: Id2a9ceebb1c89f711992a424f4394265efc6b388
Signed-off-by: Sieu Mun Tang <sieu.mun.tang@intel.com>
Signed-off-by: Jit Loon Lim <jit.loon.lim@intel.com>

show more ...

44ddee6f20-Dec-2023 Alex Dobrescu <alex.dobrescu@arm.com>

fix(tc): increase stack size when TRUSTED_BOARD_BOOT=0

The stack is too small for VERBOSE logging when secure world is disabled
as there is a recursive call when printing the translation table state

fix(tc): increase stack size when TRUSTED_BOARD_BOOT=0

The stack is too small for VERBOSE logging when secure world is disabled
as there is a recursive call when printing the translation table state
which causes a crash.

Changing the stack to the same value regardless of trusted boot.

Change-Id: I12298b33e47ae5206f74370262edce06b8a75d99
Signed-off-by: Alex Dobrescu <alex.dobrescu@arm.com>
Signed-off-by: Leo Yan <leo.yan@arm.com>

show more ...

a1901c7d26-Apr-2024 Manish V Badarkhe <manish.badarkhe@arm.com>

Merge changes from topic "rss_rse_rename" into integration

* changes:
refactor(changelog): change all occurrences of RSS to RSE
refactor(qemu): change all occurrences of RSS to RSE
refactor(fv

Merge changes from topic "rss_rse_rename" into integration

* changes:
refactor(changelog): change all occurrences of RSS to RSE
refactor(qemu): change all occurrences of RSS to RSE
refactor(fvp): change all occurrences of RSS to RSE
refactor(fiptool): change all occurrences of RSS to RSE
refactor(psa): change all occurrences of RSS to RSE
refactor(fvp): remove leftovers from rss measured boot support
refactor(tc): change all occurrences of RSS to RSE
docs: change all occurrences of RSS to RSE
refactor(measured-boot): change all occurrences of RSS to RSE
refactor(rse): change all occurrences of RSS to RSE
refactor(psa): rename all 'rss' files to 'rse'
refactor(tc): rename all 'rss' files to 'rse'
docs: rename all 'rss' files to 'rse'
refactor(measured-boot): rename all 'rss' files to 'rse'
refactor(rss): rename all 'rss' files to 'rse'

show more ...


/rk3399_ARM-atf/changelog.yaml
/rk3399_ARM-atf/docs/about/features.rst
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/design_documents/index.rst
/rk3399_ARM-atf/docs/design_documents/measured_boot.rst
/rk3399_ARM-atf/docs/design_documents/rse.rst
/rk3399_ARM-atf/docs/porting-guide.rst
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/rse_attestation_flow.puml
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/rse_measured_boot_flow.puml
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/tfa_rse_dfd.puml
/rk3399_ARM-atf/docs/resources/diagrams/rse_attestation_flow.svg
/rk3399_ARM-atf/docs/resources/diagrams/rse_measured_boot_flow.svg
/rk3399_ARM-atf/docs/threat_model/firmware_threat_model/index.rst
/rk3399_ARM-atf/docs/threat_model/firmware_threat_model/threat_model_rse_interface.rst
/rk3399_ARM-atf/docs/threat_model/supply_chain_threat_model.rst
/rk3399_ARM-atf/drivers/arm/rse/rse_comms.c
/rk3399_ARM-atf/drivers/arm/rse/rse_comms.mk
/rk3399_ARM-atf/drivers/arm/rse/rse_comms_protocol.c
/rk3399_ARM-atf/drivers/arm/rse/rse_comms_protocol.h
/rk3399_ARM-atf/drivers/arm/rse/rse_comms_protocol_common.h
/rk3399_ARM-atf/drivers/arm/rse/rse_comms_protocol_embed.c
/rk3399_ARM-atf/drivers/arm/rse/rse_comms_protocol_embed.h
/rk3399_ARM-atf/drivers/arm/rse/rse_comms_protocol_pointer_access.c
/rk3399_ARM-atf/drivers/arm/rse/rse_comms_protocol_pointer_access.h
/rk3399_ARM-atf/drivers/measured_boot/rse/dice_prot_env.c
/rk3399_ARM-atf/drivers/measured_boot/rse/dice_prot_env.mk
/rk3399_ARM-atf/drivers/measured_boot/rse/qcbor.mk
/rk3399_ARM-atf/drivers/measured_boot/rse/rse_measured_boot.c
/rk3399_ARM-atf/drivers/measured_boot/rse/rse_measured_boot.mk
/rk3399_ARM-atf/include/drivers/arm/rse_comms.h
/rk3399_ARM-atf/include/drivers/measured_boot/rse/dice_prot_env.h
/rk3399_ARM-atf/include/drivers/measured_boot/rse/rse_measured_boot.h
/rk3399_ARM-atf/include/lib/psa/delegated_attestation.h
/rk3399_ARM-atf/include/lib/psa/dice_protection_environment.h
/rk3399_ARM-atf/include/lib/psa/measured_boot.h
/rk3399_ARM-atf/include/lib/psa/psa_manifest/sid.h
/rk3399_ARM-atf/include/lib/psa/rse_crypto_defs.h
/rk3399_ARM-atf/include/lib/psa/rse_platform_api.h
/rk3399_ARM-atf/lib/psa/delegated_attestation.c
/rk3399_ARM-atf/lib/psa/dice_protection_environment.c
/rk3399_ARM-atf/lib/psa/measured_boot.c
/rk3399_ARM-atf/lib/psa/measured_boot_private.h
/rk3399_ARM-atf/lib/psa/rse_platform.c
arm/board/fvp/fvp_common_measured_boot.c
arm/board/fvp/fvp_plat_attest_token.c
arm/board/fvp/fvp_realm_attest_key.c
arm/board/tc/include/platform_def.h
arm/board/tc/include/tc_plat.h
arm/board/tc/nv_counter_test.c
arm/board/tc/plat_def_fip_uuid.h
arm/board/tc/platform.mk
arm/board/tc/platform_test.mk
arm/board/tc/rotpk_test.c
arm/board/tc/rse_ap_test_stubs.c
arm/board/tc/rse_ap_tests.c
arm/board/tc/rse_ap_testsuites.c
arm/board/tc/rse_ap_testsuites.h
arm/board/tc/tc_bl1_dpe.c
arm/board/tc/tc_bl1_measured_boot.c
arm/board/tc/tc_bl2_dpe.c
arm/board/tc/tc_bl2_measured_boot.c
arm/board/tc/tc_common_dpe.c
arm/board/tc/tc_common_measured_boot.c
arm/board/tc/tc_dpe_cert.h
arm/board/tc/tc_plat.c
qemu/common/qemu_plat_attest_token.c
qemu/common/qemu_realm_attest_key.c
/rk3399_ARM-atf/tools/fiptool/plat_fiptool/arm/board/tc/plat_def_uuid_config.c
f9d40b5c26-Apr-2024 Manish Pandey <manish.pandey2@arm.com>

Merge changes from topic "hm/handoff" into integration

* changes:
feat(handoff): add support for RESET_TO_BL2
feat(arm): support FW handoff b/w BL1 & BL2
feat(handoff): add TL source files to

Merge changes from topic "hm/handoff" into integration

* changes:
feat(handoff): add support for RESET_TO_BL2
feat(arm): support FW handoff b/w BL1 & BL2
feat(handoff): add TL source files to BL1
feat(handoff): add TE's for BL1 handoff interface
refactor(bl1): clean up bl2 layout calculation
feat(arm): support FW handoff b/w BL2 & BL31

show more ...

3d9fea9418-Jan-2024 Sascha Hauer <s.hauer@pengutronix.de>

feat(imx8mp): optionally take params from BL2

Optionally take params from BL2 to offer more flexibility to BL2 on
where and if a BL32 image is expected. This uses imx_bl31_params_parse()
to check if

feat(imx8mp): optionally take params from BL2

Optionally take params from BL2 to offer more flexibility to BL2 on
where and if a BL32 image is expected. This uses imx_bl31_params_parse()
to check if arg0 can safely be accessed as a pointer and actually
contains a bl_params_t structure. If not, the hardcoded parameter
values are used as before.

Change-Id: I44537ba2baa7543e459e5691b69df14b0bd6e942
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>

show more ...

c37a877e18-Jan-2024 Sascha Hauer <s.hauer@pengutronix.de>

feat(imx8mn): optionally take params from BL2

Optionally take params from BL2 to offer more flexibility to BL2 on
where and if a BL32 image is expected. This uses imx_bl31_params_parse()
to check if

feat(imx8mn): optionally take params from BL2

Optionally take params from BL2 to offer more flexibility to BL2 on
where and if a BL32 image is expected. This uses imx_bl31_params_parse()
to check if arg0 can safely be accessed as a pointer and actually
contains a bl_params_t structure. If not, the hardcoded parameter
values are used as before.

Change-Id: Ia12d35778f4d550860e517f2a1f5c5d062f3283a
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>

show more ...

11d32b3318-Jan-2024 Sascha Hauer <s.hauer@pengutronix.de>

feat(imx8mm): optionally take params from BL2

Optionally take params from BL2 to offer more flexibility to BL2 on
where and if a BL32 image is expected. This uses imx_bl31_params_parse()
to check if

feat(imx8mm): optionally take params from BL2

Optionally take params from BL2 to offer more flexibility to BL2 on
where and if a BL32 image is expected. This uses imx_bl31_params_parse()
to check if arg0 can safely be accessed as a pointer and actually
contains a bl_params_t structure. If not, the hardcoded parameter
values are used as before.

Change-Id: I06b3012c67e43ea1e42946d863226bd93ccd4638
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>

show more ...

02d1813e18-Jan-2024 Sascha Hauer <s.hauer@pengutronix.de>

feat(imx93): optionally take params from BL2

Optionally take params from BL2 to offer more flexibility to BL2 on
where and if a BL32 image is expected. This uses imx_bl31_params_parse()
to check if

feat(imx93): optionally take params from BL2

Optionally take params from BL2 to offer more flexibility to BL2 on
where and if a BL32 image is expected. This uses imx_bl31_params_parse()
to check if arg0 can safely be accessed as a pointer and actually
contains a bl_params_t structure. If not, the hardcoded parameter
values are used as before.

Change-Id: Iec885405efd31a6bf6c0e6c532f8d2f31c023333
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>

show more ...

7eae1db018-Jan-2024 Sascha Hauer <s.hauer@pengutronix.de>

feat(imx): add helper to take params from BL2

So far the i.MX BL31 doesn't take any parameters. This means the BL32
image base address and whether or not a BL32 image is used at all has to
be hardco

feat(imx): add helper to take params from BL2

So far the i.MX BL31 doesn't take any parameters. This means the BL32
image base address and whether or not a BL32 image is used at all has to
be hardcoded in BL31.

This adds a helper function that allows to take params from BL2 safely.
On i.MX BL2 is usually U-Boot SPL which passes random values in arg0,
so make sure arg0 is within the internal SRAM range before accessing it
as a pointer. Also make sure arg0 is sufficiently aligned and the header
type and version is correct.

Change-Id: Idab8013a1d6dabf50a83c75f3e6f831de4a537e9
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>

show more ...

f019c80123-Apr-2024 Harrison Mutai <harrison.mutai@arm.com>

feat(handoff): add support for RESET_TO_BL2

When BL2 is enabled as the entrypoint in the reset vector, none of the
TL initialisation ordinarily performed in BL1 will have been done. This
change ensu

feat(handoff): add support for RESET_TO_BL2

When BL2 is enabled as the entrypoint in the reset vector, none of the
TL initialisation ordinarily performed in BL1 will have been done. This
change ensures that BL2 has a secure TL to pass information onto BL31
through.

Change-Id: I553b0b7aac9390cd6a2d63471b81ddc72cc40a60
Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>

show more ...

9c11ed7e22-Dec-2023 Harrison Mutai <harrison.mutai@arm.com>

feat(arm): support FW handoff b/w BL1 & BL2

Leverage the framework between BL1 and BL2. Migrate all handoff
structures to the TL.

Change-Id: I79ff3a319596b5656184cde10b5204b10a4d03bb
Signed-off-by:

feat(arm): support FW handoff b/w BL1 & BL2

Leverage the framework between BL1 and BL2. Migrate all handoff
structures to the TL.

Change-Id: I79ff3a319596b5656184cde10b5204b10a4d03bb
Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>

show more ...

6a4da29004-Jan-2024 Harrison Mutai <harrison.mutai@arm.com>

refactor(bl1): clean up bl2 layout calculation

Layout calculation is spread out between core BL1 logic and common
platform code. Relocate these into common platform code so they are
organised logica

refactor(bl1): clean up bl2 layout calculation

Layout calculation is spread out between core BL1 logic and common
platform code. Relocate these into common platform code so they are
organised logically.

Change-Id: I8b05403e41b800957a0367316cecd373d10bb1a4
Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>

show more ...

1...<<71727374757677787980>>...358