History log of /rk3399_ARM-atf/include/arch/ (Results 276 – 300 of 352)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
dbcc44a126-May-2020 Alexei Fedorov <Alexei.Fedorov@arm.com>

TF-A: Fix wrong register read for MPAM extension

This patch fixes wrong ID_AA64DFR0_EL1 register read instead of
ID_AA64PFR0_EL1 to detect support for MPAM extension.
It also implements get_mpam_ver

TF-A: Fix wrong register read for MPAM extension

This patch fixes wrong ID_AA64DFR0_EL1 register read instead of
ID_AA64PFR0_EL1 to detect support for MPAM extension.
It also implements get_mpam_version() function which returns
MPAM version as:
0x00: None Armv8.0 or later;
0x01: v0.1 Armv8.4 or later;
0x10: v1.0 Armv8.2 or later;
0x11: v1.1 Armv8.4 or later;

Change-Id: I31d776b1a1b60cb16e5e62296d70adb129d7b760
Reported-by: Matteo Zini <matteozini96@gmail.com>
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>

show more ...


/rk3399_ARM-atf/common/fdt_wrappers.c
/rk3399_ARM-atf/docs/about/features.rst
/rk3399_ARM-atf/docs/components/index.rst
/rk3399_ARM-atf/docs/components/psa-ffa-manifest-binding.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/global_substitutions.txt
/rk3399_ARM-atf/docs/glossary.rst
/rk3399_ARM-atf/fdts/fvp-base-gicv2-psci-aarch32.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv2-psci.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-aarch32-1t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-aarch32-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-aarch32.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq-2t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci.dts
/rk3399_ARM-atf/fdts/fvp-defs-dynamiq.dtsi
/rk3399_ARM-atf/fdts/fvp-defs.dtsi
/rk3399_ARM-atf/fdts/fvp-foundation-gicv2-psci.dts
/rk3399_ARM-atf/fdts/fvp-foundation-gicv3-psci.dts
aarch64/arch.h
aarch64/arch_features.h
/rk3399_ARM-atf/include/common/fdt_wrappers.h
/rk3399_ARM-atf/include/services/ffa_svc.h
/rk3399_ARM-atf/include/services/spm_core_manifest.h
/rk3399_ARM-atf/include/services/spmd_svc.h
/rk3399_ARM-atf/lib/extensions/mpam/mpam.c
/rk3399_ARM-atf/plat/arm/board/fvp/fconf/fconf_hw_config_getter.c
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_console.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_gicv3.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/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/sp_min/sp_min-fvp.mk
/rk3399_ARM-atf/plat/arm/board/juno/jmptbl.i
/rk3399_ARM-atf/plat/arm/common/arm_console.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_common.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_ehf.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_fiq_glue.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_sdei.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_stack_protector.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_private.h
/rk3399_ARM-atf/services/std_svc/std_svc_setup.c
6cac724d22-Apr-2020 johpow01 <john.powell@arm.com>

Enable v8.6 WFE trap delays

This patch enables the v8.6 extension to add a delay before WFE traps
are taken. A weak hook plat_arm_set_twedel_scr_el3 has been added in
plat/common/aarch64/plat_common

Enable v8.6 WFE trap delays

This patch enables the v8.6 extension to add a delay before WFE traps
are taken. A weak hook plat_arm_set_twedel_scr_el3 has been added in
plat/common/aarch64/plat_common.c that disables this feature by default
but platform-specific code can override it when needed.

The only hook provided sets the TWED fields in SCR_EL3, there are similar
fields in HCR_EL2, SCTLR_EL2, and SCTLR_EL1 to control WFE trap delays in
lower ELs but these should be configured by code running at EL2 and/or EL1
depending on the platform configuration and is outside the scope of TF-A.

Signed-off-by: John Powell <john.powell@arm.com>
Change-Id: I0a9bb814205efeab693a3d0a0623e62144abba2d

show more ...

1a04b2e517-May-2020 Varun Wadekar <vwadekar@nvidia.com>

Fix compilation error when ENABLE_PIE=1

This patch fixes compilation errors when ENABLE_PIE=1.

<snip>
bl31/aarch64/bl31_entrypoint.S: Assembler messages:
bl31/aarch64/bl31_entrypoint.S:61: Error: i

Fix compilation error when ENABLE_PIE=1

This patch fixes compilation errors when ENABLE_PIE=1.

