History log of /rk3399_ARM-atf/common/ (Results 76 – 100 of 345)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
b57e16a403-Mar-2023 Andre Przywara <andre.przywara@arm.com>

refactor(amu): use new AMU feature check routines

The AMU extension code was using its own feature detection routines.
Replace them with the generic CPU feature handlers (defined in
arch_features.h)

refactor(amu): use new AMU feature check routines

The AMU extension code was using its own feature detection routines.
Replace them with the generic CPU feature handlers (defined in
arch_features.h), which get updated to cover the v1p1 variant as well.

Change-Id: I8540f1e745d7b02a25a6c6cdf2a39d6f5e21f2aa
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

d23acc9e21-Mar-2023 Andre Przywara <andre.przywara@arm.com>

refactor(amu): unify ENABLE_AMU and ENABLE_FEAT_AMUv1

So far we have the ENABLE_AMU build option to include AMU register
handling code for enabling and context switch. There is also an
ENABLE_FEAT_A

refactor(amu): unify ENABLE_AMU and ENABLE_FEAT_AMUv1

So far we have the ENABLE_AMU build option to include AMU register
handling code for enabling and context switch. There is also an
ENABLE_FEAT_AMUv1 option, solely to protect the HAFGRTR_EL2 system
register handling. The latter needs some alignment with the new feature
scheme, but it conceptually overlaps with the ENABLE_AMU option.

Since there is no real need for two separate options, unify both into a
new ENABLE_FEAT_AMU name in a first step. This is mostly just renaming at
this point, a subsequent patch will make use of the new feature handling
scheme.

Change-Id: I97d8a55bdee2ed1e1509fa9f2b09fd0bdd82736e
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl31/bl31.mk
/rk3399_ARM-atf/bl32/sp_min/sp_min.mk
feat_detect.c
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/components/activity-monitors.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/drivers/arm/gic/v3/gic600_multichip.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gic600_multichip_private.h
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3.mk
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_main.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_private.h
/rk3399_ARM-atf/drivers/mmc/mmc.c
/rk3399_ARM-atf/include/arch/aarch64/arch_features.h
/rk3399_ARM-atf/include/drivers/arm/gic600_multichip.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78c.h
/rk3399_ARM-atf/include/lib/smccc.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a75.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78_ae.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78c.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n1.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n2.S
/rk3399_ARM-atf/lib/cpus/aarch64/rainier.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/el3_runtime/aarch32/context_mgmt.c
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/extensions/amu/amu.mk
/rk3399_ARM-atf/lib/psa/delegated_attestation.c
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_plat_attest_token.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_realm_attest_key.c
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp_r/platform.mk
/rk3399_ARM-atf/plat/arm/board/n1sdp/n1sdp_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/rdn1edge/rdn1edge_plat.c
/rk3399_ARM-atf/plat/arm/board/rdn2/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn2/rdn2_plat.c
/rk3399_ARM-atf/plat/arm/board/rdv1/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdv1mc/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdv1mc/rdv1mc_plat.c
/rk3399_ARM-atf/plat/arm/board/tc/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/mediatek/common/common_config.mk
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/qti/msm8916/platform.mk
/rk3399_ARM-atf/plat/xilinx/common/pm_service/pm_ipi.c
/rk3399_ARM-atf/plat/xilinx/versal_net/plat_psci_pm.c
/rk3399_ARM-atf/plat/xilinx/versal_net/pm_service/pm_client.c
ac17e52c22-Feb-2023 Andre Przywara <andre.przywara@arm.com>

refactor(cpufeat): enable FEAT_RNG for FEAT_STATE_CHECKED

At the moment we only support for FEAT_RNG to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime

refactor(cpufeat): enable FEAT_RNG for FEAT_STATE_CHECKED

At the moment we only support for FEAT_RNG to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (FEAT_RNG=2), by splitting
is_armv8_5_rng_present() into an ID register reading function and a second
function to report the support status. That function considers both build
time settings and runtime information (if needed), and is used before we
access the RNDRRS system register.

Change the QEMU platform default to the now supported dynamic option (=2),
so the right decision can be made by the code at runtime.

Change-Id: I1a4a538d5ad395fead7324f297d0056bda4f84cb
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

623f614022-Feb-2023 Andre Przywara <andre.przywara@arm.com>

refactor(cpufeat): align FEAT_SEL2 to new feature handling

In ARMv8.4, the EL2 exception level got added to the secure world.
Adapt and rename the existing is_armv8_4_sel2_present() function, to
ali

refactor(cpufeat): align FEAT_SEL2 to new feature handling

In ARMv8.4, the EL2 exception level got added to the secure world.
Adapt and rename the existing is_armv8_4_sel2_present() function, to
align its handling with the other CPU features.

Change-Id: If11e1942fdeb63c63f36ab9e89be810347d1a952
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

d5384b6927-Jan-2023 Andre Przywara <andre.przywara@arm.com>

refactor(cpufeat): enable FEAT_NV2 for FEAT_STATE_CHECKED

At the moment we only support for FEAT_NV2 to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime

refactor(cpufeat): enable FEAT_NV2 for FEAT_STATE_CHECKED

At the moment we only support for FEAT_NV2 to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (CTX_INCLUDE_NEVE_REGS=2), by
splitting get_armv8_4_feat_nv_support() into an ID register reading
function and a second function to report the support status. That
function considers both build time settings and runtime information
(if needed), and is used before we access the VNCR_EL2 system register.
Also move the context saving code from assembly to C, and use the new
is_feat_nv2_supported() function to guard its execution.

Change the FVP platform default to the now supported dynamic option (=2),
so the right decision can be made by the code at runtime.

Change-Id: I85b080641995fb72cfd4ac933f7a3f75770c2cb9
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

1223d2a027-Jan-2023 Andre Przywara <andre.przywara@arm.com>

refactor(cpufeat): enable FEAT_TWED for FEAT_STATE_CHECKED

At the moment we only support FEAT_TWED to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime d

refactor(cpufeat): enable FEAT_TWED for FEAT_STATE_CHECKED

At the moment we only support FEAT_TWED to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (ENABLE_FEAT_TWED=2), by splitting
is_armv8_6_twed_present() into an ID register reading function and a
second function to report the support status. That function considers
both build time settings and runtime information (if needed), and is
used before we set the trap delay time.

Change the FVP platform default to the now supported dynamic option (=2),
so the right decision can be made by the code at runtime.

