History log of /rk3399_ARM-atf/include/ (Results 3301 – 3325 of 3957)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
b10d449916-Feb-2017 Jeenu Viswambharan <jeenu.viswambharan@arm.com>

Introduce ARM SiP service to switch execution state

In AArch64, privileged exception levels control the execution state
(a.k.a. register width) of the immediate lower Exception Level; i.e.
whether t

Introduce ARM SiP service to switch execution state

In AArch64, privileged exception levels control the execution state
(a.k.a. register width) of the immediate lower Exception Level; i.e.
whether the lower exception level executes in AArch64 or AArch32 state.
For an exception level to have its execution state changed at run time,
it must request the change by raising a synchronous exception to the
higher exception level.

This patch implements and adds such a provision to the ARM SiP service,
by which an immediate lower exception level can request to switch its
execution state. The execution state is switched if the request is:

- raised from non-secure world;

- raised on the primary CPU, before any secondaries are brought online
with CPU_ON PSCI call;

- raised from an exception level immediately below EL3: EL2, if
implemented; otherwise NS EL1.

If successful, the SMC doesn't return to the caller, but to the entry
point supplied with the call. Otherwise, the caller will observe the SMC
returning with STATE_SW_E_DENIED code. If ARM Trusted Firmware is built
for AArch32, the feature is not supported, and the call will always
fail.

For the ARM SiP service:

- Add SMC function IDs for both AArch32 and AArch64;
- Increment the SiP service minor version to 2;
- Adjust the number of supported SiP service calls.

Add documentation for ARM SiP service.

Fixes ARM-software/tf-issues#436

Change-Id: I4347f2d6232e69fbfbe333b340fcd0caed0a4cea
Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>

show more ...

82cb2c1a03-May-2017 dp-arm <dimitris.papastamos@arm.com>

Use SPDX license identifiers

To make software license auditing simpler, use SPDX[0] license
identifiers instead of duplicating the license text in every file.

NOTE: Files that have been imported by

Use SPDX license identifiers

To make software license auditing simpler, use SPDX[0] license
identifiers instead of duplicating the license text in every file.

NOTE: Files that have been imported by FreeBSD have not been modified.

[0]: https://spdx.org/