<snip>
bl31/aarch64/bl31_entrypoint.S: Assembler messages:
bl31/aarch64/bl31_entrypoint.S:61: Error: invalid operand (*UND* section) for `~'
bl31/aarch64/bl31_entrypoint.S:61: Error: invalid immediate
Makefile:1079: recipe for target 'build/tegra/t194/debug/bl31/bl31_entrypoint.o' failed
<snip>

Verified by setting 'ENABLE_PIE=1' for Tegra platform builds.

Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Change-Id: Ifd184f89b86b4360fda86a6ce83fd8495f930bbc

show more ...

45aecff028-Apr-2020 Manish V Badarkhe <Manish.Badarkhe@arm.com>

Implement workaround for AT speculative behaviour

During context switching from higher EL (EL2 or higher)
to lower EL can cause incorrect translation in TLB due to
speculative execution of AT instru

Implement workaround for AT speculative behaviour

During context switching from higher EL (EL2 or higher)
to lower EL can cause incorrect translation in TLB due to
speculative execution of AT instruction using out-of-context
translation regime.

Workaround is implemented as below during EL's (EL1 or EL2)
"context_restore" operation:
1. Disable page table walk using SCTLR.M and TCR.EPD0 & EPD1
bits for EL1 or EL2 (stage1 and stage2 disabled)
2. Save all system registers except TCR and SCTLR (for EL1 and EL2)
3. Do memory barrier operation (isb) to ensure all
system register writes are done.
4. Restore TCR and SCTLR registers (for EL1 and EL2)

Errata details are available for various CPUs as below:
Cortex-A76: 1165522
Cortex-A72: 1319367
Cortex-A57: 1319537
Cortex-A55: 1530923
Cortex-A53: 1530924

More details can be found in mail-chain:
https://lists.trustedfirmware.org/pipermail/tf-a/2020-April/000445.html

Currently, Workaround is implemented as build option which is default
disabled.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: If8545e61f782cb0c2dda7ffbaf50681c825bd2f0

show more ...

5269694616-Apr-2020 Olivier Deprez <olivier.deprez@arm.com>

SPMD: code/comments cleanup

As a follow-up to bdd2596d4, and related to SPM Dispatcher
EL3 component and SPM Core S-EL2/S-EL1 component: update
with cosmetic and coding rules changes. In addition:
-

SPMD: code/comments cleanup

As a follow-up to bdd2596d4, and related to SPM Dispatcher
EL3 component and SPM Core S-EL2/S-EL1 component: update
with cosmetic and coding rules changes. In addition:
-Add Armv8.4-SecEL2 arch detection helper.
-Add an SPMC context (on current core) get helper.
-Return more meaningful error return codes.
-Remove complexity in few spmd_smc_handler switch-cases.
-Remove unused defines and structures from spmd_private.h

Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
Change-Id: I99e642450b0dafb19d3218a2f0e2d3107e8ca3fe

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/bl31.ld.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.ld.S
/rk3399_ARM-atf/bl32/tsp/tsp.ld.S
/rk3399_ARM-atf/common/fdt_wrappers.c
/rk3399_ARM-atf/docs/Makefile
/rk3399_ARM-atf/docs/about/features.rst
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/about/release-information.rst
/rk3399_ARM-atf/docs/change-log-upcoming.rst
/rk3399_ARM-atf/docs/change-log.rst
/rk3399_ARM-atf/docs/components/arm-sip-service.rst
/rk3399_ARM-atf/docs/components/debugfs-design.rst
/rk3399_ARM-atf/docs/components/exception-handling.rst
/rk3399_ARM-atf/docs/components/fconf/fconf_properties.rst
/rk3399_ARM-atf/docs/components/fconf/index.rst
/rk3399_ARM-atf/docs/components/index.rst
/rk3399_ARM-atf/docs/components/secure-partition-manager-design.rst
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/design/interrupt-framework-design.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/psci-lib-integration-guide.rst
/rk3399_ARM-atf/docs/getting_started/rt-svc-writers-guide.rst
/rk3399_ARM-atf/docs/index.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/docs/plat/brcm-stingray.rst
/rk3399_ARM-atf/docs/plat/index.rst
/rk3399_ARM-atf/docs/security_advisories/security-advisory-tfv-8.rst
/rk3399_ARM-atf/drivers/st/clk/stm32mp1_clk.c
/rk3399_ARM-atf/drivers/st/clk/stm32mp_clkfunc.c
/rk3399_ARM-atf/drivers/st/ddr/stm32mp1_ram.c
/rk3399_ARM-atf/drivers/st/spi/stm32_qspi.c
/rk3399_ARM-atf/fdts/a5ds.dts
aarch64/arch_features.h
/rk3399_ARM-atf/include/common/bl_common.ld.h
/rk3399_ARM-atf/include/common/fdt_wrappers.h
/rk3399_ARM-atf/include/drivers/st/stm32mp_clkfunc.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/services/spm_core_manifest.h
/rk3399_ARM-atf/lib/fconf/fconf_dyn_cfg_getter.c
/rk3399_ARM-atf/lib/fconf/fconf_tbbr_getter.c
/rk3399_ARM-atf/plat/arm/board/a5ds/fdts/a5ds_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/arm_fpga/aarch64/fpga_helpers.S
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_console.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_def.h
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_gicv3.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/arm_fpga/platform.mk
/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/fdts/fvp_spmc_manifest.dts
/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/fvp_ve/fdts/fvp_ve_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/juno/fdts/juno_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/jmptbl.i
/rk3399_ARM-atf/plat/arm/board/rddaniel/fdts/rddaniel_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/fdts/rddanielxlr_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/fdts/rddanielxlr_nt_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_err.c
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_plat.c
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_security.c
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_topology.c
/rk3399_ARM-atf/plat/arm/board/rde1edge/fdts/rde1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rdn1edge/fdts/rdn1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgi575/fdts/sgi575_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgm775/fdts/sgm775_fw_config.dts
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_sp.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/arm/css/sgm/include/sgm_base_platform_def.h
/rk3399_ARM-atf/plat/brcm/board/stingray/src/bl2_setup.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/paxb.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31.ld.S
/rk3399_ARM-atf/plat/renesas/rcar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/st/common/include/stm32mp_dt.h
/rk3399_ARM-atf/plat/st/common/stm32mp_dt.c
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/services/arm_arch_svc/arm_arch_svc_setup.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_private.h
9cf7f35530-Oct-2019 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

Provide a hint to power controller for DSU cluster power down

By writing 0 to CLUSTERPWRDN DSU register bit 0, we send an
advisory to the power controller that cluster power is not required
when all

Provide a hint to power controller for DSU cluster power down

By writing 0 to CLUSTERPWRDN DSU register bit 0, we send an
advisory to the power controller that cluster power is not required
when all cores are powered down.

The AArch32 CLUSTERPWRDN register is architecturally mapped to the
AArch64 CLUSTERPWRDN_EL1 register

Change-Id: Ie6e67c1c7d811fa25c51e2e405ca7f59bd20c81b
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>

show more ...

1150416302-Apr-2020 Masahiro Yamada <yamada.masahiro@socionext.com>

locks: bakery: use is_dcache_enabled() helper

bakery_lock_normal.c uses the raw register accessor, read_sctlr(_el3)
to check whether the dcache is enabled.

Using is_dcache_enabled() is cleaner, and

locks: bakery: use is_dcache_enabled() helper

bakery_lock_normal.c uses the raw register accessor, read_sctlr(_el3)
to check whether the dcache is enabled.

Using is_dcache_enabled() is cleaner, and a good abstraction for
the library code like this.

A problem is is_dcache_enabled() is declared in the local header,
lib/xlat_tables_v2/xlat_tables_private.h

I searched for a good place to declare this helper. Moving it to
arch_helpers.h, closed to cache operation helpers, looks good enough
to me.

I also changed the type of 'is_cached' to bool for consistency,
and to avoid MISRA warnings.

Change-Id: I9b016f67bc8eade25c316aa9c0db0fa4cd375b79
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

show more ...


/rk3399_ARM-atf/.gitreview
/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/bl31.ld.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.ld.S
/rk3399_ARM-atf/bl32/tsp/tsp.ld.S
/rk3399_ARM-atf/docs/plat/brcm-stingray.rst
/rk3399_ARM-atf/drivers/auth/cryptocell/713/cryptocell_crypto.c
/rk3399_ARM-atf/drivers/auth/cryptocell/713/cryptocell_plat_helpers.c
/rk3399_ARM-atf/drivers/auth/cryptocell/cryptocell_crypto.mk
/rk3399_ARM-atf/drivers/brcm/chimp.c
/rk3399_ARM-atf/drivers/brcm/emmc/emmc_chal_sd.c
/rk3399_ARM-atf/drivers/brcm/emmc/emmc_csl_sdcard.c
/rk3399_ARM-atf/drivers/brcm/emmc/emmc_csl_sdcmd.c
/rk3399_ARM-atf/drivers/brcm/emmc/emmc_pboot_hal_memory_drv.c
/rk3399_ARM-atf/drivers/brcm/iproc_gpio.c
/rk3399_ARM-atf/drivers/brcm/ocotp.c
/rk3399_ARM-atf/drivers/brcm/scp.c
/rk3399_ARM-atf/drivers/brcm/sotp.c
/rk3399_ARM-atf/drivers/brcm/spi/iproc_qspi.c
/rk3399_ARM-atf/drivers/brcm/spi/iproc_qspi.h
/rk3399_ARM-atf/drivers/brcm/spi/iproc_spi.c
/rk3399_ARM-atf/drivers/brcm/spi_flash.c
/rk3399_ARM-atf/drivers/brcm/spi_sf.c
/rk3399_ARM-atf/drivers/io/io_fip.c
aarch32/arch_helpers.h
aarch64/arch_helpers.h
/rk3399_ARM-atf/include/common/bl_common.ld.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/bsv_api.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/bsv_crypto_api.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/bsv_crypto_asym_api.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/bsv_crypto_defs.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/bsv_error.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_address_defs.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_boot_defs.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_pal_types.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_pal_types_plat.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_pka_hw_plat_defs.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_sec_defs.h
/rk3399_ARM-atf/include/drivers/auth/auth_mod.h
/rk3399_ARM-atf/include/drivers/brcm/chimp.h
/rk3399_ARM-atf/include/drivers/brcm/chimp_nv_defs.h
/rk3399_ARM-atf/include/drivers/brcm/dmu.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/bcm_emmc.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_api.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_brcm_rdb_sd4_top.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_chal_sd.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_chal_types.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_csl_sd.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_csl_sdcmd.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_csl_sdprot.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_pboot_hal_memory_drv.h
/rk3399_ARM-atf/include/drivers/brcm/fru.h
/rk3399_ARM-atf/include/drivers/brcm/iproc_gpio.h
/rk3399_ARM-atf/include/drivers/brcm/ocotp.h
/rk3399_ARM-atf/include/drivers/brcm/scp.h
/rk3399_ARM-atf/include/drivers/brcm/sf.h
/rk3399_ARM-atf/include/drivers/brcm/sotp.h
/rk3399_ARM-atf/include/drivers/brcm/spi.h
/rk3399_ARM-atf/include/drivers/brcm/spi_flash.h
/rk3399_ARM-atf/include/drivers/io/io_fip.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cpu_macros.S
/rk3399_ARM-atf/include/lib/el3_runtime/context_mgmt.h
/rk3399_ARM-atf/include/lib/fconf/fconf_tbbr_getter.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2.h
/rk3399_ARM-atf/include/plat/arm/common/arm_fconf_getter.h
/rk3399_ARM-atf/include/plat/brcm/common/bcm_console.h
/rk3399_ARM-atf/include/plat/brcm/common/bcm_elog.h
/rk3399_ARM-atf/include/plat/brcm/common/brcm_def.h
/rk3399_ARM-atf/include/plat/brcm/common/plat_brcm.h
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_normal.c
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch64/xlat_tables_arch.c
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_context.c
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_core.c
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_private.h
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_pm.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn1edge/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_io_storage.c
/rk3399_ARM-atf/plat/brcm/board/common/bcm_console.c
/rk3399_ARM-atf/plat/brcm/board/common/bcm_elog.c
/rk3399_ARM-atf/plat/brcm/board/common/bcm_elog_ddr.c
/rk3399_ARM-atf/plat/brcm/board/common/bcm_elog_ddr.h
/rk3399_ARM-atf/plat/brcm/board/common/board_arm_trusted_boot.c
/rk3399_ARM-atf/plat/brcm/board/common/board_common.c
/rk3399_ARM-atf/plat/brcm/board/common/board_common.mk
/rk3399_ARM-atf/plat/brcm/board/common/brcm_mbedtls.c
/rk3399_ARM-atf/plat/brcm/board/common/chip_id.h
/rk3399_ARM-atf/plat/brcm/board/common/cmn_plat_def.h
/rk3399_ARM-atf/plat/brcm/board/common/cmn_plat_util.h
/rk3399_ARM-atf/plat/brcm/board/common/cmn_sec.c
/rk3399_ARM-atf/plat/brcm/board/common/cmn_sec.h
/rk3399_ARM-atf/plat/brcm/board/common/err.c
/rk3399_ARM-atf/plat/brcm/board/common/plat_setup.c
/rk3399_ARM-atf/plat/brcm/board/common/platform_common.c
/rk3399_ARM-atf/plat/brcm/board/common/sbl_util.c
/rk3399_ARM-atf/plat/brcm/board/common/sbl_util.h
/rk3399_ARM-atf/plat/brcm/board/common/timer_sync.c
/rk3399_ARM-atf/plat/brcm/board/stingray/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/brcm/board/stingray/bcm958742t-ns3.mk
/rk3399_ARM-atf/plat/brcm/board/stingray/bcm958742t.mk
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/ddr/soc/include/board_family.h
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/ext_sram_init/ext_sram_init.c
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/ext_sram_init/ext_sram_init.h
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/ihost_pll_config.c
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/plat_emmc.c
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/swreg.c
/rk3399_ARM-atf/plat/brcm/board/stingray/include/bl33_info.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/board_info.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/crmu_def.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/ddr_init.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/fsx.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/ihost_pm.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/iommu.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/ncsi.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/paxb.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/paxc.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/plat_macros.S
/rk3399_ARM-atf/plat/brcm/board/stingray/include/platform_def.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/platform_sotp.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/scp_cmd.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/scp_utils.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/sdio.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/sr_def.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/sr_utils.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/swreg.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/timer_sync.h
/rk3399_ARM-atf/plat/brcm/board/stingray/platform.mk
/rk3399_ARM-atf/plat/brcm/board/stingray/src/bl2_setup.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/bl31_setup.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/brcm_pm_ops.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/fsx.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/ihost_pm.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/iommu.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/ncsi.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/paxb.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/paxc.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/pm.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/scp_cmd.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/scp_utils.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/sdio.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/sr_paxb_phy.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/topology.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/tz_sec.c
/rk3399_ARM-atf/plat/brcm/common/brcm_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/brcm/common/brcm_bl2_setup.c
/rk3399_ARM-atf/plat/brcm/common/brcm_bl31_setup.c
/rk3399_ARM-atf/plat/brcm/common/brcm_ccn.c
/rk3399_ARM-atf/plat/brcm/common/brcm_common.c
/rk3399_ARM-atf/plat/brcm/common/brcm_gicv3.c
/rk3399_ARM-atf/plat/brcm/common/brcm_image_load.c
/rk3399_ARM-atf/plat/brcm/common/brcm_io_storage.c
/rk3399_ARM-atf/plat/brcm/common/brcm_mhu.c
/rk3399_ARM-atf/plat/brcm/common/brcm_mhu.h
/rk3399_ARM-atf/plat/brcm/common/brcm_scpi.c
/rk3399_ARM-atf/plat/brcm/common/brcm_scpi.h
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31.ld.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_fiq_glue.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/include/platform_def.h
/rk3399_ARM-atf/plat/socionext/uniphier/platform.mk
3443a70220-Mar-2020 John Powell <john.powell@arm.com>

Fix MISRA C issues in BL1/BL2/BL31

Attempts to address MISRA compliance issues in BL1, BL2, and BL31 code.
Mainly issues like not using boolean expressions in conditionals,
conflicting variable name

Fix MISRA C issues in BL1/BL2/BL31

Attempts to address MISRA compliance issues in BL1, BL2, and BL31 code.
Mainly issues like not using boolean expressions in conditionals,
conflicting variable names, ignoring return values without (void), adding
explicit casts, etc.

Change-Id: If1fa18ab621b9c374db73fa6eaa6f6e5e55c146a
Signed-off-by: John Powell <john.powell@arm.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/aarch32/bl1_context_mgmt.c
/rk3399_ARM-atf/bl1/aarch64/bl1_context_mgmt.c
/rk3399_ARM-atf/bl1/bl1_fwu.c
/rk3399_ARM-atf/bl1/bl1_main.c
/rk3399_ARM-atf/bl2/bl2_image_load_v2.c
/rk3399_ARM-atf/bl2u/bl2u_main.c
/rk3399_ARM-atf/bl32/sp_min/sp_min.ld.S
/rk3399_ARM-atf/common/desc_image_load.c
/rk3399_ARM-atf/docs/about/release-information.rst
/rk3399_ARM-atf/docs/change-log-upcoming.rst
/rk3399_ARM-atf/docs/change-log.rst
/rk3399_ARM-atf/docs/components/fconf.rst
/rk3399_ARM-atf/docs/components/index.rst
/rk3399_ARM-atf/docs/components/spci-manifest-binding.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/plat/meson-gxbb.rst
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/fconf_bl1_load_config.puml
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/fconf_bl2_populate.puml
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3.mk
/rk3399_ARM-atf/drivers/st/ddr/stm32mp1_ram.c
aarch32/arch.h
aarch64/arch.h
/rk3399_ARM-atf/include/lib/smccc.h
/rk3399_ARM-atf/include/lib/utils_def.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_mmu_helpers.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/plat/arm/common/smccc_def.h
/rk3399_ARM-atf/lib/fconf/fconf.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_context.c
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/a5ds/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/arm_fpga/aarch64/fpga_helpers.S
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_console.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_def.h
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_gicv3.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_pm.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_private.h
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_topology.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/arm_fpga/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/arm_fpga/platform.mk
/rk3399_ARM-atf/plat/arm/board/corstone700/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp_ve/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/n1sdp/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgm775/fdts/sgm775_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgm775/platform.mk
/rk3399_ARM-atf/plat/arm/css/sgi/sgi-common.mk
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_bl31_setup.c
/rk3399_ARM-atf/plat/arm/css/sgm/sgm-common.mk
/rk3399_ARM-atf/plat/common/plat_psci_common.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/platform.mk
/rk3399_ARM-atf/plat/imx/imx8qm/platform.mk
/rk3399_ARM-atf/plat/imx/imx8qx/imx8qx_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8qx/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8qx/platform.mk
/rk3399_ARM-atf/plat/marvell/a3700/common/a3700_common.mk
/rk3399_ARM-atf/plat/mediatek/mt8183/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/platform_t186.mk
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/qemu/qemu_sbsa/platform.mk
/rk3399_ARM-atf/plat/rockchip/rk3399/platform.mk
/rk3399_ARM-atf/plat/rpi/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/rpi/common/include/rpi_shared.h
/rk3399_ARM-atf/plat/rpi/common/rpi3_pm.c
/rk3399_ARM-atf/plat/rpi/rpi3/include/platform_def.h
/rk3399_ARM-atf/plat/rpi/rpi3/platform.mk
/rk3399_ARM-atf/plat/rpi/rpi4/include/platform_def.h
/rk3399_ARM-atf/plat/rpi/rpi4/platform.mk
/rk3399_ARM-atf/plat/socionext/synquacer/platform.mk
/rk3399_ARM-atf/plat/socionext/uniphier/platform.mk
/rk3399_ARM-atf/plat/socionext/uniphier/tsp/uniphier_tsp_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_bl2_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_bl31_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_xlat_setup.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/stm32mp1/bl2_plat_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/include/stm32mp1_private.h
/rk3399_ARM-atf/plat/st/stm32mp1/plat_image_load.c
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_private.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_security.c
/rk3399_ARM-atf/plat/ti/k3/common/plat_common.mk
/rk3399_ARM-atf/plat/xilinx/versal/include/versal_def.h
/rk3399_ARM-atf/plat/xilinx/versal/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/zynqmp_def.h
fd092be226-Mar-2020 Masahiro Yamada <yamada.masahiro@socionext.com>

Add get_current_el_maybe_constant()

There are some cases where we want to run EL-dependent code in the
shared code.

We could use #ifdef, but it leaves slight possibility where we do not
know the ex

Add get_current_el_maybe_constant()

There are some cases where we want to run EL-dependent code in the
shared code.

We could use #ifdef, but it leaves slight possibility where we do not
know the exception level at the build-time (e.g. library code).

The counter approach is to use get_current_el(), but it is run-time
detection, so all EL code is linked, some of which might be unneeded.

This commit adds get_current_el_maybe_constant(). This is a static
inline function that returns a constant value if we know the exception
level at build-time. This is mostly the case.

if (get_current_el_maybe_constant() == 1) {
/* do something for EL1 */
} else if (get_current_el_maybe_constant() == 3) {
/* do something for EL3 */
}

If get_current_el_maybe_constant() is build-time constant, the compiler
will optimize out the unreachable code.

If such code is included from the library code, it is not built-time
constant. In this case, it falls back to get_current_el(), so it still
works.

Change-Id: Idb03c20342a5b5173fe2d6b40e1fac7998675ad3
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl32/tsp/tsp_main.c
/rk3399_ARM-atf/docs/change-log-upcoming.rst
/rk3399_ARM-atf/docs/components/spci-manifest-binding.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/plat/hikey.rst
/rk3399_ARM-atf/docs/plat/hikey960.rst
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_common.mk
/rk3399_ARM-atf/drivers/st/fmc/stm32_fmc2_nand.c
/rk3399_ARM-atf/drivers/st/io/io_stm32image.c
/rk3399_ARM-atf/drivers/st/spi/stm32_qspi.c
/rk3399_ARM-atf/fdts/corstone700.dts
aarch64/arch_helpers.h
/rk3399_ARM-atf/include/bl32/payloads/tlk.h
/rk3399_ARM-atf/include/drivers/raw_nand.h
/rk3399_ARM-atf/include/lib/el3_runtime/aarch64/context.h
/rk3399_ARM-atf/include/lib/pmf/pmf_helpers.h
/rk3399_ARM-atf/include/plat/arm/common/arm_dyn_cfg_helpers.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/fconf/fconf.c
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/allwinner/sun50i_h6/include/sunxi_mmap.h
/rk3399_ARM-atf/plat/arm/board/a5ds/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl1_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp_ve/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_bl2_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/common/arm_dyn_cfg_helpers.c
/rk3399_ARM-atf/plat/arm/common/arm_image_load.c
/rk3399_ARM-atf/plat/arm/common/arm_io_storage.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/imx/common/include/imx8_iomux.h
/rk3399_ARM-atf/plat/imx/imx8qm/imx8qm_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8qm/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8qm/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/bpmp_ipc/ivc.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/memctrl/memctrl_v1.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/memctrl/memctrl_v2.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_common.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_gicv2.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/flowctrl.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/mce.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/platform_t132.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/platform_t186.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/platform_t194.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/platform_t210.mk
/rk3399_ARM-atf/plat/st/common/stm32mp_dt.c
/rk3399_ARM-atf/services/spd/tlkd/tlkd_main.c
6cdd55d119-Mar-2020 Manish Pandey <manish.pandey2@arm.com>

Merge "el3_entrypoint_common: avoid overwriting arg3" into integration


/rk3399_ARM-atf/.gitreview
/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl31/bl31.ld.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.ld.S
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/components/fconf.rst
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/design/trusted-board-boot-build.rst
/rk3399_ARM-atf/docs/design/trusted-board-boot.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/drivers/rpi3/gpio/rpi3_gpio.c
/rk3399_ARM-atf/fdts/fvp-base-gicv2-psci-aarch32.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv2-psci.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-aarch32-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq-common.dtsi
/rk3399_ARM-atf/fdts/fvp-foundation-gicv2-psci.dts
/rk3399_ARM-atf/fdts/fvp-foundation-gicv3-psci.dts
aarch32/el3_common_macros.S
/rk3399_ARM-atf/include/bl32/payloads/tlk.h
/rk3399_ARM-atf/include/drivers/rpi3/gpio/rpi3_gpio.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/denver.h
/rk3399_ARM-atf/include/lib/fconf/fconf.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/services/arm_arch_svc.h
/rk3399_ARM-atf/include/services/spm_core_manifest.h
/rk3399_ARM-atf/lib/fconf/fconf.c
/rk3399_ARM-atf/lib/fconf/fconf_dyn_cfg_getter.c
/rk3399_ARM-atf/lib/fconf/fconf_tbbr_getter.c
/rk3399_ARM-atf/plat/arm/board/fvp/fconf/fconf_hw_config_getter.c
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/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_topology.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/fconf_hw_config_getter.h
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/jmptbl.i
/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/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rddaniel/include/platform_def.h
/rk3399_ARM-atf/plat/arm/common/arm_bl2_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_common.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_sp.c
/rk3399_ARM-atf/plat/arm/common/sp_min/arm_sp_min_setup.c
/rk3399_ARM-atf/plat/arm/css/sgm/include/sgm_base_platform_def.h
/rk3399_ARM-atf/plat/common/plat_bl_common.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_common.mk
/rk3399_ARM-atf/plat/nvidia/tegra/include/t186/tegra186_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_secondary.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_trampoline.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/platform_t186.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/t194_nvg.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/drivers/se/security_engine.c
/rk3399_ARM-atf/plat/rpi/common/include/rpi_shared.h
/rk3399_ARM-atf/plat/rpi/common/rpi3_common.c
/rk3399_ARM-atf/plat/rpi/rpi3/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/rpi/rpi3/include/platform_def.h
/rk3399_ARM-atf/plat/rpi/rpi3/include/rpi_hw.h
/rk3399_ARM-atf/plat/rpi/rpi3/platform.mk
/rk3399_ARM-atf/plat/rpi/rpi3/rpi3_bl1_setup.c
/rk3399_ARM-atf/plat/rpi/rpi3/rpi3_bl2_setup.c
/rk3399_ARM-atf/plat/rpi/rpi3/rpi3_bl31_setup.c
/rk3399_ARM-atf/plat/rpi/rpi4/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/rpi/rpi4/include/platform_def.h
/rk3399_ARM-atf/plat/rpi/rpi4/include/rpi_hw.h
/rk3399_ARM-atf/plat/rpi/rpi4/platform.mk
/rk3399_ARM-atf/plat/rpi/rpi4/rpi4_bl31_setup.c
/rk3399_ARM-atf/services/arm_arch_svc/arm_arch_svc_setup.c
/rk3399_ARM-atf/services/spd/tlkd/tlkd_main.c
/rk3399_ARM-atf/services/spd/tlkd/tlkd_pm.c
/rk3399_ARM-atf/services/spd/trusty/trusty.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_private.h
8fd41bb912-Mar-2020 Mark Dykes <mardyk01@review.trustedfirmware.org>

Merge "Use Speculation Barrier instruction for v8.5 cores" into integration


/rk3399_ARM-atf/docs/change-log-upcoming.rst
aarch32/asm_macros.S
aarch64/asm_macros.S
/rk3399_ARM-atf/include/bl32/payloads/tlk.h
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_normal.c
/rk3399_ARM-atf/plat/arm/board/n1sdp/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/memctrl/memctrl_v2.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/smmu/smmu.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/bpmp_ipc.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/memctrl_v2.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/smmu.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t186/tegra186_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t186/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra194_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t210/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_smmu.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_trampoline.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/se.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_secondary.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_smmu.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_trampoline.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_sip_calls.c
/rk3399_ARM-atf/services/spd/tlkd/tlkd_main.c
ccfb5c8110-Mar-2020 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

Use Speculation Barrier instruction for v8.5 cores

Change-Id: Ie1018bfbae2fe95c699e58648665baa75e862000
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>


/rk3399_ARM-atf/docs/getting_started/prerequisites.rst
/rk3399_ARM-atf/drivers/auth/cryptocell/712/cryptocell_crypto.c
/rk3399_ARM-atf/drivers/auth/dualroot/cot.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_crypto.c
aarch32/asm_macros.S
aarch64/asm_macros.S
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/tools_share/dualroot_oid.h
/rk3399_ARM-atf/lib/cpus/aarch64/denver.S
/rk3399_ARM-atf/make_helpers/tbbr/tbbr_tools.mk
/rk3399_ARM-atf/plat/arm/board/common/board_arm_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/common/board_common.mk
/rk3399_ARM-atf/plat/arm/board/common/protpk/README
/rk3399_ARM-atf/plat/arm/board/common/protpk/arm_dev_protpk.S
/rk3399_ARM-atf/plat/arm/board/common/protpk/arm_protpk_rsa_sha256.bin
/rk3399_ARM-atf/plat/arm/board/common/protpk/arm_protprivk_rsa.pem
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/rde1edge/rde1edge_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/rdn1edge/rdn1edge_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/sgi575/sgi575_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/sgm775/sgm775_trusted_boot.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_fiq_glue.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/pmc.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/security_engine.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t186/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t210/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/se/se_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/platform_t186.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/drivers/se/se_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/drivers/se/security_engine.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/platform_t210.mk
/rk3399_ARM-atf/tools/cert_create/Makefile
/rk3399_ARM-atf/tools/cert_create/include/dualroot/cot.h
/rk3399_ARM-atf/tools/cert_create/src/dualroot/cot.c
/rk3399_ARM-atf/tools/cert_create/src/dualroot/cot.mk
f9ea3a6211-Mar-2020 Mark Dykes <mardyk01@review.trustedfirmware.org>

Merge "Fix crash dump for lower EL" into integration


/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/crash_reporting.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
/rk3399_ARM-atf/common/aarch64/debug.S
/rk3399_ARM-atf/common/backtrace/backtrace.c
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/design_documents/cmake_framework.rst
/rk3399_ARM-atf/docs/design_documents/index.rst
/rk3399_ARM-atf/docs/getting_started/prerequisites.rst
/rk3399_ARM-atf/docs/index.rst
/rk3399_ARM-atf/docs/resources/diagrams/cmake_framework_structure.png
/rk3399_ARM-atf/docs/resources/diagrams/cmake_framework_workflow.png
/rk3399_ARM-atf/drivers/arm/gic/v3/gicdv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicrv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_private.h
/rk3399_ARM-atf/drivers/auth/cryptocell/712/cryptocell_crypto.c
/rk3399_ARM-atf/drivers/auth/dualroot/cot.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_crypto.c
aarch64/arch.h
/rk3399_ARM-atf/include/common/bl_common.ld.h
/rk3399_ARM-atf/include/common/debug.h
/rk3399_ARM-atf/include/drivers/arm/gicv3.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2_helpers.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/tools_share/dualroot_oid.h
/rk3399_ARM-atf/lib/cpus/aarch64/denver.S
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_context.c
/rk3399_ARM-atf/make_helpers/tbbr/tbbr_tools.mk
/rk3399_ARM-atf/plat/arm/board/common/board_arm_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/common/board_common.mk
/rk3399_ARM-atf/plat/arm/board/common/protpk/README
/rk3399_ARM-atf/plat/arm/board/common/protpk/arm_dev_protpk.S
/rk3399_ARM-atf/plat/arm/board/common/protpk/arm_protpk_rsa_sha256.bin
/rk3399_ARM-atf/plat/arm/board/common/protpk/arm_protprivk_rsa.pem
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/n1sdp/platform.mk
/rk3399_ARM-atf/plat/arm/board/rde1edge/rde1edge_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/rdn1edge/rdn1edge_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/sgi575/sgi575_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/sgm775/sgm775_trusted_boot.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/css/sgi/sgi-common.mk
/rk3399_ARM-atf/plat/arm/css/sgm/sgm-common.mk
/rk3399_ARM-atf/plat/common/aarch64/plat_common.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl31_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl_common.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_pm.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/include/hi3660.h
/rk3399_ARM-atf/plat/hisilicon/hikey960/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/platform.mk
/rk3399_ARM-atf/plat/imx/imx8qm/platform.mk
/rk3399_ARM-atf/plat/imx/imx8qx/platform.mk
/rk3399_ARM-atf/plat/marvell/a3700/common/a3700_common.mk
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31.ld.S
/rk3399_ARM-atf/plat/mediatek/mt8183/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_fiq_glue.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/pmc.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/security_engine.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t186/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t210/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/se/se_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/platform_t186.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/drivers/se/se_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/drivers/se/security_engine.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/platform_t210.mk
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/qemu/qemu_sbsa/platform.mk
/rk3399_ARM-atf/plat/rockchip/rk3399/platform.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/ti/k3/common/plat_common.mk
/rk3399_ARM-atf/plat/xilinx/versal/platform.mk
/rk3399_ARM-atf/tools/cert_create/Makefile
/rk3399_ARM-atf/tools/cert_create/include/dualroot/cot.h
/rk3399_ARM-atf/tools/cert_create/src/dualroot/cot.c
/rk3399_ARM-atf/tools/cert_create/src/dualroot/cot.mk
efe30cb109-Mar-2020 Mark Dykes <mardyk01@review.trustedfirmware.org>

Merge "aarch32: stop speculative execution past exception returns" into integration


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/aarch32/bl1_exceptions.S
/rk3399_ARM-atf/bl2/aarch32/bl2_el3_entrypoint.S
/rk3399_ARM-atf/bl32/tsp/tsp_main.c
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/change-log-upcoming.rst
/rk3399_ARM-atf/docs/design/auth-framework.rst
/rk3399_ARM-atf/docs/design/trusted-board-boot.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/getting_started/tools-build.rst
/rk3399_ARM-atf/docs/plat/qemu.rst
/rk3399_ARM-atf/drivers/arm/css/scp/css_pm_scmi.c
/rk3399_ARM-atf/drivers/auth/crypto_mod.c
/rk3399_ARM-atf/drivers/auth/cryptocell/712/cryptocell_crypto.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_common.mk
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_crypto.c
/rk3399_ARM-atf/drivers/io/io_encrypted.c
/rk3399_ARM-atf/fdts/a5ds.dts
aarch32/asm_macros.S
aarch32/smccc_macros.S
/rk3399_ARM-atf/include/drivers/auth/crypto_mod.h
/rk3399_ARM-atf/include/drivers/auth/mbedtls/mbedtls_config.h
/rk3399_ARM-atf/include/drivers/io/io_encrypted.h
/rk3399_ARM-atf/include/drivers/io/io_storage.h
/rk3399_ARM-atf/include/export/common/tbbr/tbbr_img_def_exp.h
/rk3399_ARM-atf/include/plat/arm/common/fconf_arm_sp_getter.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/services/spm_core_manifest.h
/rk3399_ARM-atf/include/services/spmd_svc.h
/rk3399_ARM-atf/include/tools_share/firmware_encrypted.h
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/common/arm_bl2_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/common/arm_image_load.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_sp.c
/rk3399_ARM-atf/plat/common/plat_bl_common.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/imx/common/aarch32/imx_uart_console.S
/rk3399_ARM-atf/plat/imx/common/imx_uart_console.S
/rk3399_ARM-atf/plat/imx/common/lpuart_console.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/spe/shared_console.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_fiq_glue.c
/rk3399_ARM-atf/plat/qemu/common/qemu_io_storage.c
/rk3399_ARM-atf/plat/qemu/qemu/include/platform_def.h
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_io_storage.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/tools/encrypt_fw/Makefile
/rk3399_ARM-atf/tools/encrypt_fw/include/cmd_opt.h
/rk3399_ARM-atf/tools/encrypt_fw/include/debug.h
/rk3399_ARM-atf/tools/encrypt_fw/include/encrypt.h
/rk3399_ARM-atf/tools/encrypt_fw/src/cmd_opt.c
/rk3399_ARM-atf/tools/encrypt_fw/src/encrypt.c
/rk3399_ARM-atf/tools/encrypt_fw/src/main.c
b4292bc603-Mar-2020 Alexei Fedorov <Alexei.Fedorov@arm.com>

Fix crash dump for lower EL

This patch provides a fix for incorrect crash dump data for
lower EL when TF-A is built with HANDLE_EA_EL3_FIRST=1 option
which enables routing of External Aborts and SEr

Fix crash dump for lower EL

This patch provides a fix for incorrect crash dump data for
lower EL when TF-A is built with HANDLE_EA_EL3_FIRST=1 option
which enables routing of External Aborts and SErrors to EL3.

Change-Id: I9d5e6775e6aad21db5b78362da6c3a3d897df977
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>

show more ...

2825946e17-Feb-2020 Max Shvetsov <maksims.svecovs@arm.com>

SPMD: Adds partially supported EL2 registers.

This patch adds EL2 registers that are supported up to ARMv8.6.
ARM_ARCH_MINOR has to specified to enable save/restore routine.

Note: Following registe

SPMD: Adds partially supported EL2 registers.

This patch adds EL2 registers that are supported up to ARMv8.6.
ARM_ARCH_MINOR has to specified to enable save/restore routine.

Note: Following registers are still not covered in save/restore.
* AMEVCNTVOFF0<n>_EL2
* AMEVCNTVOFF1<n>_EL2
* ICH_AP0R<n>_EL2
* ICH_AP1R<n>_EL2
* ICH_LR<n>_EL2

Change-Id: I4813f3243e56e21cb297b31ef549a4b38d4876e1
Signed-off-by: Max Shvetsov <maksims.svecovs@arm.com>

show more ...

28f39f0225-Feb-2020 Max Shvetsov <maksims.svecovs@arm.com>

SPMD: save/restore EL2 system registers.

NOTE: Not all EL-2 system registers are saved/restored.
This subset includes registers recognized by ARMv8.0

Change-Id: I9993c7d78d8f5f8e72d1c6c8d6fd871283a

SPMD: save/restore EL2 system registers.

NOTE: Not all EL-2 system registers are saved/restored.
This subset includes registers recognized by ARMv8.0

Change-Id: I9993c7d78d8f5f8e72d1c6c8d6fd871283aa3ce0
Signed-off-by: Jose Marinho <jose.marinho@arm.com>
Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
Signed-off-by: Artsem Artsemenka <artsem.artsemenka@arm.com>
Signed-off-by: Max Shvetsov <maksims.svecovs@arm.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/docs/change-log-upcoming.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/docs/plat/index.rst
/rk3399_ARM-atf/drivers/allwinner/sunxi_msgbox.c
/rk3399_ARM-atf/drivers/amlogic/console/aarch64/meson_console.S
/rk3399_ARM-atf/drivers/arm/css/scpi/css_scpi.c
/rk3399_ARM-atf/drivers/arm/pl011/aarch32/pl011_console.S
/rk3399_ARM-atf/drivers/arm/pl011/aarch64/pl011_console.S
/rk3399_ARM-atf/drivers/cadence/uart/aarch64/cdns_console.S
/rk3399_ARM-atf/drivers/console/aarch32/skeleton_console.S
/rk3399_ARM-atf/drivers/console/aarch64/skeleton_console.S
/rk3399_ARM-atf/drivers/coreboot/cbmem_console/aarch64/cbmem_console.S
/rk3399_ARM-atf/drivers/imx/uart/imx_uart.h
/rk3399_ARM-atf/drivers/marvell/uart/a3700_console.S
/rk3399_ARM-atf/drivers/renesas/rcar/console/rcar_console.S
/rk3399_ARM-atf/drivers/renesas/rcar/scif/scif.S
/rk3399_ARM-atf/drivers/st/uart/aarch32/stm32_console.S
/rk3399_ARM-atf/drivers/ti/uart/aarch32/16550_console.S
/rk3399_ARM-atf/drivers/ti/uart/aarch64/16550_console.S
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq-2t.dts
aarch64/arch.h
/rk3399_ARM-atf/include/drivers/amlogic/meson_console.h
/rk3399_ARM-atf/include/drivers/arm/pl011.h
/rk3399_ARM-atf/include/drivers/cadence/cdns_uart.h
/rk3399_ARM-atf/include/drivers/console.h
/rk3399_ARM-atf/include/drivers/coreboot/cbmem_console.h
/rk3399_ARM-atf/include/drivers/marvell/uart/a3700_console.h
/rk3399_ARM-atf/include/drivers/renesas/rcar/console/console.h
/rk3399_ARM-atf/include/drivers/st/stm32_console.h
/rk3399_ARM-atf/include/drivers/ti/uart/uart_16550.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_klein.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_matterhorn.h
/rk3399_ARM-atf/include/lib/el3_runtime/aarch64/context.h
/rk3399_ARM-atf/include/lib/el3_runtime/context_mgmt.h
/rk3399_ARM-atf/include/lib/fconf/fconf.h
/rk3399_ARM-atf/include/lib/object_pool.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2_helpers.h
/rk3399_ARM-atf/include/plat/arm/board/common/board_css_def.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/plat/arm/css/common/css_def.h
/rk3399_ARM-atf/include/services/arm_arch_svc.h
/rk3399_ARM-atf/lib/aarch64/cache_helpers.S
/rk3399_ARM-atf/lib/coreboot/coreboot_table.c
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_klein.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_matterhorn.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/xlat_tables_v2/ro_xlat_tables.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_context.c
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/allwinner/common/allwinner-common.mk
/rk3399_ARM-atf/plat/allwinner/common/include/platform_def.h
/rk3399_ARM-atf/plat/allwinner/common/sunxi_bl31_setup.c
/rk3399_ARM-atf/plat/allwinner/common/sunxi_common.c
/rk3399_ARM-atf/plat/allwinner/common/sunxi_pm.c
/rk3399_ARM-atf/plat/allwinner/sun50i_a64/include/sunxi_mmap.h
/rk3399_ARM-atf/plat/allwinner/sun50i_h6/include/sunxi_mmap.h
/rk3399_ARM-atf/plat/amlogic/common/aml_console.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_security.c
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/juno_security.c
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddaniel/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rddaniel/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddaniel/rddaniel_security.c
/rk3399_ARM-atf/plat/arm/board/sgm775/include/platform_def.h
/rk3399_ARM-atf/plat/arm/common/arm_bl31_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_common.c
/rk3399_ARM-atf/plat/arm/common/arm_console.c
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg.c
/rk3399_ARM-atf/plat/arm/common/arm_fconf_io_storage.c
/rk3399_ARM-atf/plat/arm/common/arm_tzc400.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/arm/common/sp_min/arm_sp_min_setup.c
/rk3399_ARM-atf/plat/arm/common/tsp/arm_tsp_setup.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_bl1_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_bl2_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_bl31_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl1_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl2_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl31_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_pm.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl1_plat_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl31_plat_setup.c
/rk3399_ARM-atf/plat/imx/common/include/imx8_lpuart.h
/rk3399_ARM-atf/plat/imx/common/include/imx_uart.h
/rk3399_ARM-atf/plat/imx/imx7/common/imx7_bl2_el3_common.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/imx8mm_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/imx8mq_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8m/include/imx_rdc.h
/rk3399_ARM-atf/plat/imx/imx8qm/imx8qm_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8qx/imx8qx_bl31_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/platform.mk
/rk3399_ARM-atf/plat/intel/soc/common/include/platform_def.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_emac.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_mailbox.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_sip_svc.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_system_manager.h
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_emac.c
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_mailbox.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_psci.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_sip_svc.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/platform.mk
/rk3399_ARM-atf/plat/layerscape/common/aarch64/ls_console.S
/rk3399_ARM-atf/plat/layerscape/common/include/ls_16550.h
/rk3399_ARM-atf/plat/layerscape/common/ls_bl1_setup.c
/rk3399_ARM-atf/plat/layerscape/common/ls_bl2_setup.c
/rk3399_ARM-atf/plat/layerscape/common/ls_bl31_setup.c
/rk3399_ARM-atf/plat/layerscape/common/tsp/ls_tsp_setup.c
/rk3399_ARM-atf/plat/marvell/common/marvell_console.c
/rk3399_ARM-atf/plat/mediatek/mt8173/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/wdt/wdt.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/wdt/wdt.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/mt8173_def.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/plat_sip_calls.h
/rk3399_ARM-atf/plat/mediatek/mt8173/plat_pm.c
/rk3399_ARM-atf/plat/mediatek/mt8173/plat_sip_calls.c
/rk3399_ARM-atf/plat/mediatek/mt8173/platform.mk
/rk3399_ARM-atf/plat/mediatek/mt8183/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt8183/drivers/emi_mpu/emi_mpu.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/bpmp_ipc/intf.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/spe/shared_console.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/spe.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/platform_t186.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/plat/qemu/common/qemu_console.c
/rk3399_ARM-atf/plat/renesas/rcar/rcar_common.c
/rk3399_ARM-atf/plat/rockchip/common/bl31_plat_setup.c
/rk3399_ARM-atf/plat/rockchip/common/drivers/parameter/ddr_parameter.h
/rk3399_ARM-atf/plat/rockchip/common/sp_min_plat_setup.c
/rk3399_ARM-atf/plat/rpi/common/rpi3_common.c
/rk3399_ARM-atf/plat/socionext/synquacer/sq_bl31_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_console.S
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_console_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_io_storage.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_soc_info.c
/rk3399_ARM-atf/plat/st/stm32mp1/bl2_plat_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min_setup.c
/rk3399_ARM-atf/plat/ti/k3/common/k3_console.c
/rk3399_ARM-atf/plat/xilinx/versal/bl31_versal_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
/rk3399_ARM-atf/services/arm_arch_svc/arm_arch_svc_setup.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/tools/memory/print_memory_map.py
/rk3399_ARM-atf/tools/sptool/sp_mk_generator.py
6bc2438226-Feb-2020 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

aarch32: stop speculative execution past exception returns

aarch32 CPUs speculatively execute instructions following a
ERET as if it was not a jump instruction. This could lead to
cache-based side c

aarch32: stop speculative execution past exception returns

aarch32 CPUs speculatively execute instructions following a
ERET as if it was not a jump instruction. This could lead to
cache-based side channel vulnerabilities. The software fix is
to place barrier instructions following ERET.

The counterpart patch for aarch64 is merged:
https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/commit/?id=f461fe346b728d0e88142fd7b8f2816415af18bc

Change-Id: I2aa3105bee0b92238f389830b3a3b8650f33af3d
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/aarch32/bl1_exceptions.S
/rk3399_ARM-atf/bl2/aarch32/bl2_el3_entrypoint.S
/rk3399_ARM-atf/docs/change-log-upcoming.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/docs/plat/index.rst
/rk3399_ARM-atf/drivers/allwinner/sunxi_msgbox.c
/rk3399_ARM-atf/drivers/amlogic/console/aarch64/meson_console.S
/rk3399_ARM-atf/drivers/arm/css/scpi/css_scpi.c
/rk3399_ARM-atf/drivers/arm/pl011/aarch32/pl011_console.S
/rk3399_ARM-atf/drivers/arm/pl011/aarch64/pl011_console.S
/rk3399_ARM-atf/drivers/cadence/uart/aarch64/cdns_console.S
/rk3399_ARM-atf/drivers/console/aarch32/skeleton_console.S
/rk3399_ARM-atf/drivers/console/aarch64/skeleton_console.S
/rk3399_ARM-atf/drivers/coreboot/cbmem_console/aarch64/cbmem_console.S
/rk3399_ARM-atf/drivers/imx/uart/imx_uart.h
/rk3399_ARM-atf/drivers/marvell/uart/a3700_console.S
/rk3399_ARM-atf/drivers/renesas/rcar/console/rcar_console.S
/rk3399_ARM-atf/drivers/renesas/rcar/scif/scif.S
/rk3399_ARM-atf/drivers/st/uart/aarch32/stm32_console.S
/rk3399_ARM-atf/drivers/ti/uart/aarch32/16550_console.S
/rk3399_ARM-atf/drivers/ti/uart/aarch64/16550_console.S
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq-2t.dts
aarch32/asm_macros.S
aarch32/smccc_macros.S
/rk3399_ARM-atf/include/drivers/amlogic/meson_console.h
/rk3399_ARM-atf/include/drivers/arm/pl011.h
/rk3399_ARM-atf/include/drivers/cadence/cdns_uart.h
/rk3399_ARM-atf/include/drivers/console.h
/rk3399_ARM-atf/include/drivers/coreboot/cbmem_console.h
/rk3399_ARM-atf/include/drivers/marvell/uart/a3700_console.h
/rk3399_ARM-atf/include/drivers/renesas/rcar/console/console.h
/rk3399_ARM-atf/include/drivers/st/stm32_console.h
/rk3399_ARM-atf/include/drivers/ti/uart/uart_16550.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_klein.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_matterhorn.h
/rk3399_ARM-atf/include/lib/fconf/fconf.h
/rk3399_ARM-atf/include/lib/object_pool.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2_helpers.h
/rk3399_ARM-atf/include/plat/arm/board/common/board_css_def.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/plat/arm/css/common/css_def.h
/rk3399_ARM-atf/include/services/arm_arch_svc.h
/rk3399_ARM-atf/lib/aarch64/cache_helpers.S
/rk3399_ARM-atf/lib/coreboot/coreboot_table.c
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_klein.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_matterhorn.S
/rk3399_ARM-atf/lib/xlat_tables_v2/ro_xlat_tables.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_context.c
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/allwinner/common/allwinner-common.mk
/rk3399_ARM-atf/plat/allwinner/common/include/platform_def.h
/rk3399_ARM-atf/plat/allwinner/common/sunxi_bl31_setup.c
/rk3399_ARM-atf/plat/allwinner/common/sunxi_common.c
/rk3399_ARM-atf/plat/allwinner/common/sunxi_pm.c
/rk3399_ARM-atf/plat/allwinner/sun50i_a64/include/sunxi_mmap.h
/rk3399_ARM-atf/plat/allwinner/sun50i_h6/include/sunxi_mmap.h
/rk3399_ARM-atf/plat/amlogic/common/aml_console.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_security.c
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/juno_security.c
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddaniel/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rddaniel/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddaniel/rddaniel_security.c
/rk3399_ARM-atf/plat/arm/board/sgm775/include/platform_def.h
/rk3399_ARM-atf/plat/arm/common/arm_bl31_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_common.c
/rk3399_ARM-atf/plat/arm/common/arm_console.c
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg.c
/rk3399_ARM-atf/plat/arm/common/arm_fconf_io_storage.c
/rk3399_ARM-atf/plat/arm/common/arm_tzc400.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/arm/common/sp_min/arm_sp_min_setup.c
/rk3399_ARM-atf/plat/arm/common/tsp/arm_tsp_setup.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_bl1_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_bl2_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_bl31_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl1_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl2_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl31_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_pm.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl1_plat_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl31_plat_setup.c
/rk3399_ARM-atf/plat/imx/common/include/imx8_lpuart.h
/rk3399_ARM-atf/plat/imx/common/include/imx_uart.h
/rk3399_ARM-atf/plat/imx/imx7/common/imx7_bl2_el3_common.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/imx8mm_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/imx8mq_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8m/include/imx_rdc.h
/rk3399_ARM-atf/plat/imx/imx8qm/imx8qm_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8qx/imx8qx_bl31_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/platform.mk
/rk3399_ARM-atf/plat/intel/soc/common/include/platform_def.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_emac.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_mailbox.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_sip_svc.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_system_manager.h
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_emac.c
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_mailbox.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_psci.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_sip_svc.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/platform.mk
/rk3399_ARM-atf/plat/layerscape/common/aarch64/ls_console.S
/rk3399_ARM-atf/plat/layerscape/common/include/ls_16550.h
/rk3399_ARM-atf/plat/layerscape/common/ls_bl1_setup.c
/rk3399_ARM-atf/plat/layerscape/common/ls_bl2_setup.c
/rk3399_ARM-atf/plat/layerscape/common/ls_bl31_setup.c
/rk3399_ARM-atf/plat/layerscape/common/tsp/ls_tsp_setup.c
/rk3399_ARM-atf/plat/marvell/common/marvell_console.c
/rk3399_ARM-atf/plat/mediatek/mt8173/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/wdt/wdt.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/wdt/wdt.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/mt8173_def.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/plat_sip_calls.h
/rk3399_ARM-atf/plat/mediatek/mt8173/plat_pm.c
/rk3399_ARM-atf/plat/mediatek/mt8173/plat_sip_calls.c
/rk3399_ARM-atf/plat/mediatek/mt8173/platform.mk
/rk3399_ARM-atf/plat/mediatek/mt8183/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt8183/drivers/emi_mpu/emi_mpu.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/bpmp_ipc/intf.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/spe/shared_console.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/spe.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/platform_t186.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/plat/qemu/common/qemu_console.c
/rk3399_ARM-atf/plat/renesas/rcar/rcar_common.c
/rk3399_ARM-atf/plat/rockchip/common/bl31_plat_setup.c
/rk3399_ARM-atf/plat/rockchip/common/drivers/parameter/ddr_parameter.h
/rk3399_ARM-atf/plat/rockchip/common/sp_min_plat_setup.c
/rk3399_ARM-atf/plat/rpi/common/rpi3_common.c
/rk3399_ARM-atf/plat/socionext/synquacer/sq_bl31_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_console.S
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_console_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_io_storage.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_soc_info.c
/rk3399_ARM-atf/plat/st/stm32mp1/bl2_plat_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min_setup.c
/rk3399_ARM-atf/plat/ti/k3/common/k3_console.c
/rk3399_ARM-atf/plat/xilinx/versal/bl31_versal_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
/rk3399_ARM-atf/services/arm_arch_svc/arm_arch_svc_setup.c
/rk3399_ARM-atf/tools/memory/print_memory_map.py
/rk3399_ARM-atf/tools/sptool/sp_mk_generator.py
30f3100528-Jan-2020 Yann Gautier <yann.gautier@st.com>

el3_entrypoint_common: avoid overwriting arg3

At each BL entry point, the registers r9 to r12 are used to save info from
the previous BL parameters put in r0 to r3. But zeromem uses r12, leading
to

el3_entrypoint_common: avoid overwriting arg3

At each BL entry point, the registers r9 to r12 are used to save info from
the previous BL parameters put in r0 to r3. But zeromem uses r12, leading
to a corruption of arg3. Therefore this change copies r12 to r7 before
zeromem() call and restores r12 afterwards. It may be better to save it
in r7 in el3_arch_init_common and not at the entrypoint as r7 could be used
in other functions, especially platform ones.
This is a fix for Task T661.

Change-Id: Icc11990c69b5d4c542d08aca1a77b1f754b61a53
Signed-off-by: Yann Gautier <yann.gautier@st.com>

show more ...

dd4f088518-Jun-2018 Varun Wadekar <vwadekar@nvidia.com>

Tegra: delay_timer: support for physical secure timer

This patch modifies the delay timer driver to switch to the ARM
secure physical timer instead of using Tegra's on-chip uS timer.

The secure tim

Tegra: delay_timer: support for physical secure timer

This patch modifies the delay timer driver to switch to the ARM
secure physical timer instead of using Tegra's on-chip uS timer.

The secure timer is not accessible to the NS world and so eliminates
an important attack vector, where the Tegra timer source gets switched
off from the NS world leading to a DoS attack for the trusted world.

This timer is shared with the S-EL1 layer for now, but later patches
will mark it as exclusive to the EL3 exception mode.

Change-Id: I2c00f8cb4c48b25578971c626c314603906ad7cc
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/aarch64/bl1_context_mgmt.c
/rk3399_ARM-atf/bl1/bl1.ld.S
/rk3399_ARM-atf/bl1/bl1_fwu.c
/rk3399_ARM-atf/bl1/bl1_main.c
/rk3399_ARM-atf/bl1/bl1_private.h
/rk3399_ARM-atf/bl2/bl2.ld.S
/rk3399_ARM-atf/bl2/bl2_image_load_v2.c
/rk3399_ARM-atf/bl31/bl31.mk
/rk3399_ARM-atf/common/bl_common.c
/rk3399_ARM-atf/common/desc_image_load.c
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/components/debugfs-design.rst
/rk3399_ARM-atf/docs/components/exception-handling.rst
/rk3399_ARM-atf/docs/components/fconf.rst
/rk3399_ARM-atf/docs/components/index.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/design/trusted-board-boot-build.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/global_substitutions.txt
/rk3399_ARM-atf/docs/glossary.rst
/rk3399_ARM-atf/docs/perf/index.rst
/rk3399_ARM-atf/docs/perf/performance-monitoring-unit.rst
/rk3399_ARM-atf/docs/plat/arm/arm-build-options.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/docs/plat/meson-axg.rst
/rk3399_ARM-atf/docs/process/coding-guidelines.rst
/rk3399_ARM-atf/docs/process/coding-style.rst
/rk3399_ARM-atf/docs/process/contributing.rst
/rk3399_ARM-atf/docs/process/index.rst
/rk3399_ARM-atf/docs/process/security-hardening.rst
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/fconf_bl1_load_config.puml
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/fconf_bl2_populate.puml
/rk3399_ARM-atf/drivers/arm/css/mhu/css_mhu_doorbell.c
/rk3399_ARM-atf/drivers/arm/css/scp/css_pm_scmi.c
/rk3399_ARM-atf/drivers/auth/auth_mod.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot.c
/rk3399_ARM-atf/drivers/cfi/v2m/v2m_flash.c
/rk3399_ARM-atf/drivers/console/multi_console.c
/rk3399_ARM-atf/drivers/delay_timer/generic_delay_timer.c
/rk3399_ARM-atf/drivers/marvell/mochi/cp110_setup.c
/rk3399_ARM-atf/drivers/renesas/rcar/board/board.c
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/boot_init_dram.c
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/boot_init_dram_config.c
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/boot_init_dram_regdef.h
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/init_dram_tbl_m3n.h
/rk3399_ARM-atf/fdts/corstone700.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq-2t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq.dts
aarch64/arch.h
/rk3399_ARM-atf/include/bl1/bl1.h
/rk3399_ARM-atf/include/drivers/arm/css/css_mhu_doorbell.h
/rk3399_ARM-atf/include/drivers/arm/css/scmi.h
/rk3399_ARM-atf/include/drivers/io/io_storage.h
/rk3399_ARM-atf/include/drivers/marvell/mochi/cp110_setup.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a57.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/fconf/fconf.h
/rk3399_ARM-atf/include/lib/fconf/fconf_dyn_cfg_getter.h
/rk3399_ARM-atf/include/lib/fconf/fconf_tbbr_getter.h
/rk3399_ARM-atf/include/lib/utils_def.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/arm_dyn_cfg_helpers.h
/rk3399_ARM-atf/include/plat/arm/common/arm_fconf_getter.h
/rk3399_ARM-atf/include/plat/arm/common/arm_fconf_io_storage.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/plat/arm/css/common/css_def.h
/rk3399_ARM-atf/include/plat/arm/css/common/css_pm.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/services/spci_svc.h
/rk3399_ARM-atf/include/services/spm_core_manifest.h
/rk3399_ARM-atf/include/services/spmd_svc.h
/rk3399_ARM-atf/include/tools_share/sptool.h
/rk3399_ARM-atf/include/tools_share/uuid.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a57.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/fconf/fconf.c
/rk3399_ARM-atf/lib/fconf/fconf.mk
/rk3399_ARM-atf/lib/fconf/fconf_dyn_cfg_getter.c
/rk3399_ARM-atf/lib/fconf/fconf_tbbr_getter.c
/rk3399_ARM-atf/lib/psci/psci_common.c
/rk3399_ARM-atf/lib/utils/mem_region.c
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/amlogic/axg/axg_bl31_setup.c
/rk3399_ARM-atf/plat/amlogic/axg/axg_common.c
/rk3399_ARM-atf/plat/amlogic/axg/axg_def.h
/rk3399_ARM-atf/plat/amlogic/axg/axg_pm.c
/rk3399_ARM-atf/plat/amlogic/axg/include/platform_def.h
/rk3399_ARM-atf/plat/amlogic/axg/platform.mk
/rk3399_ARM-atf/plat/arm/board/a5ds/fdts/a5ds_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/a5ds/platform.mk
/rk3399_ARM-atf/plat/arm/board/common/board_arm_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/common/board_common.mk
/rk3399_ARM-atf/plat/arm/board/common/rotpk/arm_dev_rotpk.S
/rk3399_ARM-atf/plat/arm/board/corstone700/corstone700_plat.c
/rk3399_ARM-atf/plat/arm/board/corstone700/corstone700_stack_protector.c
/rk3399_ARM-atf/plat/arm/board/corstone700/corstone700_topology.c
/rk3399_ARM-atf/plat/arm/board/corstone700/drivers/mhu/mhu.c
/rk3399_ARM-atf/plat/arm/board/corstone700/drivers/mhu/mhu.h
/rk3399_ARM-atf/plat/arm/board/corstone700/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/corstone700/platform.mk
/rk3399_ARM-atf/plat/arm/board/corstone700/sp_min/sp_min-corstone700.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_io_storage.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/jmptbl.i
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp_ve/fdts/fvp_ve_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp_ve/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/fdts/juno_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/jmptbl.i
/rk3399_ARM-atf/plat/arm/board/juno/juno_bl1_setup.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_topology.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/n1sdp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/n1sdp/n1sdp_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/rddaniel/fdts/rddaniel_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddaniel/fdts/rddaniel_nt_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddaniel/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rddaniel/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddaniel/rddaniel_err.c
/rk3399_ARM-atf/plat/arm/board/rddaniel/rddaniel_plat.c
/rk3399_ARM-atf/plat/arm/board/rddaniel/rddaniel_security.c
/rk3399_ARM-atf/plat/arm/board/rddaniel/rddaniel_topology.c
/rk3399_ARM-atf/plat/arm/board/rde1edge/fdts/rde1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rde1edge/fdts/rde1edge_nt_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rde1edge/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rde1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/rde1edge/rde1edge_plat.c
/rk3399_ARM-atf/plat/arm/board/rde1edge/rde1edge_topology.c
/rk3399_ARM-atf/plat/arm/board/rde1edge/rde1edge_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/rdn1edge/fdts/rdn1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rdn1edge/fdts/rdn1edge_nt_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rdn1edge/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rdn1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn1edge/rdn1edge_plat.c
/rk3399_ARM-atf/plat/arm/board/rdn1edge/rdn1edge_topology.c
/rk3399_ARM-atf/plat/arm/board/rdn1edge/rdn1edge_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/sgi575/fdts/sgi575_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgi575/fdts/sgi575_nt_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgi575/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/sgi575/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgi575/sgi575_plat.c
/rk3399_ARM-atf/plat/arm/board/sgi575/sgi575_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/sgm775/fdts/sgm775_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgm775/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgm775/sgm775_trusted_boot.c
/rk3399_ARM-atf/plat/arm/common/arm_bl1_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_bl2_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/common/arm_dyn_cfg_helpers.c
/rk3399_ARM-atf/plat/arm/common/arm_fconf_io_storage.c
/rk3399_ARM-atf/plat/arm/common/arm_io_storage.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/arm/css/sgi/aarch64/sgi_helper.S
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_plat.h
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_variant.h
/rk3399_ARM-atf/plat/arm/css/sgi/sgi-common.mk
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_bl31_setup.c
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_image_load.c
/rk3399_ARM-atf/plat/arm/css/sgm/include/sgm_base_platform_def.h
/rk3399_ARM-atf/plat/arm/css/sgm/sgm_bl31_setup.c
/rk3399_ARM-atf/plat/common/plat_psci_common.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/intel/soc/agilex/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/include/socfpga_plat_def.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_handoff.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_mailbox.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_sip_svc.h
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_mailbox.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_psci.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_sip_svc.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/include/socfpga_plat_def.h
/rk3399_ARM-atf/plat/marvell/a8k/common/mss/mss_a8k.mk
/rk3399_ARM-atf/plat/marvell/a8k/common/mss/mss_bl2_setup.c
/rk3399_ARM-atf/plat/marvell/common/mss/mss_scp_bl2_format.h
/rk3399_ARM-atf/plat/marvell/common/mss/mss_scp_bootloader.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/bpmp_ipc/intf.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/bpmp_ipc/intf.h
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/bpmp_ipc/ivc.h
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/memctrl/memctrl_v2.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_common.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_delay_timer.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/t132/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t186/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t210/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/platform_t132.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/platform_t186.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/t194_nvg.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/nvg.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/platform_t210.mk
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/renesas/rcar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/renesas/rcar/include/rcar_version.h
/rk3399_ARM-atf/plat/socionext/synquacer/include/platform_def.h
/rk3399_ARM-atf/plat/socionext/uniphier/tsp/uniphier_tsp_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier.h
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_bl2_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_bl31_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_boot_device.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_console_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_emmc.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_io_storage.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_nand.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_psci.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_xlat_setup.c
/rk3399_ARM-atf/plat/xilinx/versal/pm_service/pm_svc_main.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_svc_main.c
/rk3399_ARM-atf/services/spd/trusty/generic-arm64-smcall.c
/rk3399_ARM-atf/services/spd/trusty/generic-arm64-smcall.h
/rk3399_ARM-atf/services/spd/trusty/trusty.c
/rk3399_ARM-atf/services/spd/tspd/tspd_main.c
/rk3399_ARM-atf/services/std_svc/spmd/aarch64/spmd_helpers.S
/rk3399_ARM-atf/services/std_svc/spmd/spmd.mk
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_private.h
/rk3399_ARM-atf/services/std_svc/std_svc_setup.c
/rk3399_ARM-atf/tools/sptool/sptool.c
68c7608806-Feb-2020 Alexei Fedorov <Alexei.Fedorov@arm.com>

Make PAC demangling more generic

At the moment, address demangling is only used by the backtrace
functionality. However, at some point, other parts of the TF-A
codebase may want to use it.
The 'dema

Make PAC demangling more generic

At the moment, address demangling is only used by the backtrace
functionality. However, at some point, other parts of the TF-A
codebase may want to use it.
The 'demangle_address' function is replaced with a single XPACI
instruction which is also added in 'do_crash_reporting()'.

Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
Change-Id: I4424dcd54d5bf0a5f9b2a0a84c4e565eec7329ec

show more ...


/rk3399_ARM-atf/.gitignore
/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/tbbr/tbbr_img_desc.c
/rk3399_ARM-atf/bl2/aarch64/bl2_el3_entrypoint.S
/rk3399_ARM-atf/bl2/bl2_el3.ld.S
/rk3399_ARM-atf/bl2/bl2_image_load_v2.c
/rk3399_ARM-atf/bl31/aarch64/bl31_entrypoint.S
/rk3399_ARM-atf/bl31/aarch64/crash_reporting.S
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl31/bl31.ld.S
/rk3399_ARM-atf/bl31/bl31_context_mgmt.c
/rk3399_ARM-atf/bl31/interrupt_mgmt.c
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_entrypoint.S
/rk3399_ARM-atf/bl32/tsp/tsp.ld.S
/rk3399_ARM-atf/common/backtrace/backtrace.c
/rk3399_ARM-atf/common/fdt_wrappers.c
/rk3399_ARM-atf/docs/change-log-upcoming.rst
/rk3399_ARM-atf/docs/components/secure-partition-manager-design.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/docs-build.rst
/rk3399_ARM-atf/docs/plat/qemu.rst
/rk3399_ARM-atf/docs/plat/xilinx-versal.rst
/rk3399_ARM-atf/drivers/arm/ccn/ccn.c
/rk3399_ARM-atf/drivers/arm/gic/v2/gicv2_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_main.c
/rk3399_ARM-atf/drivers/auth/crypto_mod.c
/rk3399_ARM-atf/drivers/auth/img_parser_mod.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_crypto.c
aarch64/arch_helpers.h
/rk3399_ARM-atf/include/bl31/interrupt_mgmt.h
/rk3399_ARM-atf/include/common/bl_common.h
/rk3399_ARM-atf/include/common/fdt_wrappers.h
/rk3399_ARM-atf/include/drivers/auth/crypto_mod.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_n1.h
/rk3399_ARM-atf/include/lib/el3_runtime/context_mgmt.h
/rk3399_ARM-atf/include/lib/semihosting.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n1.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/cpus/errata_report.c
/rk3399_ARM-atf/lib/debugfs/devfip.c
/rk3399_ARM-atf/lib/el3_runtime/aarch32/context_mgmt.c
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/el3_runtime/aarch64/cpu_data.S
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_coherent.c
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_normal.c
/rk3399_ARM-atf/lib/optee/optee_utils.c
/rk3399_ARM-atf/lib/psci/psci_common.c
/rk3399_ARM-atf/lib/romlib/jmptbl.i
/rk3399_ARM-atf/lib/semihosting/semihosting.c
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_core.c
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/allwinner/common/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl2_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_err.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_pm.c
/rk3399_ARM-atf/plat/arm/board/fvp/jmptbl.i
/rk3399_ARM-atf/plat/arm/board/juno/jmptbl.i
/rk3399_ARM-atf/plat/arm/board/juno/juno_err.c
/rk3399_ARM-atf/plat/arm/board/rde1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/rde1edge/rde1edge_topology.c
/rk3399_ARM-atf/plat/arm/board/rdn1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn1edge/rdn1edge_topology.c
/rk3399_ARM-atf/plat/arm/board/sgi575/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgi575/sgi575_topology.c
/rk3399_ARM-atf/plat/arm/common/aarch32/arm_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/arm/common/aarch64/arm_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/arm/common/aarch64/execution_state_switch.c
/rk3399_ARM-atf/plat/arm/common/arm_bl31_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_common.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg_helpers.c
/rk3399_ARM-atf/plat/arm/common/arm_nor_psci_mem_protect.c
/rk3399_ARM-atf/plat/arm/common/arm_pm.c
/rk3399_ARM-atf/plat/arm/common/sp_min/arm_sp_min_setup.c
/rk3399_ARM-atf/plat/arm/css/common/css_pm.c
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_topology.c
/rk3399_ARM-atf/plat/arm/css/sgm/sgm-common.mk
/rk3399_ARM-atf/plat/common/plat_bl_common.c
/rk3399_ARM-atf/plat/hisilicon/hikey/include/platform_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey960/include/platform_def.h
/rk3399_ARM-atf/plat/hisilicon/poplar/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx7/picopi/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx7/warp7/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8qm/imx8qm_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8qm/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8qx/imx8qx_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8qx/include/platform_def.h
/rk3399_ARM-atf/plat/intel/soc/agilex/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/include/agilex_memory_controller.h
/rk3399_ARM-atf/plat/intel/soc/agilex/include/socfpga_plat_def.h
/rk3399_ARM-atf/plat/intel/soc/agilex/platform.mk
/rk3399_ARM-atf/plat/intel/soc/agilex/soc/agilex_clock_manager.c
/rk3399_ARM-atf/plat/intel/soc/common/include/platform_def.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_mailbox.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_reset_manager.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_system_manager.h
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_mailbox.c
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_reset_manager.c
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_system_manager.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_psci.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_sip_svc.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/include/s10_memory_controller.h
/rk3399_ARM-atf/plat/intel/soc/stratix10/include/socfpga_plat_def.h
/rk3399_ARM-atf/plat/intel/soc/stratix10/platform.mk
/rk3399_ARM-atf/plat/intel/soc/stratix10/soc/s10_clock_manager.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/soc/s10_memory_controller.c
/rk3399_ARM-atf/plat/layerscape/board/ls1043/include/platform_def.h
/rk3399_ARM-atf/plat/marvell/a3700/common/include/platform_def.h
/rk3399_ARM-atf/plat/marvell/a8k/common/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt6795/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8173/plat_pm.c
/rk3399_ARM-atf/plat/mediatek/mt8183/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8183/plat_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/bpmp_ipc/intf.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/bpmp_ipc/ivc.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_mc_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/mce_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/t194_nvg.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/nvg.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_smmu.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_trampoline.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/platform_t194.mk
/rk3399_ARM-atf/plat/qemu/common/aarch32/plat_helpers.S
/rk3399_ARM-atf/plat/qemu/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/qemu/common/qemu_bl2_setup.c
/rk3399_ARM-atf/plat/qemu/common/qemu_gicv2.c
/rk3399_ARM-atf/plat/qemu/common/qemu_gicv3.c
/rk3399_ARM-atf/plat/qemu/common/qemu_pm.c
/rk3399_ARM-atf/plat/qemu/common/qemu_private.h
/rk3399_ARM-atf/plat/qemu/qemu/include/platform_def.h
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/qemu/qemu_sbsa/include/platform_def.h
/rk3399_ARM-atf/plat/qemu/qemu_sbsa/platform.mk
/rk3399_ARM-atf/plat/renesas/rcar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/renesas/rcar/bl31_plat_setup.c
/rk3399_ARM-atf/plat/renesas/rcar/plat_pm.c
/rk3399_ARM-atf/plat/rockchip/common/plat_pm.c
/rk3399_ARM-atf/plat/rockchip/px30/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/rk3288/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/rk3328/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/rk3368/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/platform_def.h
/rk3399_ARM-atf/plat/socionext/synquacer/include/platform_def.h
/rk3399_ARM-atf/plat/socionext/synquacer/sq_psci.c
/rk3399_ARM-atf/plat/socionext/uniphier/include/platform_def.h
/rk3399_ARM-atf/plat/socionext/uniphier/platform.mk
/rk3399_ARM-atf/plat/socionext/uniphier/tsp/uniphier_tsp_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier.h
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_bl2_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_bl31_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_emmc.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_image_desc.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_io_storage.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_nand.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_scp.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_usb.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_xlat_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/include/platform_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_boot_device.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_def.h
/rk3399_ARM-atf/plat/ti/k3/board/generic/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_psci.c
/rk3399_ARM-atf/plat/xilinx/common/include/plat_startup.h
/rk3399_ARM-atf/plat/xilinx/common/plat_startup.c
/rk3399_ARM-atf/plat/xilinx/versal/aarch64/versal_common.c
/rk3399_ARM-atf/plat/xilinx/versal/bl31_versal_setup.c
/rk3399_ARM-atf/plat/xilinx/versal/include/platform_def.h
/rk3399_ARM-atf/plat/xilinx/versal/include/versal_def.h
/rk3399_ARM-atf/plat/xilinx/versal/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/plat_private.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_pinctrl.c
/rk3399_ARM-atf/tools/cert_create/Makefile
/rk3399_ARM-atf/tools/cert_create/src/ext.c
/rk3399_ARM-atf/tools/cert_create/src/main.c
/rk3399_ARM-atf/tools/cert_create/src/tbbr/tbbr.mk
f461fe3407-Jan-2020 Anthony Steinhauser <asteinhauser@google.com>

Prevent speculative execution past ERET

Even though ERET always causes a jump to another address, aarch64 CPUs
speculatively execute following instructions as if the ERET
instruction was not a jump

Prevent speculative execution past ERET

Even though ERET always causes a jump to another address, aarch64 CPUs
speculatively execute following instructions as if the ERET
instruction was not a jump instruction.
The speculative execution does not cross privilege-levels (to the jump
target as one would expect), but it continues on the kernel privilege
level as if the ERET instruction did not change the control flow -
thus execution anything that is accidentally linked after the ERET
instruction. Later, the results of this speculative execution are
always architecturally discarded, however they can leak data using
microarchitectural side channels. This speculative execution is very
reliable (seems to be unconditional) and it manages to complete even
relatively performance-heavy operations (e.g. multiple dependent
fetches from uncached memory).

This was fixed in Linux, FreeBSD, OpenBSD and Optee OS:
https://github.com/torvalds/linux/commit/679db70801da9fda91d26caf13bf5b5ccc74e8e8
https://github.com/freebsd/freebsd/commit/29fb48ace4186a41c409fde52bcf4216e9e50b61
https://github.com/openbsd/src/commit/3a08873ece1cb28ace89fd65e8f3c1375cc98de2
https://github.com/OP-TEE/optee_os/commit/abfd092aa19f9c0251e3d5551e2d68a9ebcfec8a

It is demonstrated in a SafeSide example:
https://github.com/google/safeside/blob/master/demos/eret_hvc_smc_wrapper.cc
https://github.com/google/safeside/blob/master/kernel_modules/kmod_eret_hvc_smc/eret_hvc_smc_module.c

Signed-off-by: Anthony Steinhauser <asteinhauser@google.com>
Change-Id: Iead39b0b9fb4b8d8b5609daaa8be81497ba63a0f

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/aarch64/bl1_exceptions.S
/rk3399_ARM-atf/bl2/aarch64/bl2_el3_entrypoint.S
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_exceptions.S
/rk3399_ARM-atf/common/fdt_fixup.c
/rk3399_ARM-atf/docs/change-log-upcoming.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/getting_started/initial-build.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/getting_started/prerequisites.rst
/rk3399_ARM-atf/docs/index.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/docs/plat/arm/juno/index.rst
/rk3399_ARM-atf/docs/plat/rpi4.rst
/rk3399_ARM-atf/docs/plat/stm32mp1.rst
/rk3399_ARM-atf/docs/plat/xilinx-versal.rst
/rk3399_ARM-atf/drivers/arm/css/scp/css_pm_scmi.c
/rk3399_ARM-atf/drivers/arm/scu/scu.c
/rk3399_ARM-atf/drivers/auth/auth_mod.c
/rk3399_ARM-atf/drivers/intel/soc/stratix10/io/s10_memmap_qspi.c
/rk3399_ARM-atf/drivers/io/io_block.c
/rk3399_ARM-atf/drivers/io/io_fip.c
/rk3399_ARM-atf/drivers/io/io_memmap.c
/rk3399_ARM-atf/drivers/io/io_mtd.c
/rk3399_ARM-atf/drivers/io/io_semihosting.c
/rk3399_ARM-atf/drivers/io/io_storage.c
/rk3399_ARM-atf/drivers/mtd/nand/core.c
/rk3399_ARM-atf/drivers/mtd/nand/raw_nand.c
/rk3399_ARM-atf/drivers/mtd/nand/spi_nand.c
/rk3399_ARM-atf/drivers/mtd/nor/spi_nor.c
/rk3399_ARM-atf/drivers/mtd/spi-mem/spi_mem.c
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/boot_init_dram.h
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr.mk
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_a/boot_init_dram_regdef.h
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_a/ddr_a.mk
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_a/ddr_init_d3.c
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_a/ddr_init_e3.c
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_a/ddr_init_v3m.c
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/boot_init_dram.c
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/boot_init_dram_config.c
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/boot_init_dram_regdef.h
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/ddr_b.mk
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/ddr_regdef.h
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/init_dram_tbl_h3.h
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/init_dram_tbl_h3ver2.h
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/init_dram_tbl_m3.h
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_b/init_dram_tbl_m3n.h
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/ddr_regs.h
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/dram_sub_func.c
/rk3399_ARM-atf/drivers/renesas/rcar/ddr/dram_sub_func.h
/rk3399_ARM-atf/drivers/renesas/rcar/io/io_emmcdrv.c
/rk3399_ARM-atf/drivers/renesas/rcar/io/io_memdrv.c
/rk3399_ARM-atf/drivers/renesas/rcar/io/io_rcar.c
/rk3399_ARM-atf/drivers/st/fmc/stm32_fmc2_nand.c
/rk3399_ARM-atf/drivers/st/io/io_mmc.c
/rk3399_ARM-atf/drivers/st/spi/stm32_qspi.c
/rk3399_ARM-atf/drivers/ti/uart/aarch32/16550_console.S
/rk3399_ARM-atf/drivers/ti/uart/aarch64/16550_console.S
/rk3399_ARM-atf/fdts/a5ds.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv2-psci-aarch32.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv2-psci.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-aarch32-1t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-aarch32-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-aarch32.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq-2t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci.dts
/rk3399_ARM-atf/fdts/fvp-foundation-gicv2-psci.dts
/rk3399_ARM-atf/fdts/fvp-foundation-gicv3-psci.dts
/rk3399_ARM-atf/fdts/fvp-ve-Cortex-A5x1.dts
/rk3399_ARM-atf/fdts/fvp-ve-Cortex-A7x1.dts
/rk3399_ARM-atf/fdts/stm32mp157-pinctrl.dtsi
/rk3399_ARM-atf/fdts/stm32mp157c-ev1.dts
aarch64/asm_macros.S
/rk3399_ARM-atf/include/drivers/arm/scu.h
/rk3399_ARM-atf/include/drivers/io/io_driver.h
/rk3399_ARM-atf/include/drivers/io/io_mtd.h
/rk3399_ARM-atf/include/drivers/io/io_storage.h
/rk3399_ARM-atf/include/drivers/nand.h
/rk3399_ARM-atf/include/drivers/raw_nand.h
/rk3399_ARM-atf/include/drivers/spi_mem.h
/rk3399_ARM-atf/include/drivers/spi_nand.h
/rk3399_ARM-atf/include/drivers/spi_nor.h
/rk3399_ARM-atf/include/drivers/st/io_stm32image.h
/rk3399_ARM-atf/include/drivers/st/stm32_fmc2_nand.h
/rk3399_ARM-atf/include/drivers/st/stm32_qspi.h
/rk3399_ARM-atf/include/drivers/ti/uart/uart_16550.h
/rk3399_ARM-atf/include/export/lib/utils_def_exp.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_hercules.h
/rk3399_ARM-atf/include/lib/pmf/pmf.h
/rk3399_ARM-atf/include/lib/pmf/pmf_helpers.h
/rk3399_ARM-atf/include/lib/psci/psci.h
/rk3399_ARM-atf/include/lib/smccc.h
/rk3399_ARM-atf/include/lib/utils_def.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/plat/marvell/a8k/common/armada_common.h
/rk3399_ARM-atf/lib/compiler-rt/builtins/arm/aeabi_ldivmod.S
/rk3399_ARM-atf/lib/compiler-rt/builtins/divdi3.c
/rk3399_ARM-atf/lib/compiler-rt/builtins/divmoddi4.c
/rk3399_ARM-atf/lib/compiler-rt/builtins/popcountdi2.c
/rk3399_ARM-atf/lib/compiler-rt/builtins/popcountsi2.c
/rk3399_ARM-atf/lib/compiler-rt/compiler-rt.mk
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a76.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_hercules.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n1.S
/rk3399_ARM-atf/lib/cpus/aarch64/wa_cve_2017_5715_mmu.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/psci/psci_main.c
/rk3399_ARM-atf/lib/psci/psci_off.c
/rk3399_ARM-atf/lib/psci/psci_on.c
/rk3399_ARM-atf/lib/psci/psci_private.h
/rk3399_ARM-atf/lib/psci/psci_setup.c
/rk3399_ARM-atf/lib/psci/psci_stat.c
/rk3399_ARM-atf/lib/psci/psci_suspend.c
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/plat/allwinner/common/allwinner-common.mk
/rk3399_ARM-atf/plat/allwinner/common/include/platform_def.h
/rk3399_ARM-atf/plat/allwinner/common/sunxi_common.c
/rk3399_ARM-atf/plat/arm/board/a5ds/a5ds_common.c
/rk3399_ARM-atf/plat/arm/board/a5ds/a5ds_pm.c
/rk3399_ARM-atf/plat/arm/board/a5ds/fdts/a5ds_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/a5ds/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/a5ds/sp_min/a5ds_sp_min_setup.c
/rk3399_ARM-atf/plat/arm/board/a5ds/sp_min/sp_min-a5ds.mk
/rk3399_ARM-atf/plat/arm/board/corstone700/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_def.h
/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_ve/fvp_ve_def.h
/rk3399_ARM-atf/plat/arm/board/fvp_ve/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/juno_def.h
/rk3399_ARM-atf/plat/arm/board/rde1edge/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rdn1edge/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/sgi575/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/sgm775/include/platform_def.h
/rk3399_ARM-atf/plat/arm/css/sgm/include/sgm_base_platform_def.h
/rk3399_ARM-atf/plat/common/plat_psci_common.c
/rk3399_ARM-atf/plat/imx/common/plat_imx8_gic.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/imx8mm_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/imx8mq_bl31_setup.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/imx8m_psci.h
/rk3399_ARM-atf/plat/intel/soc/agilex/include/agilex_system_manager.h
/rk3399_ARM-atf/plat/intel/soc/agilex/soc/agilex_memory_controller.c
/rk3399_ARM-atf/plat/intel/soc/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/intel/soc/common/drivers/qspi/cadence_qspi.c
/rk3399_ARM-atf/plat/intel/soc/common/include/platform_def.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_reset_manager.h
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_image_load.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_psci.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_sip_svc.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/include/s10_system_manager.h
/rk3399_ARM-atf/plat/intel/soc/stratix10/soc/s10_memory_controller.c
/rk3399_ARM-atf/plat/marvell/a8k/common/a8k_common.mk
/rk3399_ARM-atf/plat/marvell/a8k/common/plat_pm.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm.h
/rk3399_ARM-atf/plat/mediatek/mt8183/drivers/spm/spm.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/bpmp_ipc.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/gpcdma.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/security_engine.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/tegra_gic.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/lib/profiler.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra194_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_mc_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/mce_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/se.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/t194_nvg.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/nvg.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/platform_t194.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/drivers/se/se_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/drivers/se/security_engine.c
/rk3399_ARM-atf/plat/renesas/rcar/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/renesas/rcar/bl2_plat_mem_params_desc.c
/rk3399_ARM-atf/plat/renesas/rcar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/renesas/rcar/platform.mk
/rk3399_ARM-atf/plat/rockchip/rk3328/drivers/soc/soc.h
/rk3399_ARM-atf/plat/rockchip/rk3328/platform.mk
/rk3399_ARM-atf/plat/rpi/common/rpi3_pm.c
/rk3399_ARM-atf/plat/rpi/rpi4/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/rpi/rpi4/include/rpi_hw.h
/rk3399_ARM-atf/plat/rpi/rpi4/rpi4_bl31_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/platform.mk
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_image_desc.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_psci.c
/rk3399_ARM-atf/plat/st/common/bl2_io_storage.c
/rk3399_ARM-atf/plat/st/common/include/stm32mp_dt.h
/rk3399_ARM-atf/plat/st/common/stm32mp_dt.c
/rk3399_ARM-atf/plat/st/stm32mp1/include/boot_api.h
/rk3399_ARM-atf/plat/st/stm32mp1/include/platform_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/include/stm32mp1_boot_device.h
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_boot_device.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_def.h
/rk3399_ARM-atf/plat/xilinx/common/include/pm_client.h
/rk3399_ARM-atf/plat/xilinx/common/include/pm_ipi.h
/rk3399_ARM-atf/plat/xilinx/common/ipi_mailbox_service/ipi_mailbox_svc.c
/rk3399_ARM-atf/plat/xilinx/common/ipi_mailbox_service/ipi_mailbox_svc.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/bl31_versal_setup.c
/rk3399_ARM-atf/plat/xilinx/versal/include/plat_ipi.h
/rk3399_ARM-atf/plat/xilinx/versal/include/plat_pm_common.h
/rk3399_ARM-atf/plat/xilinx/versal/include/plat_private.h
/rk3399_ARM-atf/plat/xilinx/versal/include/platform_def.h
/rk3399_ARM-atf/plat/xilinx/versal/include/versal_def.h
/rk3399_ARM-atf/plat/xilinx/versal/plat_psci.c
/rk3399_ARM-atf/plat/xilinx/versal/plat_versal.c
/rk3399_ARM-atf/plat/xilinx/versal/platform.mk
/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_client.c
/rk3399_ARM-atf/plat/xilinx/versal/pm_service/pm_defs.h
/rk3399_ARM-atf/plat/xilinx/versal/pm_service/pm_node.h
/rk3399_ARM-atf/plat/xilinx/versal/pm_service/pm_svc_main.c
/rk3399_ARM-atf/plat/xilinx/versal/pm_service/pm_svc_main.h
/rk3399_ARM-atf/plat/xilinx/versal/sip_svc_setup.c
/rk3399_ARM-atf/plat/xilinx/versal/versal_gicv3.c
/rk3399_ARM-atf/plat/xilinx/versal/versal_ipi.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/aarch64/zynqmp_common.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/plat_pm_common.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/zynqmp_def.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/plat_psci.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_clock.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_clock.h
/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_svc_main.c
/rk3399_ARM-atf/services/std_svc/spm_mm/aarch64/spm_mm_shim_exceptions.S
/rk3399_ARM-atf/tools/cert_create/src/cert.c
/rk3399_ARM-atf/tools/cert_create/src/key.c
/rk3399_ARM-atf/tools/cert_create/src/main.c
f8578e6418-Oct-2018 Samuel Holland <samuel@sholland.org>

bl31: Split into two separate memory regions

Some platforms are extremely memory constrained and must split BL31
between multiple non-contiguous areas in SRAM. Allow the NOBITS
sections (.bss, stack

bl31: Split into two separate memory regions

Some platforms are extremely memory constrained and must split BL31
between multiple non-contiguous areas in SRAM. Allow the NOBITS
sections (.bss, stacks, page tables, and coherent memory) to be placed
in a separate region of RAM from the loaded firmware image.

Because the NOBITS region may be at a lower address than the rest of
BL31, __RW_{START,END}__ and __BL31_{START,END}__ cannot include this
region, or el3_entrypoint_common would attempt to invalidate the dcache
for the entire address space. New symbols __NOBITS_{START,END}__ are
added when SEPARATE_NOBITS_REGION is enabled, and the dcached for the
NOBITS region is invalidated separately.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Change-Id: Idedfec5e4dbee77e94f2fdd356e6ae6f4dc79d37

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl31/aarch64/bl31_entrypoint.S
/rk3399_ARM-atf/bl31/aarch64/ea_delegate.S
/rk3399_ARM-atf/bl31/bl31.ld.S
/rk3399_ARM-atf/bl31/bl31.mk
/rk3399_ARM-atf/bl32/sp_min/aarch32/entrypoint.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.ld.S
/rk3399_ARM-atf/bl32/sp_min/sp_min_main.c
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/components/arm-sip-service.rst
/rk3399_ARM-atf/docs/components/debugfs-design.rst
/rk3399_ARM-atf/docs/components/secure-partition-manager-design.rst
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/process/security-hardening.rst
/rk3399_ARM-atf/drivers/allwinner/axp/axp803.c
/rk3399_ARM-atf/drivers/allwinner/axp/axp805.c
/rk3399_ARM-atf/drivers/allwinner/axp/common.c
/rk3399_ARM-atf/drivers/auth/cryptocell/712/cryptocell_crypto.c
/rk3399_ARM-atf/drivers/auth/cryptocell/cryptocell_crypto.mk
/rk3399_ARM-atf/drivers/marvell/comphy/phy-comphy-3700.c
/rk3399_ARM-atf/fdts/a5ds.dts
aarch64/el3_common_macros.S
/rk3399_ARM-atf/include/drivers/allwinner/axp.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/712/rsa.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/712/secureboot_gen_defs.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a72.h
/rk3399_ARM-atf/include/lib/debugfs.h
/rk3399_ARM-atf/include/lib/libc/stdint.h
/rk3399_ARM-atf/include/lib/pmf/aarch32/pmf_asm_macros.S
/rk3399_ARM-atf/include/lib/pmf/aarch64/pmf_asm_macros.S
/rk3399_ARM-atf/include/lib/utils.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/arm_sip_svc.h
/rk3399_ARM-atf/include/plat/arm/common/arm_spm_def.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/services/spm_mm_partition.h
/rk3399_ARM-atf/include/services/spm_mm_svc.h
/rk3399_ARM-atf/lib/debugfs/blobs.h
/rk3399_ARM-atf/lib/debugfs/debugfs.mk
/rk3399_ARM-atf/lib/debugfs/debugfs_smc.c
/rk3399_ARM-atf/lib/debugfs/dev.c
/rk3399_ARM-atf/lib/debugfs/dev.h
/rk3399_ARM-atf/lib/debugfs/devc.c
/rk3399_ARM-atf/lib/debugfs/devfip.c
/rk3399_ARM-atf/lib/debugfs/devroot.c
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/allwinner/common/allwinner-common.mk
/rk3399_ARM-atf/plat/allwinner/common/include/sunxi_private.h
/rk3399_ARM-atf/plat/allwinner/common/sunxi_common.c
/rk3399_ARM-atf/plat/allwinner/common/sunxi_cpu_ops.c
/rk3399_ARM-atf/plat/allwinner/common/sunxi_pm.c
/rk3399_ARM-atf/plat/allwinner/sun50i_a64/platform.mk
/rk3399_ARM-atf/plat/allwinner/sun50i_a64/sunxi_power.c
/rk3399_ARM-atf/plat/allwinner/sun50i_h6/platform.mk
/rk3399_ARM-atf/plat/allwinner/sun50i_h6/sunxi_power.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common.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/common/aarch64/arm_ehf.c
/rk3399_ARM-atf/plat/arm/common/aarch64/execution_state_switch.c
/rk3399_ARM-atf/plat/arm/common/arm_bl31_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_common.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/common/arm_gicv3.c
/rk3399_ARM-atf/plat/arm/common/arm_sip_svc.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/arm/css/sgi/sgi-common.mk
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_plat.c
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_ras.c
/rk3399_ARM-atf/plat/intel/soc/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/intel/soc/common/include/platform_def.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_mailbox.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_private.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_sip_svc.h
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_mailbox.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_psci.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_sip_svc.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl31_plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/scat/bl31.scat
/rk3399_ARM-atf/plat/rockchip/px30/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/px30/drivers/secure/secure.c
/rk3399_ARM-atf/plat/rockchip/px30/drivers/secure/secure.h
/rk3399_ARM-atf/plat/rockchip/px30/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/px30/drivers/soc/soc.h
/rk3399_ARM-atf/plat/rockchip/px30/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/px30/platform.mk
/rk3399_ARM-atf/plat/rockchip/px30/px30_def.h
/rk3399_ARM-atf/plat/rockchip/rk3288/drivers/secure/secure.c
/rk3399_ARM-atf/plat/rockchip/rk3328/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3328/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/rk3328/platform.mk
/rk3399_ARM-atf/plat/rockchip/rk3368/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dp/cdn_dp.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/pmu.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/pmu_fw.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/secure/secure.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3399/plat_sip_calls.c
/rk3399_ARM-atf/plat/rockchip/rk3399/platform.mk
/rk3399_ARM-atf/plat/socionext/synquacer/platform.mk
/rk3399_ARM-atf/plat/socionext/synquacer/sq_bl31_setup.c
/rk3399_ARM-atf/plat/socionext/synquacer/sq_spm.c
/rk3399_ARM-atf/services/std_svc/spm_mm/aarch64/spm_mm_helpers.S
/rk3399_ARM-atf/services/std_svc/spm_mm/aarch64/spm_mm_shim_exceptions.S
/rk3399_ARM-atf/services/std_svc/spm_mm/spm_mm.mk
/rk3399_ARM-atf/services/std_svc/spm_mm/spm_mm_main.c
/rk3399_ARM-atf/services/std_svc/spm_mm/spm_mm_private.h
/rk3399_ARM-atf/services/std_svc/spm_mm/spm_mm_setup.c
/rk3399_ARM-atf/services/std_svc/spm_mm/spm_mm_shim_private.h
/rk3399_ARM-atf/services/std_svc/spm_mm/spm_mm_xlat.c
/rk3399_ARM-atf/services/std_svc/std_svc_setup.c
2bcc672f13-Dec-2019 Olivier Deprez <olivier.deprez@arm.com>

Merge changes from topic "aa/sel2_support" into integration

* changes:
S-EL2 Support: Check for AArch64
Add support for enabling S-EL2


/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/bl31.ld.S
/rk3399_ARM-atf/docs/plat/nvidia-tegra.rst
/rk3399_ARM-atf/drivers/arm/sbsa/sbsa.c
aarch64/arch.h
/rk3399_ARM-atf/include/lib/libc/aarch32/stddef_.h
/rk3399_ARM-atf/include/lib/libc/aarch32/stdio_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/stddef_.h
/rk3399_ARM-atf/include/lib/libc/aarch64/stdio_.h
/rk3399_ARM-atf/include/lib/libc/stddef.h
/rk3399_ARM-atf/include/lib/libc/stdint.h
/rk3399_ARM-atf/include/lib/libc/stdio.h
/rk3399_ARM-atf/include/lib/libc/stdlib.h
/rk3399_ARM-atf/include/lib/libc/string.h
/rk3399_ARM-atf/include/lib/libc/time.h
/rk3399_ARM-atf/include/plat/arm/common/arm_reclaim_init.ld.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/libc/libc.mk
/rk3399_ARM-atf/lib/libc/memrchr.c
/rk3399_ARM-atf/lib/psci/psci_common.c
/rk3399_ARM-atf/lib/psci/psci_private.h
/rk3399_ARM-atf/lib/psci/psci_setup.c
/rk3399_ARM-atf/plat/allwinner/sun50i_a64/sunxi_power.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/plat.ld.S
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg.c
/rk3399_ARM-atf/plat/imx/common/include/imx_caam.h
/rk3399_ARM-atf/plat/imx/common/include/imx_snvs.h
/rk3399_ARM-atf/plat/imx/common/include/sci/sci_ipc.h
/rk3399_ARM-atf/plat/imx/common/sci/ipc.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_mc_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_smmu.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_trampoline.S
/rk3399_ARM-atf/tools/memory/print_memory_map.py
da90359b26-Nov-2019 Manish Pandey <manish.pandey2@arm.com>

PIE: make call to GDT relocation fixup generalized

When a Firmware is complied as Position Independent Executable it needs
to request GDT fixup by passing size of the memory region to
el3_entrypoint

PIE: make call to GDT relocation fixup generalized

When a Firmware is complied as Position Independent Executable it needs
to request GDT fixup by passing size of the memory region to
el3_entrypoint_common macro.
The Global descriptor table fixup will be done early on during cold boot
process of primary core.

Currently only BL31 supports PIE, but in future when BL2_AT_EL3 will be
compiled as PIE, it can simply pass fixup size to the common el3
entrypoint macro to fixup GDT.

The reason for this patch was to overcome the bug introduced by SHA
330ead806 which called fixup routine for each core causing
re-initializing of global pointers thus overwriting any changes
done by the previous core.

Change-Id: I55c792cc3ea9e7eef34c2e4653afd04572c4f055
Signed-off-by: Manish Pandey <manish.pandey2@arm.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/aarch64/bl1_entrypoint.S
/rk3399_ARM-atf/bl2/aarch64/bl2_el3_entrypoint.S
/rk3399_ARM-atf/bl31/aarch64/bl31_entrypoint.S
/rk3399_ARM-atf/docs/components/romlib-design.rst
/rk3399_ARM-atf/docs/design/alt-boot-flows.rst
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/design/index.rst
/rk3399_ARM-atf/docs/design/reset-design.rst
/rk3399_ARM-atf/docs/design/trusted-board-boot-build.rst
/rk3399_ARM-atf/docs/design/trusted-board-boot.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/docs-build.rst
/rk3399_ARM-atf/docs/getting_started/index.rst
/rk3399_ARM-atf/docs/getting_started/initial-build.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/getting_started/prerequisites.rst
/rk3399_ARM-atf/docs/getting_started/tools-build.rst
/rk3399_ARM-atf/docs/perf/index.rst
/rk3399_ARM-atf/docs/perf/tsp.rst
/rk3399_ARM-atf/docs/plat/arm/arm-build-options.rst
/rk3399_ARM-atf/docs/plat/arm/fvp-ve/index.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/docs/plat/arm/index.rst
/rk3399_ARM-atf/docs/plat/arm/juno/index.rst
/rk3399_ARM-atf/docs/plat/index.rst
/rk3399_ARM-atf/docs/plat/marvell/build.rst
/rk3399_ARM-atf/docs/plat/socionext-uniphier.rst
/rk3399_ARM-atf/docs/process/contributing.rst
/rk3399_ARM-atf/docs/process/security-hardening.rst
/rk3399_ARM-atf/drivers/mentor/i2c/mi2cv.c
/rk3399_ARM-atf/drivers/staging/renesas/rcar/ddr/ddr_b/boot_init_dram.c
aarch64/el3_common_macros.S
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/intel/soc/agilex/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/include/agilex_clock_manager.h
/rk3399_ARM-atf/plat/intel/soc/agilex/include/agilex_pinmux.h
/rk3399_ARM-atf/plat/intel/soc/agilex/include/socfpga_plat_def.h
/rk3399_ARM-atf/plat/intel/soc/agilex/platform.mk
/rk3399_ARM-atf/plat/intel/soc/agilex/soc/agilex_clock_manager.c
/rk3399_ARM-atf/plat/intel/soc/common/aarch64/platform_common.c
/rk3399_ARM-atf/plat/intel/soc/common/drivers/ccu/ncore_ccu.c
/rk3399_ARM-atf/plat/intel/soc/common/drivers/qspi/cadence_qspi.c
/rk3399_ARM-atf/plat/intel/soc/common/drivers/wdt/watchdog.c
/rk3399_ARM-atf/plat/intel/soc/common/include/platform_def.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_handoff.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_mailbox.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_private.h
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_handoff.c
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_mailbox.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_psci.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_sip_svc.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_storage.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/include/s10_clock_manager.h
/rk3399_ARM-atf/plat/intel/soc/stratix10/include/s10_pinmux.h
/rk3399_ARM-atf/plat/intel/soc/stratix10/include/socfpga_plat_def.h
/rk3399_ARM-atf/plat/intel/soc/stratix10/plat_psci.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/plat_sip_svc.c
/rk3399_ARM-atf/plat/intel/soc/stratix10/platform.mk
/rk3399_ARM-atf/plat/intel/soc/stratix10/soc/s10_clock_manager.c
/rk3399_ARM-atf/plat/layerscape/common/ns_access.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm_suspend.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/spe.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra194_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/mce_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/se.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/t194_nvg.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/aarch64/nvg_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/nvg.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_secondary.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_smmu.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_trampoline.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/platform_t194.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/plat/renesas/rcar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/rockchip/common/params_setup.c
/rk3399_ARM-atf/plat/rockchip/px30/px30_def.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dfs.c
/rk3399_ARM-atf/plat/st/stm32mp1/include/boot_api.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_ioctl.c
/rk3399_ARM-atf/services/std_svc/spm_mm/spm_main.c

1...<<1112131415