Change-Id: I58626230ef0af49886c0a197abace01e81f661d2
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

7db710f017-Nov-2022 Andre Przywara <andre.przywara@arm.com>

refactor(cpufeat): enable FEAT_CSV2_2 for FEAT_STATE_CHECKED

At the moment we only support FEAT_CSV2_2 to be either unconditionally
compiled in, or to be not supported at all.

Add support for runti

refactor(cpufeat): enable FEAT_CSV2_2 for FEAT_STATE_CHECKED

At the moment we only support FEAT_CSV2_2 to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (ENABLE_FEAT_CSV2_2=2), by splitting
is_armv8_0_feat_csv2_2_present() into an ID register reading function
and a second function to report the support status. That function
considers both build time settings and runtime information (if needed),
and is used before we access the SCXTNUM_EL2 system register.
Also move the context saving code from assembly to C, and use the new
is_feat_csv2_2_supported() function to guard its execution.

Change the FVP platform default to the now supported dynamic option (=2),
so the right decision can be made by the code at runtime.

Change-Id: I89c7bc883e6a65727fdbdd36eb3bfbffb2196da7
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

b8f03d2917-Nov-2022 Andre Przywara <andre.przywara@arm.com>

refactor(cpufeat): enable FEAT_ECV for FEAT_STATE_CHECKED

At the moment we only support FEAT_ECV to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime det

refactor(cpufeat): enable FEAT_ECV for FEAT_STATE_CHECKED

At the moment we only support FEAT_ECV to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (ENABLE_FEAT_ECV=2), by splitting
is_feat_ecv_present() into an ID register reading function and a second
function to report the support status. That function considers both
build time settings and runtime information (if needed), and is used
before we access the CNTPOFF_EL2 system register.
Also move the context saving code from assembly to C, and use the new
is_feat_ecv_supported() function to guard its execution.

Change the FVP platform default to the now supported dynamic option (=2),
so the right decision can be made by the code at runtime.

Change-Id: I4acd5384929f1902b62a87ae073aafa1472cd66b
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

4f5ef84926-Jan-2023 Andre Przywara <andre.przywara@arm.com>

refactor(cpufeat): enable FEAT_PAN for FEAT_STATE_CHECKED

At the moment we only support FEAT_PAN to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime det

refactor(cpufeat): enable FEAT_PAN for FEAT_STATE_CHECKED

At the moment we only support FEAT_PAN to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (ENABLE_FEAT_PAN=2), by splitting
is_armv8_1_pan_present() into an ID register reading function and a
second function to report the support status. That function considers
both build time settings and runtime information (if needed), and is
used before we PAN specific setup.

Change the FVP platform default to the now supported dynamic option (=2),
so the right decision can be made by the code at runtime.

Change-Id: I58e5fe8d3c9332820391c7d93a8fb9dba4cf754a
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

2407709817-Nov-2022 Andre Przywara <andre.przywara@arm.com>

refactor(cpufeat): align FEAT_SB to new feature handling

FEAT_SB introduces a new speculation barrier instruction, that is more
lightweight than a "dsb; isb" combination. We use that in a hot path,

refactor(cpufeat): align FEAT_SB to new feature handling

FEAT_SB introduces a new speculation barrier instruction, that is more
lightweight than a "dsb; isb" combination. We use that in a hot path,
so cannot afford and don't want a runtime detection mechanism.
Nevertheless align the implementation of the feature detection part
with the other features, but renaming the detection function, and
updating the FEAT_DETECTION code. Also update the documentation.

Change-Id: I2b86dfd1ad259c3bb99ab5186e2911ace454b54c
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

1f8be7fc21-Mar-2023 Andre Przywara <andre.przywara@arm.com>

fix(mpam): feat_detect: support major/minor

The MPAM CPU ID version number is split between two CPU ID register
fields, with the second being a fractional field, allowing for instance
for a "MPAM v1

fix(mpam): feat_detect: support major/minor

The MPAM CPU ID version number is split between two CPU ID register
fields, with the second being a fractional field, allowing for instance
for a "MPAM v1.1" number. The read_feat_mpam_version() function merges
those two fields to form a "4.4" fixed point fractional number, but the
limit check in the check_feature() function was not taking this into
account.
To support MPAM major version 1, extend the limit from "1" to "17", to
cover the current maximum version of "MPAM v1.1".
This fixes FVP runs with "has_mpam=1" and FEATURE_DETECTION enabled.

Change-Id: Icb557741d597e4e43eaf658b78f18af6e9fb439e
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

ea735bf517-Nov-2022 Andre Przywara <andre.przywara@arm.com>

refactor(cpufeat): enable FEAT_VHE for FEAT_STATE_CHECKED

At the moment we only support FEAT_VHE to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime det

refactor(cpufeat): enable FEAT_VHE for FEAT_STATE_CHECKED

At the moment we only support FEAT_VHE to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (ENABLE_FEAT_VHE=2), by splitting
is_armv8_1_vhe_present() into an ID register reading function and a
second function to report the support status. That function considers
both build time settings and runtime information (if needed), and is
used before we access VHE related registers.
Also move the context saving code from assembly to C, and use the new
is_feat_vhe_supported() function to guard its execution.

Enable VHE in its runtime detection version for all FVP builds.

Change-Id: Ib397cd0c83e8c709bd6fed603560e39901fa672b
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

9448f2b817-Nov-2022 Andre Przywara <andre.przywara@arm.com>

refactor(mpam): enable FEAT_MPAM for FEAT_STATE_CHECKED

At the moment we only support FEAT_MPAM to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime dete

refactor(mpam): enable FEAT_MPAM for FEAT_STATE_CHECKED

At the moment we only support FEAT_MPAM to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (ENABLE_MPAM_FOR_LOWER_ELS=2), by
splitting get_mpam_version() into an ID register reading
function and a second function to report the support status. That
function considers both build time settings and runtime information (if
needed), and is used before we access MPAM related registers.
Also move the context saving code from assembly to C, and use the new
is_feat_mpam_supported() function to guard its execution.

ENABLE_MPAM_FOR_LOWER_ELS defaults to 0, so add a stub enable function
to cover builds with compiler optimisations turned off. The unused
mpam_enable() function call will normally be optimised away (because it
would never be called), but with -O0 the compiler will leave the symbol
in the object file.

Change-Id: I531d87cb855a7c43471f861f625b5a6d4bc61313
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...