Change-Id: I80a00e1f641b8cc075ca5a95b10607ed9ed8761a
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/aarch32/bl1_arch_setup.c
/rk3399_ARM-atf/bl1/aarch32/bl1_context_mgmt.c
/rk3399_ARM-atf/bl1/aarch32/bl1_entrypoint.S
/rk3399_ARM-atf/bl1/aarch32/bl1_exceptions.S
/rk3399_ARM-atf/bl1/aarch64/bl1_arch_setup.c
/rk3399_ARM-atf/bl1/aarch64/bl1_context_mgmt.c
/rk3399_ARM-atf/bl1/aarch64/bl1_entrypoint.S
/rk3399_ARM-atf/bl1/aarch64/bl1_exceptions.S
/rk3399_ARM-atf/bl1/bl1.ld.S
/rk3399_ARM-atf/bl1/bl1.mk
/rk3399_ARM-atf/bl1/bl1_fwu.c
/rk3399_ARM-atf/bl1/bl1_main.c
/rk3399_ARM-atf/bl1/bl1_private.h
/rk3399_ARM-atf/bl1/tbbr/tbbr_img_desc.c
/rk3399_ARM-atf/bl2/aarch32/bl2_arch_setup.c
/rk3399_ARM-atf/bl2/aarch32/bl2_entrypoint.S
/rk3399_ARM-atf/bl2/aarch64/bl2_arch_setup.c
/rk3399_ARM-atf/bl2/aarch64/bl2_entrypoint.S
/rk3399_ARM-atf/bl2/bl2.ld.S
/rk3399_ARM-atf/bl2/bl2.mk
/rk3399_ARM-atf/bl2/bl2_image_load.c
/rk3399_ARM-atf/bl2/bl2_image_load_v2.c
/rk3399_ARM-atf/bl2/bl2_main.c
/rk3399_ARM-atf/bl2/bl2_private.h
/rk3399_ARM-atf/bl2u/aarch64/bl2u_entrypoint.S
/rk3399_ARM-atf/bl2u/bl2u.ld.S
/rk3399_ARM-atf/bl2u/bl2u.mk
/rk3399_ARM-atf/bl2u/bl2u_main.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.mk
/rk3399_ARM-atf/bl31/bl31_context_mgmt.c
/rk3399_ARM-atf/bl31/bl31_main.c
/rk3399_ARM-atf/bl31/interrupt_mgmt.c
/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.mk
/rk3399_ARM-atf/bl32/sp_min/sp_min_main.c
/rk3399_ARM-atf/bl32/sp_min/sp_min_private.h
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_entrypoint.S
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_exceptions.S
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_request.S
/rk3399_ARM-atf/bl32/tsp/tsp.ld.S
/rk3399_ARM-atf/bl32/tsp/tsp.mk
/rk3399_ARM-atf/bl32/tsp/tsp_interrupt.c
/rk3399_ARM-atf/bl32/tsp/tsp_main.c
/rk3399_ARM-atf/bl32/tsp/tsp_private.h
/rk3399_ARM-atf/bl32/tsp/tsp_timer.c
/rk3399_ARM-atf/common/aarch32/debug.S
/rk3399_ARM-atf/common/aarch64/debug.S
/rk3399_ARM-atf/common/aarch64/early_exceptions.S
/rk3399_ARM-atf/common/bl_common.c
/rk3399_ARM-atf/common/desc_image_load.c
/rk3399_ARM-atf/common/runtime_svc.c
/rk3399_ARM-atf/common/tf_printf.c
/rk3399_ARM-atf/drivers/arm/cci/cci.c
/rk3399_ARM-atf/drivers/arm/cci400/cci400.c
/rk3399_ARM-atf/drivers/arm/ccn/ccn.c
/rk3399_ARM-atf/drivers/arm/ccn/ccn_private.h
/rk3399_ARM-atf/drivers/arm/gic/arm_gic.c
/rk3399_ARM-atf/drivers/arm/gic/common/gic_common.c
/rk3399_ARM-atf/drivers/arm/gic/common/gic_common_private.h
/rk3399_ARM-atf/drivers/arm/gic/gic_v2.c
/rk3399_ARM-atf/drivers/arm/gic/gic_v3.c
/rk3399_ARM-atf/drivers/arm/gic/v2/gicv2_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v2/gicv2_main.c
/rk3399_ARM-atf/drivers/arm/gic/v2/gicv2_private.h
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_main.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_private.h
/rk3399_ARM-atf/drivers/arm/pl011/aarch32/pl011_console.S
/rk3399_ARM-atf/drivers/arm/pl011/aarch64/pl011_console.S
/rk3399_ARM-atf/drivers/arm/pl011/pl011_console.S
/rk3399_ARM-atf/drivers/arm/pl061/pl061_gpio.c
/rk3399_ARM-atf/drivers/arm/sp804/sp804_delay_timer.c
/rk3399_ARM-atf/drivers/arm/sp805/sp805.c
/rk3399_ARM-atf/drivers/arm/tzc/tzc400.c
/rk3399_ARM-atf/drivers/arm/tzc/tzc_common_private.h
/rk3399_ARM-atf/drivers/arm/tzc/tzc_dmc500.c
/rk3399_ARM-atf/drivers/arm/tzc400/tzc400.c
/rk3399_ARM-atf/drivers/auth/auth_mod.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_common.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_common.mk
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_crypto.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_crypto.mk
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_x509.mk
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_x509_parser.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot.c
/rk3399_ARM-atf/drivers/cadence/uart/aarch64/cdns_console.S
/rk3399_ARM-atf/drivers/cadence/uart/cdns_console.S
/rk3399_ARM-atf/drivers/console/aarch32/console.S
/rk3399_ARM-atf/drivers/console/aarch32/skeleton_console.S
/rk3399_ARM-atf/drivers/console/aarch64/console.S
/rk3399_ARM-atf/drivers/console/aarch64/skeleton_console.S
/rk3399_ARM-atf/drivers/console/console.S
/rk3399_ARM-atf/drivers/console/skeleton_console.S
/rk3399_ARM-atf/drivers/delay_timer/delay_timer.c
/rk3399_ARM-atf/drivers/delay_timer/generic_delay_timer.c
/rk3399_ARM-atf/drivers/emmc/emmc.c
/rk3399_ARM-atf/drivers/gpio/gpio.c
/rk3399_ARM-atf/drivers/io/io_block.c
/rk3399_ARM-atf/drivers/io/io_dummy.c
/rk3399_ARM-atf/drivers/io/io_fip.c
/rk3399_ARM-atf/drivers/io/io_memmap.c
/rk3399_ARM-atf/drivers/io/io_semihosting.c
/rk3399_ARM-atf/drivers/io/io_storage.c
/rk3399_ARM-atf/drivers/partition/gpt.c
/rk3399_ARM-atf/drivers/partition/partition.c
/rk3399_ARM-atf/drivers/synopsys/emmc/dw_mmc.c
/rk3399_ARM-atf/drivers/ti/uart/16550_console.S
/rk3399_ARM-atf/drivers/ti/uart/aarch64/16550_console.S
bl1/bl1.h
bl1/tbbr/tbbr_img_desc.h
bl31/bl31.h
bl31/interrupt_mgmt.h
bl32/payloads/tlk.h
bl32/sp_min/platform_sp_min.h
bl32/tsp/platform_tsp.h
bl32/tsp/tsp.h
common/aarch32/asm_macros.S
common/aarch32/assert_macros.S
common/aarch32/el3_common_macros.S
common/aarch64/asm_macros.S
common/aarch64/assert_macros.S
common/aarch64/el3_common_macros.S
common/asm_macros_common.S
common/bl_common.h
common/debug.h
common/desc_image_load.h
common/ep_info.h
common/firmware_image_package.h
common/param_header.h
common/runtime_svc.h
common/tbbr/cot_def.h
common/tbbr/tbbr_img_def.h
drivers/arm/arm_gic.h
drivers/arm/cci.h
drivers/arm/cci400.h
drivers/arm/ccn.h
drivers/arm/gic_common.h
drivers/arm/gic_v2.h
drivers/arm/gic_v3.h
drivers/arm/gicv2.h
drivers/arm/gicv3.h
drivers/arm/nic_400.h
drivers/arm/pl011.h
drivers/arm/pl061_gpio.h
drivers/arm/sp804_delay_timer.h
drivers/arm/sp805.h
drivers/arm/tzc400.h
drivers/arm/tzc_common.h
drivers/arm/tzc_dmc500.h
drivers/auth/auth_common.h
drivers/auth/auth_mod.h
drivers/auth/crypto_mod.h
drivers/auth/img_parser_mod.h
drivers/auth/mbedtls/mbedtls_common.h
drivers/auth/mbedtls/mbedtls_config.h
drivers/cadence/cdns_uart.h
drivers/console.h
drivers/delay_timer.h
drivers/emmc.h
drivers/generic_delay_timer.h
drivers/gpio.h
drivers/io/io_block.h
drivers/io/io_driver.h
drivers/io/io_dummy.h
drivers/io/io_fip.h
drivers/io/io_memmap.h
drivers/io/io_semihosting.h
drivers/io/io_storage.h
drivers/partition/gpt.h
drivers/partition/mbr.h
drivers/partition/partition.h
drivers/synopsys/dw_mmc.h
drivers/ti/uart/uart_16550.h
lib/aarch32/arch.h
lib/aarch32/arch_helpers.h
lib/aarch32/smcc_helpers.h
lib/aarch32/smcc_macros.S
lib/aarch64/arch.h
lib/aarch64/arch_helpers.h
lib/aarch64/smcc_helpers.h
lib/bakery_lock.h
lib/cassert.h
lib/cpus/aarch32/aem_generic.h
lib/cpus/aarch32/cortex_a32.h
lib/cpus/aarch32/cortex_a53.h
lib/cpus/aarch32/cortex_a57.h
lib/cpus/aarch32/cortex_a72.h
lib/cpus/aarch32/cpu_macros.S
lib/cpus/aarch64/aem_generic.h
lib/cpus/aarch64/cortex_a35.h
lib/cpus/aarch64/cortex_a53.h
lib/cpus/aarch64/cortex_a57.h
lib/cpus/aarch64/cortex_a72.h
lib/cpus/aarch64/cortex_a73.h
lib/cpus/aarch64/cpu_macros.S
lib/cpus/aarch64/denver.h
lib/cpus/errata_report.h
lib/el3_runtime/aarch32/context.h
lib/el3_runtime/aarch64/context.h
lib/el3_runtime/context_mgmt.h
lib/el3_runtime/cpu_data.h
lib/mmio.h
lib/pmf/pmf.h
lib/pmf/pmf_asm_macros.S
lib/pmf/pmf_helpers.h
lib/psci/psci.h
lib/psci/psci_compat.h
lib/psci/psci_lib.h
lib/runtime_instr.h
lib/semihosting.h
lib/smcc.h
lib/spinlock.h
lib/stdlib/machine/_inttypes.h
lib/utils.h
lib/utils_def.h
lib/xlat_tables/xlat_mmu_helpers.h
lib/xlat_tables/xlat_tables.h
lib/xlat_tables/xlat_tables_defs.h
lib/xlat_tables/xlat_tables_v2.h
plat/arm/board/common/board_arm_def.h
plat/arm/board/common/board_arm_oid.h
plat/arm/board/common/board_css_def.h
plat/arm/board/common/drivers/norflash.h
plat/arm/board/common/v2m_def.h
plat/arm/common/aarch64/arm_macros.S
plat/arm/common/aarch64/cci_macros.S
plat/arm/common/arm_config.h
plat/arm/common/arm_def.h
plat/arm/common/arm_sip_svc.h
plat/arm/common/arm_xlat_tables.h
plat/arm/common/plat_arm.h
plat/arm/css/common/aarch64/css_macros.S
plat/arm/css/common/css_def.h
plat/arm/css/common/css_pm.h
plat/arm/soc/common/soc_css.h
plat/arm/soc/common/soc_css_def.h
plat/common/common_def.h
plat/common/platform.h
services/std_svc.h
/rk3399_ARM-atf/lib/aarch32/cache_helpers.S
/rk3399_ARM-atf/lib/aarch32/misc_helpers.S
/rk3399_ARM-atf/lib/aarch64/cache_helpers.S
/rk3399_ARM-atf/lib/aarch64/misc_helpers.S
/rk3399_ARM-atf/lib/aarch64/xlat_tables.c
/rk3399_ARM-atf/lib/cpus/aarch32/aem_generic.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a32.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a53.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a57.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a72.S
/rk3399_ARM-atf/lib/cpus/aarch32/cpu_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/aem_generic.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a35.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a53.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a57.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a72.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a73.S
/rk3399_ARM-atf/lib/cpus/aarch64/cpu_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/denver.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/cpus/errata_report.c
/rk3399_ARM-atf/lib/el3_runtime/aarch32/context_mgmt.c
/rk3399_ARM-atf/lib/el3_runtime/aarch32/cpu_data.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/el3_runtime/aarch64/cpu_data.S
/rk3399_ARM-atf/lib/el3_runtime/cpu_data_array.c
/rk3399_ARM-atf/lib/libfdt/libfdt.mk
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_coherent.c
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_normal.c
/rk3399_ARM-atf/lib/locks/exclusive/aarch32/spinlock.S
/rk3399_ARM-atf/lib/locks/exclusive/aarch64/spinlock.S
/rk3399_ARM-atf/lib/locks/exclusive/spinlock.S
/rk3399_ARM-atf/lib/pmf/pmf_main.c
/rk3399_ARM-atf/lib/pmf/pmf_smc.c
/rk3399_ARM-atf/lib/psci/aarch32/psci_helpers.S
/rk3399_ARM-atf/lib/psci/aarch64/psci_helpers.S
/rk3399_ARM-atf/lib/psci/psci_common.c
/rk3399_ARM-atf/lib/psci/psci_lib.mk
/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/lib/psci/psci_system_off.c
/rk3399_ARM-atf/lib/semihosting/aarch32/semihosting_call.S
/rk3399_ARM-atf/lib/semihosting/aarch64/semihosting_call.S
/rk3399_ARM-atf/lib/semihosting/semihosting.c
/rk3399_ARM-atf/lib/stack_protector/aarch32/asm_stack_protector.S
/rk3399_ARM-atf/lib/stack_protector/aarch64/asm_stack_protector.S
/rk3399_ARM-atf/lib/stack_protector/stack_protector.c
/rk3399_ARM-atf/lib/stack_protector/stack_protector.mk
/rk3399_ARM-atf/lib/stdlib/abort.c
/rk3399_ARM-atf/lib/stdlib/assert.c
/rk3399_ARM-atf/lib/stdlib/exit.c
/rk3399_ARM-atf/lib/stdlib/mem.c
/rk3399_ARM-atf/lib/stdlib/printf.c
/rk3399_ARM-atf/lib/stdlib/putchar.c
/rk3399_ARM-atf/lib/stdlib/puts.c
/rk3399_ARM-atf/lib/stdlib/sscanf.c
/rk3399_ARM-atf/lib/stdlib/stdlib.mk
/rk3399_ARM-atf/lib/xlat_tables/aarch32/xlat_tables.c
/rk3399_ARM-atf/lib/xlat_tables/aarch64/xlat_tables.c
/rk3399_ARM-atf/lib/xlat_tables/xlat_tables_common.c
/rk3399_ARM-atf/lib/xlat_tables/xlat_tables_private.h
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch32/xlat_tables_arch.c
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch32/xlat_tables_arch.h
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch64/xlat_tables_arch.c
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch64/xlat_tables_arch.h
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_common.c
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_internal.c
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_private.h
/rk3399_ARM-atf/make_helpers/build_env.mk
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/cygwin.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/make_helpers/msys.mk
/rk3399_ARM-atf/make_helpers/plat_helpers.mk
/rk3399_ARM-atf/make_helpers/tbbr/tbbr_tools.mk
/rk3399_ARM-atf/make_helpers/unix.mk
/rk3399_ARM-atf/make_helpers/windows.mk
/rk3399_ARM-atf/plat/arm/board/common/aarch32/board_arm_helpers.S
/rk3399_ARM-atf/plat/arm/board/common/aarch64/board_arm_helpers.S
/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/board_css.mk
/rk3399_ARM-atf/plat/arm/board/common/board_css_common.c
/rk3399_ARM-atf/plat/arm/board/common/drivers/norflash/norflash.c
/rk3399_ARM-atf/plat/arm/board/fvp/aarch32/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/aarch64/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/drivers/pwrc/fvp_pwrc.c
/rk3399_ARM-atf/plat/arm/board/fvp/drivers/pwrc/fvp_pwrc.h
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl1_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl2_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl2u_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_err.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_io_storage.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_pm.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_private.h
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_security.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_stack_protector.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_topology.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_oid.h
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/sp_min/fvp_sp_min_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/sp_min/sp_min-fvp.mk
/rk3399_ARM-atf/plat/arm/board/fvp/tsp/fvp_tsp_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/tsp/tsp-fvp.mk
/rk3399_ARM-atf/plat/arm/board/juno/aarch32/juno_helpers.S
/rk3399_ARM-atf/plat/arm/board/juno/aarch64/juno_helpers.S
/rk3399_ARM-atf/plat/arm/board/juno/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_oid.h
/rk3399_ARM-atf/plat/arm/board/juno/juno_bl1_setup.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_bl2_setup.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_decl.h
/rk3399_ARM-atf/plat/arm/board/juno/juno_def.h
/rk3399_ARM-atf/plat/arm/board/juno/juno_err.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_security.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_stack_protector.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_topology.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_trng.c
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/sp_min/sp_min-juno.mk
/rk3399_ARM-atf/plat/arm/board/juno/tsp/tsp-juno.mk
/rk3399_ARM-atf/plat/arm/common/aarch32/arm_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/arm/common/aarch32/arm_helpers.S
/rk3399_ARM-atf/plat/arm/common/aarch64/arm_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/arm/common/aarch64/arm_helpers.S
/rk3399_ARM-atf/plat/arm/common/arm_bl1_fwu.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_bl2u_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_bl31_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_cci.c
/rk3399_ARM-atf/plat/arm/common/arm_ccn.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_gicv2.c
/rk3399_ARM-atf/plat/arm/common/arm_gicv3.c
/rk3399_ARM-atf/plat/arm/common/arm_gicv3_legacy.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/arm_pm.c
/rk3399_ARM-atf/plat/arm/common/arm_sip_svc.c
/rk3399_ARM-atf/plat/arm/common/arm_topology.c
/rk3399_ARM-atf/plat/arm/common/arm_tzc400.c
/rk3399_ARM-atf/plat/arm/common/arm_tzc_dmc500.c
/rk3399_ARM-atf/plat/arm/common/sp_min/arm_sp_min.mk
/rk3399_ARM-atf/plat/arm/common/sp_min/arm_sp_min_setup.c
/rk3399_ARM-atf/plat/arm/common/tsp/arm_tsp.mk
/rk3399_ARM-atf/plat/arm/common/tsp/arm_tsp_setup.c
/rk3399_ARM-atf/plat/arm/css/common/aarch32/css_helpers.S
/rk3399_ARM-atf/plat/arm/css/common/aarch64/css_helpers.S
/rk3399_ARM-atf/plat/arm/css/common/css_bl1_setup.c
/rk3399_ARM-atf/plat/arm/css/common/css_bl2_setup.c
/rk3399_ARM-atf/plat/arm/css/common/css_bl2u_setup.c
/rk3399_ARM-atf/plat/arm/css/common/css_common.mk
/rk3399_ARM-atf/plat/arm/css/common/css_pm.c
/rk3399_ARM-atf/plat/arm/css/common/css_scp_bootloader.c
/rk3399_ARM-atf/plat/arm/css/common/css_scp_bootloader.h
/rk3399_ARM-atf/plat/arm/css/common/css_topology.c
/rk3399_ARM-atf/plat/arm/css/drivers/scp/css_pm_scpi.c
/rk3399_ARM-atf/plat/arm/css/drivers/scp/css_scp.h
/rk3399_ARM-atf/plat/arm/css/drivers/scpi/css_mhu.c
/rk3399_ARM-atf/plat/arm/css/drivers/scpi/css_mhu.h
/rk3399_ARM-atf/plat/arm/css/drivers/scpi/css_scpi.c
/rk3399_ARM-atf/plat/arm/css/drivers/scpi/css_scpi.h
/rk3399_ARM-atf/plat/arm/soc/common/soc_css.mk
/rk3399_ARM-atf/plat/arm/soc/common/soc_css_security.c
/rk3399_ARM-atf/plat/common/aarch32/plat_common.c
/rk3399_ARM-atf/plat/common/aarch32/platform_helpers.S
/rk3399_ARM-atf/plat/common/aarch32/platform_mp_stack.S
/rk3399_ARM-atf/plat/common/aarch32/platform_up_stack.S
/rk3399_ARM-atf/plat/common/aarch64/plat_common.c
/rk3399_ARM-atf/plat/common/aarch64/plat_psci_common.c
/rk3399_ARM-atf/plat/common/aarch64/platform_helpers.S
/rk3399_ARM-atf/plat/common/aarch64/platform_mp_stack.S
/rk3399_ARM-atf/plat/common/aarch64/platform_up_stack.S
/rk3399_ARM-atf/plat/common/plat_bl1_common.c
/rk3399_ARM-atf/plat/common/plat_gic.c
/rk3399_ARM-atf/plat/common/plat_gicv2.c
/rk3399_ARM-atf/plat/common/plat_gicv3.c
/rk3399_ARM-atf/plat/common/plat_psci_common.c
/rk3399_ARM-atf/plat/common/tbbr/plat_tbbr.c
/rk3399_ARM-atf/plat/compat/aarch64/plat_helpers_compat.S
/rk3399_ARM-atf/plat/compat/plat_compat.mk
/rk3399_ARM-atf/plat/compat/plat_pm_compat.c
/rk3399_ARM-atf/plat/compat/plat_topology_compat.c
/rk3399_ARM-atf/plat/mediatek/common/custom/oem_svc.c
/rk3399_ARM-atf/plat/mediatek/common/custom/oem_svc.h
/rk3399_ARM-atf/plat/mediatek/common/drivers/uart/8250_console.S
/rk3399_ARM-atf/plat/mediatek/common/drivers/uart/uart8250.h
/rk3399_ARM-atf/plat/mediatek/common/mtk_plat_common.c
/rk3399_ARM-atf/plat/mediatek/common/mtk_plat_common.h
/rk3399_ARM-atf/plat/mediatek/common/mtk_sip_svc.c
/rk3399_ARM-atf/plat/mediatek/common/mtk_sip_svc.h
/rk3399_ARM-atf/plat/mediatek/mt6795/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31.ld.S
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt6795/drivers/timer/mt_cpuxgpt.c
/rk3399_ARM-atf/plat/mediatek/mt6795/drivers/timer/mt_cpuxgpt.h
/rk3399_ARM-atf/plat/mediatek/mt6795/include/mcucfg.h
/rk3399_ARM-atf/plat/mediatek/mt6795/include/plat_macros.S
/rk3399_ARM-atf/plat/mediatek/mt6795/include/plat_private.h
/rk3399_ARM-atf/plat/mediatek/mt6795/include/plat_sip_calls.h
/rk3399_ARM-atf/plat/mediatek/mt6795/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt6795/include/power_tracer.h
/rk3399_ARM-atf/plat/mediatek/mt6795/include/scu.h
/rk3399_ARM-atf/plat/mediatek/mt6795/include/spm.h
/rk3399_ARM-atf/plat/mediatek/mt6795/plat_delay_timer.c
/rk3399_ARM-atf/plat/mediatek/mt6795/plat_mt_gic.c
/rk3399_ARM-atf/plat/mediatek/mt6795/plat_pm.c
/rk3399_ARM-atf/plat/mediatek/mt6795/plat_topology.c
/rk3399_ARM-atf/plat/mediatek/mt6795/platform.mk
/rk3399_ARM-atf/plat/mediatek/mt6795/power_tracer.c
/rk3399_ARM-atf/plat/mediatek/mt6795/scu.c
/rk3399_ARM-atf/plat/mediatek/mt8173/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/mediatek/mt8173/aarch64/platform_common.c
/rk3399_ARM-atf/plat/mediatek/mt8173/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/crypt/crypt.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/crypt/crypt.h
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/mtcmos/mtcmos.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/mtcmos/mtcmos.h
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/pmic/pmic_wrap_init.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/pmic/pmic_wrap_init.h
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/rtc/rtc.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/rtc/rtc.h
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm.h
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm_hotplug.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm_hotplug.h
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm_mcdi.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm_mcdi.h
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm_suspend.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm_suspend.h
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/timer/mt_cpuxgpt.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/timer/mt_cpuxgpt.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/mcucfg.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/mt8173_def.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/plat_macros.S
/rk3399_ARM-atf/plat/mediatek/mt8173/include/plat_private.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/plat_sip_calls.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/power_tracer.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/scu.h
/rk3399_ARM-atf/plat/mediatek/mt8173/plat_mt_gic.c
/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/plat_topology.c
/rk3399_ARM-atf/plat/mediatek/mt8173/platform.mk
/rk3399_ARM-atf/plat/mediatek/mt8173/power_tracer.c
/rk3399_ARM-atf/plat/mediatek/mt8173/scu.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/flowctrl/flowctrl.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/drivers/pmc/pmc.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/smmu/smmu.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_fiq_glue.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_gic.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_platform.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/common/tegra_topology.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/drivers/memctrl.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/memctrl_v1.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/memctrl_v2.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/pmc.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/smmu.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/plat_macros.S
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/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/t210/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_platform.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_secondary.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/platform_t132.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/include/mce_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/include/t18x_ari.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/aarch64/nvg_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/ari.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/nvg.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_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_sip_calls.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/t210/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_secondary.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/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/qemu/dt.c
/rk3399_ARM-atf/plat/qemu/include/plat_macros.S
/rk3399_ARM-atf/plat/qemu/include/platform_def.h
/rk3399_ARM-atf/plat/qemu/platform.mk
/rk3399_ARM-atf/plat/qemu/qemu_bl1_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_bl31_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_common.c
/rk3399_ARM-atf/plat/qemu/qemu_gic.c
/rk3399_ARM-atf/plat/qemu/qemu_io_storage.c
/rk3399_ARM-atf/plat/qemu/qemu_pm.c
/rk3399_ARM-atf/plat/qemu/qemu_private.h
/rk3399_ARM-atf/plat/qemu/topology.c
/rk3399_ARM-atf/plat/rockchip/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/rockchip/common/aarch64/platform_common.c
/rk3399_ARM-atf/plat/rockchip/common/bl31_plat_setup.c
/rk3399_ARM-atf/plat/rockchip/common/drivers/pmu/pmu_com.h
/rk3399_ARM-atf/plat/rockchip/common/include/plat_macros.S
/rk3399_ARM-atf/plat/rockchip/common/include/plat_params.h
/rk3399_ARM-atf/plat/rockchip/common/include/plat_private.h
/rk3399_ARM-atf/plat/rockchip/common/include/rockchip_sip_svc.h
/rk3399_ARM-atf/plat/rockchip/common/params_setup.c
/rk3399_ARM-atf/plat/rockchip/common/plat_pm.c
/rk3399_ARM-atf/plat/rockchip/common/plat_topology.c
/rk3399_ARM-atf/plat/rockchip/common/pmusram/pmu_sram.c
/rk3399_ARM-atf/plat/rockchip/common/pmusram/pmu_sram.h
/rk3399_ARM-atf/plat/rockchip/common/pmusram/pmu_sram_cpus_on.S
/rk3399_ARM-atf/plat/rockchip/common/rockchip_gicv2.c
/rk3399_ARM-atf/plat/rockchip/common/rockchip_gicv3.c
/rk3399_ARM-atf/plat/rockchip/common/rockchip_sip_svc.c
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/ddr/ddr_rk3368.c
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/ddr/ddr_rk3368.h
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/pmu/plat_pmu_macros.S
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/pmu/pmu.h
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/soc/soc.h
/rk3399_ARM-atf/plat/rockchip/rk3368/include/plat_sip_calls.h
/rk3399_ARM-atf/plat/rockchip/rk3368/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/rk3368/plat_sip_calls.c
/rk3399_ARM-atf/plat/rockchip/rk3368/platform.mk
/rk3399_ARM-atf/plat/rockchip/rk3368/rk3368_def.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dfs.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dfs.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dram.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dram.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dram_spec_timing.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dram_spec_timing.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/suspend.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/suspend.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/gpio/rk3399_gpio.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/m0/Makefile
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/m0/include/addressmap.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/m0/include/rk3399_mcu.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/m0/src/dram.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/m0/src/main.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/m0/src/rk3399m0.ld.S
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/m0/src/startup.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/m0/src/stopwatch.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/m0/src/suspend.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/m0_ctl.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/m0_ctl.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/plat_pmu_macros.S
/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/pwm/pwm.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pwm/pwm.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/secure/secure.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/secure/secure.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/soc/soc.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/addressmap.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/plat.ld.S
/rk3399_ARM-atf/plat/rockchip/rk3399/include/plat_sip_calls.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/shared/addressmap_shared.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/shared/bl31_param.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/shared/dram_regs.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/shared/m0_param.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/shared/misc_regs.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/shared/pmu_bits.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/shared/pmu_regs.h
/rk3399_ARM-atf/plat/rockchip/rk3399/plat_sip_calls.c
/rk3399_ARM-atf/plat/rockchip/rk3399/platform.mk
/rk3399_ARM-atf/plat/rockchip/rk3399/rk3399_def.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/aarch64/zynqmp_common.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/aarch64/zynqmp_helpers.S
/rk3399_ARM-atf/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/plat_macros.S
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/platform_def.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/plat_psci.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/plat_startup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/plat_topology.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/plat_zynqmp.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_sys.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_sys.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_client.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_client.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_common.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_defs.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_ipi.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_ipi.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_svc_main.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_svc_main.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/sip_svc_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp-zynqmp.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/zynqmp_def.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/zynqmp_private.h
/rk3399_ARM-atf/services/spd/opteed/opteed.mk
/rk3399_ARM-atf/services/spd/opteed/opteed_common.c
/rk3399_ARM-atf/services/spd/opteed/opteed_helpers.S
/rk3399_ARM-atf/services/spd/opteed/opteed_main.c
/rk3399_ARM-atf/services/spd/opteed/opteed_pm.c
/rk3399_ARM-atf/services/spd/opteed/opteed_private.h
/rk3399_ARM-atf/services/spd/opteed/teesmc_opteed.h
/rk3399_ARM-atf/services/spd/opteed/teesmc_opteed_macros.h
/rk3399_ARM-atf/services/spd/tlkd/tlkd.mk
/rk3399_ARM-atf/services/spd/tlkd/tlkd_common.c
/rk3399_ARM-atf/services/spd/tlkd/tlkd_helpers.S
/rk3399_ARM-atf/services/spd/tlkd/tlkd_main.c
/rk3399_ARM-atf/services/spd/tlkd/tlkd_pm.c
/rk3399_ARM-atf/services/spd/tlkd/tlkd_private.h
/rk3399_ARM-atf/services/spd/trusty/sm_err.h
/rk3399_ARM-atf/services/spd/trusty/smcall.h
/rk3399_ARM-atf/services/spd/trusty/trusty.c
/rk3399_ARM-atf/services/spd/trusty/trusty.mk
/rk3399_ARM-atf/services/spd/trusty/trusty_helpers.S
/rk3399_ARM-atf/services/spd/tspd/tspd.mk
/rk3399_ARM-atf/services/spd/tspd/tspd_common.c
/rk3399_ARM-atf/services/spd/tspd/tspd_helpers.S
/rk3399_ARM-atf/services/spd/tspd/tspd_main.c
/rk3399_ARM-atf/services/spd/tspd/tspd_pm.c
/rk3399_ARM-atf/services/spd/tspd/tspd_private.h
/rk3399_ARM-atf/services/std_svc/std_svc_setup.c
/rk3399_ARM-atf/tools/cert_create/Makefile
/rk3399_ARM-atf/tools/cert_create/include/cert.h
/rk3399_ARM-atf/tools/cert_create/include/cmd_opt.h
/rk3399_ARM-atf/tools/cert_create/include/debug.h
/rk3399_ARM-atf/tools/cert_create/include/ext.h
/rk3399_ARM-atf/tools/cert_create/include/key.h
/rk3399_ARM-atf/tools/cert_create/include/sha.h
/rk3399_ARM-atf/tools/cert_create/include/tbbr/tbb_cert.h
/rk3399_ARM-atf/tools/cert_create/include/tbbr/tbb_ext.h
/rk3399_ARM-atf/tools/cert_create/include/tbbr/tbb_key.h
/rk3399_ARM-atf/tools/cert_create/src/cert.c
/rk3399_ARM-atf/tools/cert_create/src/cmd_opt.c
/rk3399_ARM-atf/tools/cert_create/src/ext.c
/rk3399_ARM-atf/tools/cert_create/src/key.c
/rk3399_ARM-atf/tools/cert_create/src/main.c
/rk3399_ARM-atf/tools/cert_create/src/sha.c
/rk3399_ARM-atf/tools/cert_create/src/tbbr/tbb_cert.c
/rk3399_ARM-atf/tools/cert_create/src/tbbr/tbb_ext.c
/rk3399_ARM-atf/tools/cert_create/src/tbbr/tbb_key.c
/rk3399_ARM-atf/tools/fiptool/Makefile
/rk3399_ARM-atf/tools/fiptool/fip_create.sh
/rk3399_ARM-atf/tools/fiptool/fiptool.c
/rk3399_ARM-atf/tools/fiptool/fiptool.h
/rk3399_ARM-atf/tools/fiptool/tbbr_config.c
/rk3399_ARM-atf/tools/fiptool/tbbr_config.h
4b427bd402-May-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #919 from davidcunado-arm/dc/smc_yielding_generic