/rk3399_ARM-atf/.husky/pre-commit.copyright
/rk3399_ARM-atf/.readthedocs.yaml
/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl2/bl2.mk
/rk3399_ARM-atf/bl2/bl2_main.c
/rk3399_ARM-atf/bl31/bl31.mk
feat_detect.c
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/plat/arm/corstone1000/index.rst
/rk3399_ARM-atf/docs/plat/stm32mp1.rst
/rk3399_ARM-atf/drivers/nxp/timer/nxp_timer.c
/rk3399_ARM-atf/drivers/ufs/ufs.c
/rk3399_ARM-atf/include/arch/aarch32/arch_features.h
/rk3399_ARM-atf/include/arch/aarch32/el3_common_macros.S
/rk3399_ARM-atf/include/arch/aarch64/arch.h
/rk3399_ARM-atf/include/arch/aarch64/arch_features.h
/rk3399_ARM-atf/include/arch/aarch64/arch_helpers.h
/rk3399_ARM-atf/include/arch/aarch64/el2_common_macros.S
/rk3399_ARM-atf/include/arch/aarch64/el3_common_macros.S
/rk3399_ARM-atf/include/drivers/ufs.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cpu_macros.S
/rk3399_ARM-atf/include/lib/el3_runtime/aarch64/context.h
/rk3399_ARM-atf/include/lib/extensions/mpam.h
/rk3399_ARM-atf/include/lib/extensions/spe.h
/rk3399_ARM-atf/include/lib/libc/cdefs.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/lib/aarch64/misc_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch32/cpu_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/cpu_helpers.S
/rk3399_ARM-atf/lib/cpus/errata_report.c
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/extensions/mpam/mpam.c
/rk3399_ARM-atf/lib/extensions/spe/spe.c
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/make_helpers/tbbr/tbbr_tools.mk
/rk3399_ARM-atf/plat/allwinner/common/allwinner-common.mk
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl2_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl2_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_console.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_pm.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_topology.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/sp_min/fvp_sp_min_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/sp_min/sp_min-fvp.mk
/rk3399_ARM-atf/plat/arm/board/juno/juno_common.c
/rk3399_ARM-atf/plat/arm/board/morello/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/morello/morello_bl2_setup.c
/rk3399_ARM-atf/plat/arm/board/morello/morello_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/morello/morello_def.h
/rk3399_ARM-atf/plat/arm/board/morello/morello_image_load.c
/rk3399_ARM-atf/plat/arm/board/morello/morello_plat.c
/rk3399_ARM-atf/plat/arm/board/n1sdp/n1sdp_plat.c
/rk3399_ARM-atf/plat/arm/board/tc/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/tc/include/tc_plat.h
/rk3399_ARM-atf/plat/arm/board/tc/nv_counter_test.c
/rk3399_ARM-atf/plat/arm/board/tc/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc/platform_test.mk
/rk3399_ARM-atf/plat/arm/board/tc/tc_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/tc/tc_plat.c
/rk3399_ARM-atf/plat/arm/common/arm_bl2_el3_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg.c
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_plat.c
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_plat_v2.c
/rk3399_ARM-atf/plat/hisilicon/hikey/platform.mk
/rk3399_ARM-atf/plat/hisilicon/hikey960/platform.mk
/rk3399_ARM-atf/plat/imx/imx7/picopi/platform.mk
/rk3399_ARM-atf/plat/imx/imx7/warp7/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/imx8mp/platform.mk
/rk3399_ARM-atf/plat/intel/soc/agilex/platform.mk
/rk3399_ARM-atf/plat/intel/soc/n5x/platform.mk
/rk3399_ARM-atf/plat/intel/soc/stratix10/platform.mk
/rk3399_ARM-atf/plat/nxp/common/setup/common.mk
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/aarch64/ls1046a_helpers.S
/rk3399_ARM-atf/plat/qti/msm8916/platform.mk
/rk3399_ARM-atf/plat/renesas/common/common.mk
/rk3399_ARM-atf/plat/socionext/synquacer/platform.mk
/rk3399_ARM-atf/plat/socionext/uniphier/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/xilinx/versal_net/include/platform_def.h
d333160314-Mar-2023 Mark Brown <broonie@kernel.org>

feat(tcr2): support FEAT_TCR2

Arm v8.9 introduces FEAT_TCR2, adding extended translation control
registers. Support this, context switching TCR2_EL2 and disabling
traps so lower ELs can access the n

feat(tcr2): support FEAT_TCR2

Arm v8.9 introduces FEAT_TCR2, adding extended translation control
registers. Support this, context switching TCR2_EL2 and disabling
traps so lower ELs can access the new registers.

Change the FVP platform to default to handling this as a dynamic option so
the right decision can be made by the code at runtime.

Signed-off-by: Mark Brown <broonie@kernel.org>
Change-Id: I297452acd8646d58bac64fc15e05b06a543e5148

show more ...


/rk3399_ARM-atf/.readthedocs.yaml
/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/bl1_fwu.c
feat_detect.c
/rk3399_ARM-atf/docs/components/ffa-manifest-binding.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/plat/xilinx-zynqmp.rst
/rk3399_ARM-atf/docs/process/coding-guidelines.rst
/rk3399_ARM-atf/docs/process/coding-style.rst
/rk3399_ARM-atf/drivers/arm/rss/rss_comms_protocol_embed.c
/rk3399_ARM-atf/drivers/auth/cca/cot.c
/rk3399_ARM-atf/drivers/auth/cryptocell/712/cryptocell_crypto.c
/rk3399_ARM-atf/drivers/auth/cryptocell/713/cryptocell_crypto.c
/rk3399_ARM-atf/drivers/auth/dualroot/cot.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_common.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_common.mk
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_crypto.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_x509_parser.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_bl1.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_bl1_r64.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_bl2.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_common.c
/rk3399_ARM-atf/drivers/nxp/auth/tbbr/tbbr_cot.c
/rk3399_ARM-atf/drivers/ufs/ufs.c
/rk3399_ARM-atf/fdts/fvp-base-psci-common.dtsi
/rk3399_ARM-atf/include/arch/aarch32/smccc_helpers.h
/rk3399_ARM-atf/include/arch/aarch64/arch.h
/rk3399_ARM-atf/include/arch/aarch64/arch_features.h
/rk3399_ARM-atf/include/arch/aarch64/arch_helpers.h
/rk3399_ARM-atf/include/bl1/bl1.h
/rk3399_ARM-atf/include/common/runtime_svc.h
/rk3399_ARM-atf/include/common/tbbr/cot_def.h
/rk3399_ARM-atf/include/drivers/auth/auth_mod.h
/rk3399_ARM-atf/include/drivers/auth/mbedtls/mbedtls_config-2.h
/rk3399_ARM-atf/include/drivers/auth/mbedtls/mbedtls_config-3.h
/rk3399_ARM-atf/include/drivers/auth/tbbr_cot_common.h
/rk3399_ARM-atf/include/drivers/nxp/dcfg/dcfg.h
/rk3399_ARM-atf/include/drivers/ufs.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78c.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_v1.h
/rk3399_ARM-atf/include/lib/el3_runtime/aarch32/context.h
/rk3399_ARM-atf/include/lib/el3_runtime/aarch64/context.h
/rk3399_ARM-atf/include/lib/extensions/brbe.h
/rk3399_ARM-atf/include/lib/extensions/trbe.h
/rk3399_ARM-atf/include/lib/extensions/trf.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78c.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_v1.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/fconf/fconf_cot_getter.c
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_normal.c
/rk3399_ARM-atf/lib/xlat_tables/aarch32/nonlpae_tables.c
/rk3399_ARM-atf/lib/zlib/crc32.c
/rk3399_ARM-atf/lib/zlib/inflate.c
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_plat_attest_token.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp_r/fvp_r_bl1_setup.c
/rk3399_ARM-atf/plat/arm/board/rde1edge/rde1edge_topology.c
/rk3399_ARM-atf/plat/arm/board/tc/include/platform_def.h
/rk3399_ARM-atf/plat/arm/common/aarch64/arm_sdei.c
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg.c
/rk3399_ARM-atf/plat/arm/common/arm_pm.c
/rk3399_ARM-atf/plat/imx/common/imx_sip_svc.c
/rk3399_ARM-atf/plat/imx/common/include/imx_sip_svc.h
/rk3399_ARM-atf/plat/imx/imx8m/ddr/clock.c
/rk3399_ARM-atf/plat/imx/imx8m/ddr/ddr4_dvfs.c
/rk3399_ARM-atf/plat/imx/imx8m/ddr/dram.c
/rk3399_ARM-atf/plat/imx/imx8m/ddr/dram_retention.c
/rk3399_ARM-atf/plat/imx/imx8m/ddr/lpddr4_dvfs.c
/rk3399_ARM-atf/plat/imx/imx8m/gpc_common.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8m_psci_common.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mp/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/gpc.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/imx8mq_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/imx8mq_psci.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/include/dram.h
/rk3399_ARM-atf/plat/imx/imx8m/include/gpc.h
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_platform.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/flowctrl/flowctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/pmc/pmc.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/ari.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/nvg.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_smmu.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_sip_calls.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dp/cdn_dp.h
/rk3399_ARM-atf/plat/st/stm32mp1/include/stm32mp1_mbedtls_config-2.h
/rk3399_ARM-atf/plat/st/stm32mp1/include/stm32mp1_mbedtls_config-3.h
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/ti/k3/common/k3_bl31_setup.c
/rk3399_ARM-atf/plat/xilinx/common/include/pm_ipi.h
/rk3399_ARM-atf/plat/xilinx/common/pm_service/pm_ipi.c
/rk3399_ARM-atf/plat/xilinx/versal/pm_service/pm_api_sys.c
/rk3399_ARM-atf/plat/xilinx/versal/pm_service/pm_api_sys.h
/rk3399_ARM-atf/plat/xilinx/versal/pm_service/pm_defs.h
/rk3399_ARM-atf/plat/xilinx/versal/pm_service/pm_svc_main.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/platform_def.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_sys.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_sys.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_defs.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_svc_main.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_svc_main.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/sip_svc_setup.c
/rk3399_ARM-atf/services/spd/opteed/opteed_private.h
/rk3399_ARM-atf/services/spd/tlkd/tlkd_private.h
/rk3399_ARM-atf/services/spd/tspd/tspd_private.h
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/tools/marvell/doimage/doimage.c
fc8d2d3917-Nov-2022 Andre Przywara <andre.przywara@arm.com>

refactor(trf): enable FEAT_TRF for FEAT_STATE_CHECKED

At the moment we only support FEAT_TRF to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detecti

refactor(trf): enable FEAT_TRF for FEAT_STATE_CHECKED

At the moment we only support FEAT_TRF to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (ENABLE_TRF_FOR_NS=2), by splitting
is_feat_trf_present() into an ID register reading function and a second
function to report the support status. That function considers both
build time settings and runtime information (if needed), and is used
before we access TRF related registers.
Also move the context saving code from assembly to C, and use the new
is_feat_trf_supported() function to guard its execution.

The FVP platform decided to compile in support unconditionally (=1),
even though FEAT_TRF is an ARMv8.4 feature, so is not available with the
FVP model's default command line.
Change that to the now supported dynamic option (=2), so the right
decision can be made by the code at runtime.

Change-Id: Ia97b01adbe24970a4d837afd463dc5506b7295a3
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

ff49103617-Nov-2022 Andre Przywara <andre.przywara@arm.com>

refactor(brbe): enable FEAT_BRBE for FEAT_STATE_CHECKED

At the moment we only support FEAT_BRBE to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime dete

refactor(brbe): enable FEAT_BRBE for FEAT_STATE_CHECKED

At the moment we only support FEAT_BRBE to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (ENABLE_BRBE_FOR_NS=2), by splitting
is_feat_brbe_present() into an ID register reading function and a second
function to report the support status. That function considers both
build time settings and runtime information (if needed), and is used
before we access BRBE related registers.

The FVP platform decided to compile in support unconditionally (=1),
even though FEAT_BRBE is an ARMv9 feature, so is not available with the
FVP model's default command line.
Change that to the now supported dynamic option (=2), so the right
decision can be made by the code at runtime.

Change-Id: I5f2e2c9648300f65f0fa9a5f8e2f34e73529d053
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

f5360cfa17-Nov-2022 Andre Przywara <andre.przywara@arm.com>

refactor(trbe): enable FEAT_TRBE for FEAT_STATE_CHECKED

At the moment we only support FEAT_TRBE to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime dete

refactor(trbe): enable FEAT_TRBE for FEAT_STATE_CHECKED

At the moment we only support FEAT_TRBE to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (ENABLE_TRBE_FOR_NS=2), by splitting
is_feat_trbe_present() into an ID register reading function and a second
function to report the support status. That function considers both
build time settings and runtime information (if needed), and is used
before we access TRBE related registers.