Update terminology: standard SMC to yielding SMC

f4c8aa9021-Feb-2017 Jeenu Viswambharan <jeenu.viswambharan@arm.com>

Add macro to check whether the CPU implements an EL

Replace all instances of checks with the new macro.

Change-Id: I0eec39b9376475a1a9707a3115de9d36f88f8a2a
Signed-off-by: Jeenu Viswambharan <jeenu

Add macro to check whether the CPU implements an EL

Replace all instances of checks with the new macro.

Change-Id: I0eec39b9376475a1a9707a3115de9d36f88f8a2a
Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>

show more ...

a564025227-Apr-2017 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

Fix execute-never permissions in xlat tables libs

Translation regimes that only support one virtual address space (such as
the ones for EL2 and EL3) can flag memory regions as execute-never by
setti

Fix execute-never permissions in xlat tables libs

Translation regimes that only support one virtual address space (such as
the ones for EL2 and EL3) can flag memory regions as execute-never by
setting to 1 the XN bit in the Upper Attributes field in the translation
tables descriptors. Translation regimes that support two different
virtual address spaces (such as the one shared by EL1 and EL0) use bits
PXN and UXN instead.

The Trusted Firmware runs at EL3 and EL1, it has to handle translation
tables of both translation regimes, but the previous code handled both
regimes the same way, as if both had only 1 VA range.