The FVP platform decided to compile in support unconditionally (=1),
even though FEAT_TRBE is an ARMv9 feature, so is not available with the
FVP model's default command line.
Change that to the now supported dynamic option (=2), so the right
decision can be made by the code at runtime.

Change-Id: Iee7f88ea930119049543a8a4a105389997e7692c
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

a4cccb4f01-Feb-2023 Andre Przywara <andre.przywara@arm.com>

feat(cpufeat): extend check_feature() to deal with min/max

So far the check_feature() function compares the subfield of a CPU ID
register against 0, to learn if a feature is enabled or not.
This is

feat(cpufeat): extend check_feature() to deal with min/max

So far the check_feature() function compares the subfield of a CPU ID
register against 0, to learn if a feature is enabled or not.
This is problematic for checks that require a certain revision of a
feature, so we should check against a minimum version number instead.
On top of that we might need to add code to support newer versions of a
feature, so we should be alerted if new hardware introduces a higher
number.

Extend the check_feature() function to take two extra arguments: the
minimum version, and the greatest currently known number.
Then make sure that the CPU ID field is in this range.

Change-Id: I425b68535a2ba9eafd31854e74d142183b521cd5
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/bl1.ld.S
/rk3399_ARM-atf/bl2/bl2.ld.S
/rk3399_ARM-atf/bl2/bl2_el3.ld.S
/rk3399_ARM-atf/bl2u/bl2u.ld.S
/rk3399_ARM-atf/bl31/aarch64/ea_delegate.S
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl31/bl31.ld.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.ld.S
/rk3399_ARM-atf/bl32/tsp/tsp.ld.S
feat_detect.c
/rk3399_ARM-atf/docs/components/ffa-manifest-binding.rst
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/drivers/arm/css/mhu/css_mhu_doorbell.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_helpers.c
/rk3399_ARM-atf/drivers/ufs/ufs.c
/rk3399_ARM-atf/include/arch/aarch32/arch_features.h
/rk3399_ARM-atf/include/arch/aarch64/arch_features.h
/rk3399_ARM-atf/include/arch/aarch64/el2_common_macros.S
/rk3399_ARM-atf/include/arch/aarch64/el3_common_macros.S
/rk3399_ARM-atf/include/common/bl_common.ld.h
/rk3399_ARM-atf/include/common/interrupt_props.h
/rk3399_ARM-atf/include/common/runtime_svc.h
/rk3399_ARM-atf/include/lib/bakery_lock.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cpu_macros.S
/rk3399_ARM-atf/include/lib/cpus/aarch64/cpu_macros.S
/rk3399_ARM-atf/include/lib/el3_runtime/pubsub.h
/rk3399_ARM-atf/include/lib/pmf/pmf_helpers.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/arm_reclaim_init.ld.S
/rk3399_ARM-atf/include/plat/arm/common/arm_tzc_dram.ld.S
/rk3399_ARM-atf/include/services/el3_spmc_logical_sp.h
/rk3399_ARM-atf/lib/pmf/pmf_main.c
/rk3399_ARM-atf/lib/psci/psci_common.c
/rk3399_ARM-atf/lib/xlat_tables/aarch32/nonlpae_tables.c
/rk3399_ARM-atf/lib/xlat_tables/xlat_tables_common.c
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/plat/arm/board/arm_fpga/build_axf.ld.S
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_el3_spmc.c
/rk3399_ARM-atf/plat/arm/common/aarch64/arm_helpers.S
/rk3399_ARM-atf/plat/arm/common/arm_gicv3.c
/rk3399_ARM-atf/plat/common/aarch32/platform_mp_stack.S
/rk3399_ARM-atf/plat/common/aarch32/platform_up_stack.S
/rk3399_ARM-atf/plat/common/aarch64/platform_mp_stack.S
/rk3399_ARM-atf/plat/common/aarch64/platform_up_stack.S
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl31_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/include/plat.ld.S
/rk3399_ARM-atf/plat/imx/common/sci/svc/pm/pm_rpc_clnt.c
/rk3399_ARM-atf/plat/imx/common/sci/svc/rm/rm_rpc_clnt.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/ble/ble.ld.S
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_gicv3.c
/rk3399_ARM-atf/plat/mediatek/common/mtk_smc_handlers.c
/rk3399_ARM-atf/plat/mediatek/include/plat.ld.rodata.inc
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm.c
/rk3399_ARM-atf/plat/mediatek/mt8186/drivers/mcdi/mt_mcdi.c
/rk3399_ARM-atf/plat/mediatek/mt8192/drivers/mcdi/mt_mcdi.c
/rk3399_ARM-atf/plat/mediatek/mt8195/drivers/mcdi/mt_mcdi.c
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/scat/bl31.scat
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_ras.c
/rk3399_ARM-atf/plat/qemu/qemu_sbsa/include/platform_def.h
/rk3399_ARM-atf/plat/renesas/common/aarch64/platform_common.c
/rk3399_ARM-atf/plat/rockchip/common/aarch32/plat_helpers.S
/rk3399_ARM-atf/plat/rockchip/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/rockchip/px30/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/socionext/synquacer/include/plat.ld.S
/rk3399_ARM-atf/plat/socionext/synquacer/include/platform_def.h
/rk3399_ARM-atf/plat/ti/k3/common/drivers/ti_sci/ti_sci.c
/rk3399_ARM-atf/plat/xilinx/versal/versal_gicv3.c
/rk3399_ARM-atf/plat/xilinx/versal_net/versal_net_gicv3.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/custom_sip_svc.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/custom_svc.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/platform_def.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_sys.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_defs.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/sip_svc_setup.c
/rk3399_ARM-atf/services/std_svc/spm/spm_mm/spm_mm_xlat.c
17d07a5521-Feb-2023 Govindraj Raja <govindraj.raja@arm.com>

refactor(bl31): use elx_panic for sysreg_handler64

When we reach sysreg_handler64 from any trap handling we are entering
this path from lower EL and thus we should be calling lower_el_panic
reportin

refactor(bl31): use elx_panic for sysreg_handler64

When we reach sysreg_handler64 from any trap handling we are entering
this path from lower EL and thus we should be calling lower_el_panic
reporting mechanism to print panic report.

Make report_elx_panic available through assembly func elx_panic which
could be used for reporting any lower_el_panic.

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

show more ...

bd62ce9816-Jan-2023 Govindraj Raja <govindraj.raja@arm.com>

refactor(aarch64): rename do_panic and el3_panic

Current panic call invokes do_panic which calls el3_panic, but now panic
handles only panic from EL3 anid clear separation to use lower_el_panic()
wh

refactor(aarch64): rename do_panic and el3_panic

Current panic call invokes do_panic which calls el3_panic, but now panic
handles only panic from EL3 anid clear separation to use lower_el_panic()
which handles panic from lower ELs.

So now we can remove do_panic and just call el3_panic for all panics.

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

show more ...

f300ef6616-Jan-2023 Govindraj Raja <govindraj.raja@arm.com>

refactor(aarch64): remove weak links to el3_panic

Cleanup weak links to el3_panic and restrict crash_reporting usage
to bl31.

Crash reporting is not used with bl1, bl2 and weak linkage to el3_panic

refactor(aarch64): remove weak links to el3_panic

Cleanup weak links to el3_panic and restrict crash_reporting usage
to bl31.

Crash reporting is not used with bl1, bl2 and weak linkage to el3_panic
is used, this can cause ambiguity in understanding the code so remove
this weak linkage and introduce funcs that should be used when we have
crash reporting for el3 panics.

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

show more ...

7e619ecc16-Jan-2023 Govindraj Raja <govindraj.raja@arm.com>

refactor(aarch64): refactor usage of elx_panic

Currently we call el3_panic for panics from EL3 and elx_panic for
panics from lower ELs.

When we boot into a rich OS environment and interact with BL3

refactor(aarch64): refactor usage of elx_panic

Currently we call el3_panic for panics from EL3 and elx_panic for
panics from lower ELs.

When we boot into a rich OS environment and interact with BL31 using
SMC/ABI calls and we can also decide to handle any lower EL panics in
EL3. Panic can occur in lower EL from rich OS or during SMC/ABI calls
after context switch to EL3.

But after booting into any rich OS we may land in panic either from
rich OS or while servicing any SMC call, here the logic to use
el3_panic or elx_panic is flawed as spsr_el3[3:0] is always EL3h
and end up in elx_panic even if panic occurred from EL3 during
SMC handling.

We try to decouple the elx_panic usage for its intended purpose,
introduce lower_el_panic which would call elx_panic, currently
lower_el_panic is called from default platform_ea_handle which
would be called due to panic from any of the lower ELs.

Also remove the weak linkage for elx_panic and rename it to
report_elx_panic which could be used with lower_el_panic.

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

show more ...