When trying to set a descriptor as execute-never it would set the XN
bit correctly in EL3, but it would set the XN bit in EL1 as well. XN is
at the same bit position as UXN, which means that EL0 was being
prevented from executing code at this region, not EL1 as the code
intended. Therefore, the PXN bit was unset to 0 all the time. The result
is that, in AArch64 mode, read-only data sections of BL2 weren't
protected from being executed.

This patch adds support of translation regimes with two virtual address
spaces to both versions of the translation tables library, fixing the
execute-never permissions for translation tables in EL1.

The library currently does not support initializing translation tables
for EL0 software, therefore it does not set/unset the UXN bit. If EL1
software needs to initialize translation tables for EL0 software, it
should use a different library instead.

Change-Id: If27588f9820ff42988851d90dc92801c8ecbe0c9
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...

0f22bef329-Apr-2017 Scott Branden <sbranden@users.noreply.github.com>

Merge branch 'integration' into tf_issue_461


/rk3399_ARM-atf/Makefile
/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/bl2/bl2_main.c
/rk3399_ARM-atf/bl2u/bl2u_main.c
/rk3399_ARM-atf/bl31/aarch64/bl31_entrypoint.S
/rk3399_ARM-atf/bl31/aarch64/crash_reporting.S
/rk3399_ARM-atf/bl31/bl31_main.c
/rk3399_ARM-atf/bl32/sp_min/aarch32/entrypoint.S
/rk3399_ARM-atf/common/aarch32/debug.S
/rk3399_ARM-atf/common/aarch64/debug.S
/rk3399_ARM-atf/common/desc_image_load.c
/rk3399_ARM-atf/docs/porting-guide.md
/rk3399_ARM-atf/docs/user-guide.md
/rk3399_ARM-atf/drivers/arm/cci/cci.c
/rk3399_ARM-atf/drivers/arm/ccn/ccn.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/arm/tzc/tzc400.c
/rk3399_ARM-atf/drivers/arm/tzc/tzc_common_private.h
/rk3399_ARM-atf/drivers/arm/tzc/tzc_dmc500.c
/rk3399_ARM-atf/drivers/cadence/uart/aarch64/cdns_console.S
/rk3399_ARM-atf/drivers/console/aarch32/console.S
/rk3399_ARM-atf/drivers/console/aarch32/skeleton_console.S
/rk3399_ARM-atf/drivers/console/aarch64/console.S
/rk3399_ARM-atf/drivers/console/aarch64/skeleton_console.S
/rk3399_ARM-atf/drivers/io/io_storage.c
/rk3399_ARM-atf/drivers/ti/uart/aarch64/16550_console.S
common/aarch32/asm_macros.S
common/aarch32/el3_common_macros.S
drivers/console.h
lib/aarch32/arch.h
lib/aarch32/arch_helpers.h
lib/aarch64/arch.h
lib/cpus/aarch32/cortex_a53.h
lib/cpus/aarch32/cortex_a57.h
lib/cpus/aarch32/cortex_a72.h
lib/el3_runtime/context_mgmt.h
lib/smcc.h
lib/stdlib/assert.h
lib/stdlib/stdbool.h
lib/xlat_tables/xlat_tables.h
lib/xlat_tables/xlat_tables_v2.h
plat/arm/board/common/v2m_def.h
plat/arm/common/arm_xlat_tables.h
plat/arm/common/plat_arm.h
plat/arm/css/common/css_pm.h
plat/arm/soc/common/soc_css_def.h
plat/common/platform.h
/rk3399_ARM-atf/lib/aarch32/misc_helpers.S
/rk3399_ARM-atf/lib/aarch64/misc_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch32/aem_generic.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a32.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a53.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a57.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a72.S
/rk3399_ARM-atf/lib/cpus/aarch32/cpu_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/cpu_helpers.S
/rk3399_ARM-atf/lib/psci/psci_on.c
/rk3399_ARM-atf/lib/psci/psci_suspend.c
/rk3399_ARM-atf/lib/psci/psci_system_off.c
/rk3399_ARM-atf/lib/stdlib/assert.c
/rk3399_ARM-atf/lib/xlat_tables/aarch32/xlat_tables.c
/rk3399_ARM-atf/lib/xlat_tables/aarch64/xlat_tables.c
/rk3399_ARM-atf/lib/xlat_tables/xlat_tables_common.c
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch32/xlat_tables_arch.c
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch64/xlat_tables_arch.c
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_common.c
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_internal.c
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/common/board_css_common.c
/rk3399_ARM-atf/plat/arm/board/juno/aarch32/juno_helpers.S
/rk3399_ARM-atf/plat/arm/board/juno/aarch64/juno_helpers.S
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/juno_bl1_setup.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_bl2_setup.c
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/sp_min/sp_min-juno.mk
/rk3399_ARM-atf/plat/arm/common/aarch32/arm_helpers.S
/rk3399_ARM-atf/plat/arm/common/aarch64/arm_helpers.S
/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.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/css/common/aarch32/css_helpers.S
/rk3399_ARM-atf/plat/arm/css/common/css_common.mk
/rk3399_ARM-atf/plat/arm/css/common/css_pm.c
/rk3399_ARM-atf/plat/arm/css/drivers/scp/css_pm_scpi.c
/rk3399_ARM-atf/plat/common/aarch32/platform_helpers.S
/rk3399_ARM-atf/plat/common/aarch64/platform_helpers.S
/rk3399_ARM-atf/plat/common/aarch64/platform_mp_stack.S
/rk3399_ARM-atf/plat/mediatek/common/drivers/uart/8250_console.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/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/drivers/smmu/smmu.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_platform.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/common/tegra_topology.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/drivers/memctrl.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/memctrl_v1.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/memctrl_v2.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/pmc.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/smmu.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t186/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_platform.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/t186/drivers/include/mce_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/include/t18x_ari.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/ari.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/nvg.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_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_sip_calls.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/t186/platform_t186.mk
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dfs.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/platform.mk
/rk3399_ARM-atf/services/spd/tspd/tspd_main.c
/rk3399_ARM-atf/tools/fiptool/fiptool.c
53d9c9c810-Apr-2017 Scott Branden <scott.branden@broadcom.com>