/rk3399_ARM-atf/.gitignore
/rk3399_ARM-atf/.husky/pre-commit
/rk3399_ARM-atf/.husky/pre-commit.copyright
/rk3399_ARM-atf/.readthedocs.yaml
/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/bl1.ld.S
/rk3399_ARM-atf/bl1/bl1.mk
/rk3399_ARM-atf/bl2/bl2.ld.S
/rk3399_ARM-atf/bl2/bl2.mk
/rk3399_ARM-atf/bl2/bl2_el3.ld.S
/rk3399_ARM-atf/bl2u/bl2u.ld.S
/rk3399_ARM-atf/bl2u/bl2u.mk
/rk3399_ARM-atf/bl31/aarch64/crash_reporting.S
/rk3399_ARM-atf/bl31/bl31.ld.S
/rk3399_ARM-atf/bl31/bl31.mk
/rk3399_ARM-atf/bl32/sp_min/sp_min.ld.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.mk
/rk3399_ARM-atf/bl32/tsp/tsp.ld.S
/rk3399_ARM-atf/bl32/tsp/tsp.mk
/rk3399_ARM-atf/bl32/tsp/tsp_ffa_main.c
aarch64/debug.S
/rk3399_ARM-atf/docs/components/fconf/fconf_properties.rst
/rk3399_ARM-atf/docs/components/realm-management-extension.rst
/rk3399_ARM-atf/docs/components/rmm-el3-comms-spec.rst
/rk3399_ARM-atf/docs/components/spd/optee-dispatcher.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/design_documents/index.rst
/rk3399_ARM-atf/docs/design_documents/measured_boot_poc.rst
/rk3399_ARM-atf/docs/design_documents/rss.rst
/rk3399_ARM-atf/docs/getting_started/prerequisites.rst
/rk3399_ARM-atf/docs/perf/psci-performance-juno.rst
/rk3399_ARM-atf/docs/plat/arm/juno/index.rst
/rk3399_ARM-atf/docs/plat/qemu.rst
/rk3399_ARM-atf/docs/plat/xilinx-versal-net.rst
/rk3399_ARM-atf/docs/plat/xilinx-zynqmp.rst
/rk3399_ARM-atf/docs/process/security.rst
/rk3399_ARM-atf/docs/requirements.in
/rk3399_ARM-atf/docs/requirements.txt
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/rss_attestation_flow.puml
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/rss_measured_boot_flow.puml
/rk3399_ARM-atf/docs/resources/diagrams/rss_attestation_flow.svg
/rk3399_ARM-atf/docs/resources/diagrams/rss_measured_boot_flow.svg
/rk3399_ARM-atf/docs/threat_model/threat_model.rst
/rk3399_ARM-atf/drivers/allwinner/axp/common.c
/rk3399_ARM-atf/drivers/mmc/mmc.c
/rk3399_ARM-atf/drivers/partition/gpt.c
/rk3399_ARM-atf/fdts/morello-soc.dts
/rk3399_ARM-atf/fdts/tc.dts
/rk3399_ARM-atf/include/arch/aarch64/arch.h
/rk3399_ARM-atf/include/arch/aarch64/smccc_helpers.h
/rk3399_ARM-atf/include/common/debug.h
/rk3399_ARM-atf/include/common/fdt_wrappers.h
/rk3399_ARM-atf/include/drivers/partition/efi.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_v1.h
/rk3399_ARM-atf/include/lib/fconf/fconf_dyn_cfg_getter.h
/rk3399_ARM-atf/include/lib/optee_utils.h
/rk3399_ARM-atf/include/lib/psa/psa_manifest/sid.h
/rk3399_ARM-atf/include/lib/psa/rss_platform_api.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/services/ffa_svc.h
/rk3399_ARM-atf/include/services/rmm_core_manifest.h
/rk3399_ARM-atf/include/services/trp/platform_trp.h
/rk3399_ARM-atf/lib/compiler-rt/builtins/arm/aeabi_memset.S
/rk3399_ARM-atf/lib/compiler-rt/compiler-rt.mk
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a510.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78c.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_v1.S
/rk3399_ARM-atf/lib/cpus/aarch64/runtime_errata.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/fconf/fconf_dyn_cfg_getter.c
/rk3399_ARM-atf/lib/optee/optee_utils.c
/rk3399_ARM-atf/lib/psa/rss_platform.c
/rk3399_ARM-atf/lib/psci/aarch32/psci_helpers.S
/rk3399_ARM-atf/lib/psci/aarch64/psci_helpers.S
/rk3399_ARM-atf/lib/psci/psci_lib.mk
/rk3399_ARM-atf/lib/psci/psci_private.h
/rk3399_ARM-atf/lib/romlib/romlib.ld.S
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/plat/allwinner/sun50i_h6/sunxi_power.c
/rk3399_ARM-atf/plat/arm/board/fvp/fconf/fconf_hw_config_getter.c
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl2_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/fconf_hw_config_getter.h
/rk3399_ARM-atf/plat/arm/board/fvp/jmptbl.i
/rk3399_ARM-atf/plat/arm/board/morello/fdts/morello_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/morello/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc/plat_def_fip_uuid.h
/rk3399_ARM-atf/plat/arm/board/tc/plat_def_uuid_config.c
/rk3399_ARM-atf/plat/arm/board/tc/plat_fiptool.mk
/rk3399_ARM-atf/plat/arm/board/tc/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_bl2_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_bl31_setup.c
/rk3399_ARM-atf/plat/arm/common/fconf/fconf_ethosn_getter.c
/rk3399_ARM-atf/plat/arm/common/trp/arm_trp_setup.c
/rk3399_ARM-atf/plat/common/aarch64/plat_common.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/imx/common/imx_uart_console.S
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/ble/ble.mk
/rk3399_ARM-atf/plat/mediatek/build_helpers/mtk_build_helpers.mk
/rk3399_ARM-atf/plat/mediatek/build_helpers/mtk_build_helpers_epilogue.mk
/rk3399_ARM-atf/plat/xilinx/common/include/plat_startup.h
/rk3399_ARM-atf/plat/xilinx/common/pm_service/pm_ipi.c
/rk3399_ARM-atf/plat/xilinx/versal/aarch64/versal_common.c
/rk3399_ARM-atf/plat/xilinx/versal/include/plat_ipi.h
/rk3399_ARM-atf/plat/xilinx/versal/include/versal_def.h
/rk3399_ARM-atf/plat/xilinx/versal/sip_svc_setup.c
/rk3399_ARM-atf/plat/xilinx/versal/versal_ipi.c
/rk3399_ARM-atf/plat/xilinx/versal_net/bl31_versal_net_setup.c
/rk3399_ARM-atf/plat/xilinx/versal_net/include/plat_ipi.h
/rk3399_ARM-atf/plat/xilinx/versal_net/include/versal_net_def.h
/rk3399_ARM-atf/plat/xilinx/versal_net/platform.mk
/rk3399_ARM-atf/plat/xilinx/versal_net/sip_svc_setup.c
/rk3399_ARM-atf/plat/xilinx/versal_net/versal_net_gicv3.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/aarch64/zynqmp_common.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/custom_sip_svc.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/custom_svc.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/plat_ipi.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/platform_def.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_sys.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_defs.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/sip_svc_setup.c
/rk3399_ARM-atf/services/spd/opteed/opteed.mk
/rk3399_ARM-atf/services/spd/opteed/opteed_main.c
/rk3399_ARM-atf/services/spd/opteed/opteed_pm.c
/rk3399_ARM-atf/services/spd/opteed/opteed_private.h
/rk3399_ARM-atf/services/spd/opteed/teesmc_opteed.h
/rk3399_ARM-atf/services/spd/opteed/teesmc_opteed_macros.h
/rk3399_ARM-atf/services/std_svc/rmmd/rmmd_main.c
/rk3399_ARM-atf/services/std_svc/rmmd/trp/linker.ld.S
/rk3399_ARM-atf/services/std_svc/rmmd/trp/trp.mk
/rk3399_ARM-atf/services/std_svc/rmmd/trp/trp_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/tools/cert_create/src/key.c
/rk3399_ARM-atf/tools/fiptool/fiptool.c
acf455b420-Jan-2023 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

Merge changes from topic "fix_sparse_warnings" into integration

* changes:
fix(libc): remove __putchar alias
fix(console): correct scopes for console symbols
fix(auth): use NULL instead of 0 f

Merge changes from topic "fix_sparse_warnings" into integration

* changes:
fix(libc): remove __putchar alias
fix(console): correct scopes for console symbols
fix(auth): use NULL instead of 0 for pointer check
fix(io): compare function pointers with NULL
fix(fdt-wrappers): use correct prototypes

show more ...


/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl31/bl31_main.c
fdt_wrappers.c
/rk3399_ARM-atf/docs/about/release-information.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/security_advisories/index.rst
/rk3399_ARM-atf/docs/security_advisories/security-advisory-tfv-10.rst
/rk3399_ARM-atf/drivers/auth/auth_mod.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_x509_parser.c
/rk3399_ARM-atf/drivers/console/multi_console.c
/rk3399_ARM-atf/drivers/io/io_block.c
/rk3399_ARM-atf/fdts/stm32mp151.dtsi
/rk3399_ARM-atf/fdts/stm32mp157c-ed1.dts
/rk3399_ARM-atf/include/drivers/console.h
/rk3399_ARM-atf/include/lib/cpus/aarch32/cortex_a72.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a72.h
/rk3399_ARM-atf/include/lib/el3_runtime/aarch64/context.h
/rk3399_ARM-atf/include/lib/utils_def.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a710.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_x2.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/libc/putchar.c
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn2/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rdn2/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn2/rdn2_topology.c
/rk3399_ARM-atf/plat/arm/css/common/css_pm.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_variant.h
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_bl31_setup.c
/rk3399_ARM-atf/plat/mediatek/build_helpers/options.mk
/rk3399_ARM-atf/plat/mediatek/common/lpm/mt_lp_api.c
/rk3399_ARM-atf/plat/mediatek/common/lpm/mt_lp_rm.c
/rk3399_ARM-atf/plat/mediatek/common/lpm/mt_lp_rq.c
/rk3399_ARM-atf/plat/mediatek/common/lpm/rules.mk
/rk3399_ARM-atf/plat/mediatek/drivers/cpu_pm/cpcv3_2/mt_cpu_pm.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/constraints/mt_spm_rc_api.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/constraints/mt_spm_rc_api.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/constraints/mt_spm_rc_bus26m.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/constraints/mt_spm_rc_cpu_buck_ldo.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/constraints/mt_spm_rc_dram.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/constraints/mt_spm_rc_internal.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/constraints/mt_spm_rc_syspll.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_cond.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_cond.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_conservation.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_conservation.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_constraint.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_idle.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_idle.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_internal.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_internal.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_pmic_wrap.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_pmic_wrap.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_reg.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_suspend.c
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/mt_spm_suspend.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/pcm_def.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/rules.mk
/rk3399_ARM-atf/plat/mediatek/drivers/spm/mt8188/sleep_def.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/rules.mk
/rk3399_ARM-atf/plat/mediatek/drivers/spm/version/notifier/inc/mt_spm_notifier.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/version/notifier/v1/mt_spm_sspm_intc.h
/rk3399_ARM-atf/plat/mediatek/drivers/spm/version/notifier/v1/mt_spm_sspm_notifier.c
/rk3399_ARM-atf/plat/mediatek/drivers/usb/mt8188/mt_usb.c
/rk3399_ARM-atf/plat/mediatek/drivers/usb/rules.mk
/rk3399_ARM-atf/plat/mediatek/include/drivers/spm/mt_spm_resource_req.h
/rk3399_ARM-atf/plat/mediatek/include/lpm/mt_lp_api.h
/rk3399_ARM-atf/plat/mediatek/include/lpm/mt_lp_rm.h
/rk3399_ARM-atf/plat/mediatek/include/lpm/mt_lp_rq.h
/rk3399_ARM-atf/plat/mediatek/include/lpm/mt_lp_rqm.h
/rk3399_ARM-atf/plat/mediatek/include/lpm/mt_lpm_smc.h
/rk3399_ARM-atf/plat/mediatek/mt8186/drivers/spm/mt_spm_cond.c
/rk3399_ARM-atf/plat/mediatek/mt8186/drivers/spm/mt_spm_cond.h
/rk3399_ARM-atf/plat/mediatek/mt8186/platform.mk
/rk3399_ARM-atf/plat/mediatek/mt8188/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8188/plat_config.mk
/rk3399_ARM-atf/plat/mediatek/mt8188/platform.mk
/rk3399_ARM-atf/plat/mediatek/mt8192/drivers/spm/mt_spm_cond.c
/rk3399_ARM-atf/plat/mediatek/mt8192/drivers/spm/mt_spm_cond.h
/rk3399_ARM-atf/plat/mediatek/mt8192/platform.mk
/rk3399_ARM-atf/plat/mediatek/mt8195/drivers/spm/mt_spm_cond.c
/rk3399_ARM-atf/plat/mediatek/mt8195/drivers/spm/mt_spm_cond.h
/rk3399_ARM-atf/plat/mediatek/mt8195/platform.mk
/rk3399_ARM-atf/plat/st/common/bl2_io_storage.c
/rk3399_ARM-atf/plat/st/common/include/stm32mp_common.h
/rk3399_ARM-atf/plat/st/common/stm32mp_common.c
/rk3399_ARM-atf/plat/st/common/stm32mp_gic.c
/rk3399_ARM-atf/plat/st/stm32mp1/bl2_plat_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/include/stm32mp1_private.h
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min-stm32mp1.mk
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_pm.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_private.c
/rk3399_ARM-atf/plat/ti/k3/board/generic/board.mk
/rk3399_ARM-atf/plat/ti/k3/board/generic/include/board_def.h
/rk3399_ARM-atf/plat/ti/k3/board/j784s4/board.mk
/rk3399_ARM-atf/plat/ti/k3/board/j784s4/include/board_def.h
/rk3399_ARM-atf/plat/ti/k3/board/lite/board.mk
/rk3399_ARM-atf/plat/ti/k3/board/lite/include/board_def.h
/rk3399_ARM-atf/plat/ti/k3/common/drivers/ti_sci/ti_sci.c
/rk3399_ARM-atf/plat/ti/k3/common/drivers/ti_sci/ti_sci_protocol.h
/rk3399_ARM-atf/plat/ti/k3/common/k3_bl31_setup.c
/rk3399_ARM-atf/plat/ti/k3/common/k3_console.c
/rk3399_ARM-atf/plat/ti/k3/common/k3_helpers.S
/rk3399_ARM-atf/plat/ti/k3/common/k3_psci.c
/rk3399_ARM-atf/plat/ti/k3/common/plat_common.mk
/rk3399_ARM-atf/plat/ti/k3/include/k3_console.h
/rk3399_ARM-atf/plat/ti/k3/include/platform_def.h
/rk3399_ARM-atf/plat/ti/k3/platform.mk
/rk3399_ARM-atf/plat/xilinx/versal/bl31_versal_setup.c
/rk3399_ARM-atf/plat/xilinx/versal_net/include/versal_net_def.h
/rk3399_ARM-atf/plat/xilinx/versal_net/plat_psci_pm.c
/rk3399_ARM-atf/plat/xilinx/versal_net/platform.mk
/rk3399_ARM-atf/plat/xilinx/versal_net/pm_service/pm_client.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/aarch64/zynqmp_common.c
d242128c15-Nov-2022 Andre Przywara <andre.przywara@arm.com>

refactor(cpufeat): convert FEAT_HCX to new scheme

Use the generic check function in feat_detect.c, and split the feature
check into two functions, as done for FEAT_FGT before.

Signed-off-by: Andre

refactor(cpufeat): convert FEAT_HCX to new scheme

Use the generic check function in feat_detect.c, and split the feature
check into two functions, as done for FEAT_FGT before.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Change-Id: I0a4f973427c10d5d15c414ff5e12b18b7e645fae

show more ...

f0deb4c810-Nov-2022 Andre Przywara <andre.przywara@arm.com>

refactor(amu): convert FEAT_AMUv1 to new scheme

For the FGT context save/restore operation, we need to look at the AMUv1
feature, so migrate this one over to the new scheme.
This uses the generic ch

refactor(amu): convert FEAT_AMUv1 to new scheme

For the FGT context save/restore operation, we need to look at the AMUv1
feature, so migrate this one over to the new scheme.
This uses the generic check function in feat_detect.c, and splits the
feature check into two functions, as was done before for FEAT_FGT.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Change-Id: I95ad797f15001b2c9d1800c9d4af33fba79e136f

show more ...

12345678910>>...14