Move defines in utils.h to utils_def.h to fix shared header compile issues

utils.h is included in various header files for the defines in it.
Some of the other header files only contain defines. Th

Move defines in utils.h to utils_def.h to fix shared header compile issues

utils.h is included in various header files for the defines in it.
Some of the other header files only contain defines. This allows the
header files to be shared between host and target builds for shared defines.

Recently types.h has been included in utils.h as well as some function
prototypes.

Because of the inclusion of types.h conflicts exist building host tools
abd these header files now. To solve this problem,
move the defines to utils_def.h and have this included by utils.h and
change header files to only include utils_def.h and not pick up the new
types.h being introduced.

Fixes ARM-software/tf-issues#461

Signed-off-by: Scott Branden <scott.branden@broadcom.com>

Remove utils_def.h from utils.h

This patch removes utils_def.h from utils.h as it is not required.
And also makes a minor change to ensure Juno platform compiles.

Change-Id: I10cf1fb51e44a8fa6dcec02980354eb9ecc9fa29

show more ...

b3ccb0f226-Apr-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #917 from soby-mathew/sm/sys_susp_css

CSS: Allow system suspend only via PSCI SYSTEM_SUSPEND API

16292f5405-Apr-2017 David Cunado <david.cunado@arm.com>

Update terminology: standard SMC to yielding SMC

Since Issue B (November 2016) of the SMC Calling Convention document
standard SMC calls are renamed to yielding SMC calls to help avoid
confusion wit

Update terminology: standard SMC to yielding SMC

Since Issue B (November 2016) of the SMC Calling Convention document
standard SMC calls are renamed to yielding SMC calls to help avoid
confusion with the standard service SMC range, which remains unchanged.

http://infocenter.arm.com/help/topic/com.arm.doc.den0028b/ARM_DEN0028B_SMC_Calling_Convention.pdf

This patch adds a new define for yielding SMC call type and deprecates
the current standard SMC call type. The tsp is migrated to use this new
terminology and, additionally, the documentation and code comments are
updated to use this new terminology.

Change-Id: I0d7cc0224667ee6c050af976745f18c55906a793
Signed-off-by: David Cunado <david.cunado@arm.com>

show more ...

79199f7026-Apr-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #907 from antonio-nino-diaz-arm/an/smc-ret0

tspd:FWU:Fix usage of SMC_RET0

c99a16fe25-Apr-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #901 from vwadekar/freebsd-stdbool-header

lib: stdbool header from the FreeBSD project

0c7c441124-Apr-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #909 from sandrine-bailleux-arm/sb/xlat-lib-misc-improvements

xlat lib: Use mmap_attr_t type consistently

abd2aba909-Dec-2016 Soby Mathew <soby.mathew@arm.com>

CSS: Allow system suspend only via PSCI SYSTEM_SUSPEND API

The CSS power management layer previously allowed to suspend system
power domain level via both PSCI CPU_SUSPEND and PSCI SYSTEM_SUSPEND
AP

CSS: Allow system suspend only via PSCI SYSTEM_SUSPEND API

The CSS power management layer previously allowed to suspend system
power domain level via both PSCI CPU_SUSPEND and PSCI SYSTEM_SUSPEND
APIs. System suspend via PSCI CPU_SUSPEND was always problematic to
support because of issues with targeting wakeup interrupts to
suspended cores before the per-cpu GIC initialization is done. This
is not the case for PSCI SYSTEM_SUSPEND API because all the other
cores are expected to be offlined prior to issuing system suspend and
PSCI CPU_ON explicit calls will be made to power them on. Hence the Juno
platform used to downgrade the PSCI CPU_SUSPEND request for system
power domain level to cluster level by overriding the default
`plat_psci_pm_ops` exported by CSS layer.

Given the direction the new CSS platforms are evolving, it is best to
limit the system suspend only via PSCI SYSTEM_SUSPEND API for all
CSS platforms. This patch makes changes to allow system suspend
only via PSCI SYSTEM_SUSPEND API. The override of `plat_psci_ops`
for Juno is removed.

Change-Id: Idb30eaad04890dd46074e9e888caeedc50a4b533
Signed-off-by: Soby Mathew <soby.mathew@arm.com>

show more ...

484acce321-Apr-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #910 from dp-arm/dp/AArch32-juno-port

Add AArch32 support for Juno

228bfaba21-Apr-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #903 from antonio-nino-diaz-arm/an/build-xlat-v1

ARM platforms: Add option to use xlat tables lib v1

6f24934514-Nov-2016 Yatharth Kochar <yatharth.kochar@arm.com>

AArch32: Add SP_MIN support for JUNO

This patch adds support for SP_MIN on JUNO platform.
The changes include addition of AArch32 assembly files,
JUNO specific SP_MIN make file and miscellaneous cha

AArch32: Add SP_MIN support for JUNO

This patch adds support for SP_MIN on JUNO platform.
The changes include addition of AArch32 assembly files,
JUNO specific SP_MIN make file and miscellaneous changes
in ARM platform files to enable support for SP_MIN.

Change-Id: Id1303f422fc9b98b9362c757b1a4225a16fffc0b
Signed-off-by: Yatharth Kochar <yatharth.kochar@arm.com>
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>

show more ...

07570d5914-Nov-2016 Yatharth Kochar <yatharth.kochar@arm.com>

Changes to support execution in AArch32 state for JUNO

Following steps are required to boot JUNO in AArch32 state:
1> BL1, in AArch64 state, loads BL2.
2> BL2, in AArch64 state, initializes DDR.
L

Changes to support execution in AArch32 state for JUNO

Following steps are required to boot JUNO in AArch32 state:
1> BL1, in AArch64 state, loads BL2.
2> BL2, in AArch64 state, initializes DDR.
Loads SP_MIN & BL33 (AArch32 executable)images.
Calls RUN_IMAGE SMC to go back to BL1.
3> BL1 writes AArch32 executable opcodes, to load and branch
at the entrypoint address of SP_MIN, at HI-VECTOR address and
then request for warm reset in AArch32 state using RMR_EL3.

This patch makes following changes to facilitate above steps:
* Added assembly function to carry out step 3 above.
* Added region in TZC that enables Secure access to the
HI-VECTOR(0xFFFF0000) address space.
* AArch32 image descriptor is used, in BL2, to load
SP_MIN and BL33 AArch32 executable images.

A new flag `JUNO_AARCH32_EL3_RUNTIME` is introduced that
controls above changes. By default this flag is disabled.

NOTE: BL1 and BL2 are not supported in AArch32 state for JUNO.

Change-Id: I091d56a0e6d36663e6d9d2bb53c92c672195d1ec
Signed-off-by: Yatharth Kochar <yatharth.kochar@arm.com>
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>

show more ...

dc78758810-Nov-2016 Yatharth Kochar <yatharth.kochar@arm.com>

AArch32: Add support for ARM Cortex-A53/57/72 MPCore Processor

This patch adds AArch32 state support for ARM Cortex-A53,
Cortex-A57 and Cortex-A72 MPCore Processor in the CPU specific
operations fra

AArch32: Add support for ARM Cortex-A53/57/72 MPCore Processor

This patch adds AArch32 state support for ARM Cortex-A53,
Cortex-A57 and Cortex-A72 MPCore Processor in the CPU specific
operations framework.

NOTE: CPU errata handling code is not present in this patch.

Change-Id: I01eb3e028e40dde37565707ebc99e06e7a0c113d
Signed-off-by: Yatharth Kochar <yatharth.kochar@arm.com>
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>

show more ...

28fa2e9e19-Apr-2017 Sandrine Bailleux <sandrine.bailleux@arm.com>

xlat lib: Use mmap_attr_t type consistently

This patch modifies both versions of the translation table library
to use the mmap_attr_t type consistently wherever it is manipulating
MT_* attributes va

xlat lib: Use mmap_attr_t type consistently

This patch modifies both versions of the translation table library
to use the mmap_attr_t type consistently wherever it is manipulating
MT_* attributes variables. It used to use mmap_attr_t or plain integer
types interchangeably, which compiles fine because an enumeration type
can be silently converted to an integer, but which is semantically
incorrect.

This patch removes this assumption by using the abstract type
'mmap_attr_t' all the time.

Change-Id: Id1f099025d2cb962b275bb7e39ad2c4dbb4e366c
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>

show more ...

aa61368e22-Mar-2017 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

Control inclusion of helper code used for asserts

Many asserts depend on code that is conditionally compiled based on the
DEBUG define. This patch modifies the conditional inclusion of such code
so

Control inclusion of helper code used for asserts

Many asserts depend on code that is conditionally compiled based on the
DEBUG define. This patch modifies the conditional inclusion of such code
so that it is based on the ENABLE_ASSERTIONS build option.

Change-Id: I6406674788aa7e1ad7c23d86ce94482ad3c382bd
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...

044bb2fa20-Apr-2017 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

Remove build option `ASM_ASSERTION`

The build option `ENABLE_ASSERTIONS` should be used instead. That way
both C and ASM assertions can be enabled or disabled together.

All occurrences of `ASM_ASSE

Remove build option `ASM_ASSERTION`

The build option `ENABLE_ASSERTIONS` should be used instead. That way
both C and ASM assertions can be enabled or disabled together.

All occurrences of `ASM_ASSERTION` in common code and ARM platforms have
been replaced by `ENABLE_ASSERTIONS`.

ASM_ASSERTION has been removed from the user guide.

Change-Id: I51f1991f11b9b7ff83e787c9a3270c274748ec6f
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...

7a317a7004-Apr-2017 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

tspd:FWU:Fix usage of SMC_RET0

SMC_RET0 should only be used when the SMC code works as a function that
returns void. If the code of the SMC uses SMC_RET1 to return a value to
signify success and doe

tspd:FWU:Fix usage of SMC_RET0

SMC_RET0 should only be used when the SMC code works as a function that
returns void. If the code of the SMC uses SMC_RET1 to return a value to
signify success and doesn't return anything in case of an error (or the
other way around) SMC_RET1 should always be used to return clearly
identifiable values.

This patch fixes two cases in which the code used SMC_RET0 instead of
SMC_RET1.

It also introduces the define SMC_OK to use when an SMC must return a
value to tell that it succeeded, the same way as SMC_UNK is used in case
of failure.

Change-Id: Ie4278b51559e4262aced13bbde4e844023270582
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...

230f0d9219-Apr-2017 Varun Wadekar <vwadekar@nvidia.com>

lib: stdbool header from the FreeBSD project

This patch pulls the stdbool.h header file from the FreeBSD
project. The platforms require this header to fix many MISRA
defects among other things.

Sig

lib: stdbool header from the FreeBSD project

This patch pulls the stdbool.h header file from the FreeBSD
project. The platforms require this header to fix many MISRA
defects among other things.

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

show more ...

cc8b563218-Apr-2017 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

Add `ENABLE_ASSERTIONS` build option

Add the new build option `ENABLE_ASSERTIONS` that controls whether or
not assert functions are compiled out. It defaults to 1 for debug builds
and to 0 for relea

Add `ENABLE_ASSERTIONS` build option

Add the new build option `ENABLE_ASSERTIONS` that controls whether or
not assert functions are compiled out. It defaults to 1 for debug builds
and to 0 for release builds.

Additionally, a following patch will be done to allow this build option
to hide auxiliary code used for the checks done in an `assert()`. This
code is is currently under the DEBUG build flag.

Assert messages are now only printed if LOG_LEVEL >= LOG_LEVEL_INFO,
which is the default for debug builds.

This patch also updates the User Guide.

Change-Id: I1401530b56bab25561bb0f274529f1d12c5263bc
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...

3b211ff511-Apr-2017 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

ARM platforms: Add option to use xlat tables lib v1

ARM platforms have migrated to the translation tables library v2.
However, for testing purposes, it can be useful to temporarily switch
back to th

ARM platforms: Add option to use xlat tables lib v1

ARM platforms have migrated to the translation tables library v2.
However, for testing purposes, it can be useful to temporarily switch
back to the old version.

This patch introduces the option `ARM_XLAT_TABLES_LIB_V1`, that switches
to v1 of the library when is set to 1. By default, it is 0, so that ARM
platforms use the new version unless specifically stated.

Updated User Guide.

Change-Id: I53d3c8dd97706f6af9c6fca0364a88ef341efd31
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...

1...<<131132133134135136137138139140>>...159