History log of /rk3399_ARM-atf/include/lib/ (Results 1301 – 1325 of 1464)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
108e4df716-Feb-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #834 from douglas-raillard-arm/dr/use_dc_zva_zeroing

Use DC ZVA instruction to zero memory


/rk3399_ARM-atf/.gitignore
/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/bl1.ld.S
/rk3399_ARM-atf/bl1/bl1_fwu.c
/rk3399_ARM-atf/bl2/aarch64/bl2_entrypoint.S
/rk3399_ARM-atf/bl2/bl2.ld.S
/rk3399_ARM-atf/bl2u/aarch64/bl2u_entrypoint.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/sp_min/sp_min_main.c
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_entrypoint.S
/rk3399_ARM-atf/bl32/tsp/tsp.ld.S
/rk3399_ARM-atf/common/bl_common.c
/rk3399_ARM-atf/docs/firmware-design.md
/rk3399_ARM-atf/docs/plat/xilinx-zynqmp.md
/rk3399_ARM-atf/docs/porting-guide.md
/rk3399_ARM-atf/docs/user-guide.md
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_x509_parser.c
/rk3399_ARM-atf/drivers/emmc/emmc.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_semihosting.c
/rk3399_ARM-atf/drivers/partition/gpt.c
/rk3399_ARM-atf/include/common/aarch64/el3_common_macros.S
utils.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/lib/aarch32/misc_helpers.S
/rk3399_ARM-atf/lib/aarch64/misc_helpers.S
/rk3399_ARM-atf/lib/el3_runtime/aarch32/context_mgmt.c
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/psci/psci_common.c
/rk3399_ARM-atf/lib/psci/psci_main.c
/rk3399_ARM-atf/lib/psci/psci_off.c
/rk3399_ARM-atf/lib/psci/psci_private.h
/rk3399_ARM-atf/lib/psci/psci_stat.c
/rk3399_ARM-atf/lib/psci/psci_suspend.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/css/common/css_bl2_setup.c
/rk3399_ARM-atf/plat/arm/css/drivers/scpi/css_scpi.c
/rk3399_ARM-atf/plat/common/plat_psci_common.c
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31.ld.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/memctrl/memctrl.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_setup.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dram_spec_timing.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_client.c
/rk3399_ARM-atf/services/spd/opteed/opteed_common.c
/rk3399_ARM-atf/services/spd/tspd/tspd_common.c
/rk3399_ARM-atf/tools/cert_create/include/key.h
/rk3399_ARM-atf/tools/cert_create/src/cert.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/fiptool/fiptool.c
85e93ba008-Feb-2017 dp-arm <dimitris.papastamos@arm.com>

Disable secure self-hosted debug via MDCR_EL3/SDCR

Trusted Firmware currently has no support for secure self-hosted
debug. To avoid unexpected exceptions, disable software debug
exceptions, other t

Disable secure self-hosted debug via MDCR_EL3/SDCR

Trusted Firmware currently has no support for secure self-hosted
debug. To avoid unexpected exceptions, disable software debug
exceptions, other than software breakpoint instruction exceptions,
from all exception levels in secure state. This applies to both
AArch32 and AArch64 EL3 initialization.

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

show more ...

308d359b02-Dec-2016 Douglas Raillard <douglas.raillard@arm.com>

Introduce unified API to zero memory

Introduce zeromem_dczva function on AArch64 that can handle unaligned
addresses and make use of DC ZVA instruction to zero a whole block at a
time. This zeroing

Introduce unified API to zero memory

Introduce zeromem_dczva function on AArch64 that can handle unaligned
addresses and make use of DC ZVA instruction to zero a whole block at a
time. This zeroing takes place directly in the cache to speed it up
without doing external memory access.

Remove the zeromem16 function on AArch64 and replace it with an alias to
zeromem. This zeromem16 function is now deprecated.

Remove the 16-bytes alignment constraint on __BSS_START__ in
firmware-design.md as it is now not mandatory anymore (it used to comply
with zeromem16 requirements).

Change the 16-bytes alignment constraints in SP min's linker script to a
8-bytes alignment constraint as the AArch32 zeromem implementation is now
more efficient on 8-bytes aligned addresses.

Introduce zero_normalmem and zeromem helpers in platform agnostic header
that are implemented this way:
* AArch32:
* zero_normalmem: zero using usual data access
* zeromem: alias for zero_normalmem
* AArch64:
* zero_normalmem: zero normal memory using DC ZVA instruction
(needs MMU enabled)
* zeromem: zero using usual data access

Usage guidelines: in most cases, zero_normalmem should be preferred.

There are 2 scenarios where zeromem (or memset) must be used instead:
* Code that must run with MMU disabled (which means all memory is
considered device memory for data accesses).
* Code that fills device memory with null bytes.

Optionally, the following rule can be applied if performance is
important:
* Code zeroing small areas (few bytes) that are not secrets should use
memset to take advantage of compiler optimizations.

Note: Code zeroing security-related critical information should use
zero_normalmem/zeromem instead of memset to avoid removal by
compilers' optimizations in some cases or misbehaving versions of GCC.

Fixes ARM-software/tf-issues#408

Change-Id: Iafd9663fc1070413c3e1904e54091cf60effaa82
Signed-off-by: Douglas Raillard <douglas.raillard@arm.com>

show more ...

888037e501-Feb-2017 dp-arm <dimitris.papastamos@arm.com>

PMF: Fixup PMF constants

`PMF_ARM_TIF_IMPL_ID` should be set to 0x41. The code already left
shifts it by 24 bit positions so this was overflowing.

This fixes a build error with GCC 6.2 when
`ENABL

PMF: Fixup PMF constants

`PMF_ARM_TIF_IMPL_ID` should be set to 0x41. The code already left
shifts it by 24 bit positions so this was overflowing.

This fixes a build error with GCC 6.2 when
`ENABLE_RUNTIME_INSTRUMENTATION` is set.

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

show more ...

bcc2bf0931-Jan-2017 danh-arm <dan.handley@arm.com>

Merge pull request #821 from jeenu-arm/errata-printing

Errata printing infrastructure

10bcd76103-Jan-2017 Jeenu Viswambharan <jeenu.viswambharan@arm.com>

Report errata workaround status to console

The errata reporting policy is as follows:

- If an errata workaround is enabled:

- If it applies (i.e. the CPU is affected by the errata), an INFO

Report errata workaround status to console

The errata reporting policy is as follows:

- If an errata workaround is enabled:

- If it applies (i.e. the CPU is affected by the errata), an INFO
message is printed, confirming that the errata workaround has been
applied.

- If it does not apply, a VERBOSE message is printed, confirming
that the errata workaround has been skipped.

- If an errata workaround is not enabled, but would have applied had
it been, a WARN message is printed, alerting that errata workaround
is missing.

The CPU errata messages are printed by both BL1 (primary CPU only) and
runtime firmware on debug builds, once for each CPU/errata combination.

Relevant output from Juno r1 console when ARM Trusted Firmware is built
with PLAT=juno LOG_LEVEL=50 DEBUG=1:

VERBOSE: BL1: cortex_a57: errata workaround for 806969 was not applied
VERBOSE: BL1: cortex_a57: errata workaround for 813420 was not applied
INFO: BL1: cortex_a57: errata workaround for disable_ldnp_overread was applied
WARNING: BL1: cortex_a57: errata workaround for 826974 was missing!
WARNING: BL1: cortex_a57: errata workaround for 826977 was missing!
WARNING: BL1: cortex_a57: errata workaround for 828024 was missing!
WARNING: BL1: cortex_a57: errata workaround for 829520 was missing!
WARNING: BL1: cortex_a57: errata workaround for 833471 was missing!
...
VERBOSE: BL31: cortex_a57: errata workaround for 806969 was not applied
VERBOSE: BL31: cortex_a57: errata workaround for 813420 was not applied
INFO: BL31: cortex_a57: errata workaround for disable_ldnp_overread was applied
WARNING: BL31: cortex_a57: errata workaround for 826974 was missing!
WARNING: BL31: cortex_a57: errata workaround for 826977 was missing!
WARNING: BL31: cortex_a57: errata workaround for 828024 was missing!
WARNING: BL31: cortex_a57: errata workaround for 829520 was missing!
WARNING: BL31: cortex_a57: errata workaround for 833471 was missing!
...
VERBOSE: BL31: cortex_a53: errata workaround for 826319 was not applied
INFO: BL31: cortex_a53: errata workaround for disable_non_temporal_hint was applied

Also update documentation.

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

show more ...

b38bc68b19-Jan-2017 Jeenu Viswambharan <jeenu.viswambharan@arm.com>

Allow spin locks to be defined from assembly

At present, spin locks can only defined from C files. Add some macros
such that they can be defined from assembly files too.

Change-Id: I64f0c214062f5c1

Allow spin locks to be defined from assembly

At present, spin locks can only defined from C files. Add some macros
such that they can be defined from assembly files too.

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

show more ...

9edac04719-Jan-2017 David Cunado <david.cunado@arm.com>

Resolve build errors flagged by GCC 6.2

With GCC 6.2 compiler, more C undefined behaviour is being flagged as
warnings, which result in build errors in ARM TF build.

The specific issue that this pa

Resolve build errors flagged by GCC 6.2

With GCC 6.2 compiler, more C undefined behaviour is being flagged as
warnings, which result in build errors in ARM TF build.

The specific issue that this patch resolves is the use of (1 << 31),
which is predominantly used in case statements, where 1 is represented
as a signed int. When shifted to msb the behaviour is undefined.

The resolution is to specify 1 as an unsigned int using a convenience
macro ULL(). A duplicate macro MAKE_ULL() is replaced.

Fixes ARM-software/tf-issues#438

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

show more ...

aa050a7b16-Jan-2017 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

stdlib: Import timingsafe_bcmp() from FreeBSD

Some side-channel attacks involve an attacker inferring something from
the time taken for a memory compare operation to complete, for example
when compa

stdlib: Import timingsafe_bcmp() from FreeBSD

Some side-channel attacks involve an attacker inferring something from
the time taken for a memory compare operation to complete, for example
when comparing hashes during image authentication. To mitigate this,
timingsafe_bcmp() must be used for such operations instead of the
standard memcmp().

This function executes in constant time and so doesn't leak any timing
information to the caller.

Change-Id: I470a723dc3626a0ee6d5e3f7fd48d0a57b8aa5fd
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>

show more ...

3443866924-Jan-2017 danh-arm <dan.handley@arm.com>

Merge pull request #818 from sandrine-bailleux-arm/sb/strnlen

Add strnlen() to local C library

d67879d324-Jan-2017 Sandrine Bailleux <sandrine.bailleux@arm.com>

Add strnlen() to local C library

This code has been imported and slightly adapted from FreeBSD:
https://github.com/freebsd/freebsd/blob/6253393ad8df55730481bf2aafd76bdd6182e2f5/lib/libc/string/strnl

Add strnlen() to local C library

This code has been imported and slightly adapted from FreeBSD:
https://github.com/freebsd/freebsd/blob/6253393ad8df55730481bf2aafd76bdd6182e2f5/lib/libc/string/strnlen.c

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

show more ...

4abd222523-Jan-2017 danh-arm <dan.handley@arm.com>

Merge pull request #800 from masahir0y/ifdef

Correct preprocessor conditionals

3d8256b225-Dec-2016 Masahiro Yamada <yamada.masahiro@socionext.com>

Use #ifdef for IMAGE_BL* instead of #if

One nasty part of ATF is some of boolean macros are always defined
as 1 or 0, and the rest of them are only defined under certain
conditions.

For the former

Use #ifdef for IMAGE_BL* instead of #if

One nasty part of ATF is some of boolean macros are always defined
as 1 or 0, and the rest of them are only defined under certain
conditions.

For the former group, "#if FOO" or "#if !FOO" must be used because
"#ifdef FOO" is always true. (Options passed by $(call add_define,)
are the cases.)

For the latter, "#ifdef FOO" or "#ifndef FOO" should be used because
checking the value of an undefined macro is strange.

Here, IMAGE_BL* is handled by make_helpers/build_macro.mk like
follows:

$(eval IMAGE := IMAGE_BL$(call uppercase,$(3)))

$(OBJ): $(2)
@echo " CC $$<"
$$(Q)$$(CC) $$(TF_CFLAGS) $$(CFLAGS) -D$(IMAGE) -c $$< -o $$@

This means, IMAGE_BL* is defined when building the corresponding
image, but *undefined* for the other images.

So, IMAGE_BL* belongs to the latter group where we should use #ifdef
or #ifndef.

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

show more ...


/rk3399_ARM-atf/drivers/arm/ccn/ccn.c
/rk3399_ARM-atf/include/common/aarch32/el3_common_macros.S
/rk3399_ARM-atf/include/common/aarch64/el3_common_macros.S
/rk3399_ARM-atf/include/common/bl_common.h
cpus/aarch32/cpu_macros.S
cpus/aarch64/cpu_macros.S
/rk3399_ARM-atf/include/plat/arm/board/common/board_arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/plat/common/common_def.h
/rk3399_ARM-atf/lib/cpus/aarch32/cpu_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/cpu_helpers.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/plat/arm/board/common/board_css_common.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common.c
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/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_gicv3.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/common/plat_gicv3.c
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt6795/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8173/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/spm/spm_mcdi.c
/rk3399_ARM-atf/plat/mediatek/mt8173/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/qemu/include/platform_def.h
/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/rockchip/common/bl31_plat_setup.c
/rk3399_ARM-atf/plat/rockchip/common/rockchip_gicv3.c
/rk3399_ARM-atf/plat/rockchip/rk3368/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/platform_def.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
7b94e4b923-Jan-2017 danh-arm <dan.handley@arm.com>

Merge pull request #813 from antonio-nino-diaz-arm/an/libfdt

Update libfdt to version 1.4.2

23beccc923-Jan-2017 danh-arm <dan.handley@arm.com>

Merge pull request #812 from antonio-nino-diaz-arm/an/clear-static-vars

Clear static variables in X509 parser on error

c8d64c5413-Jan-2017 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

Fix declarations of cache maintenance functions

Fix the parameter type of the maintenance functions of data cache.

Add missing declarations for AArch32 versions of dcsw_op_louis and
dcsw_op_all to

Fix declarations of cache maintenance functions

Fix the parameter type of the maintenance functions of data cache.

Add missing declarations for AArch32 versions of dcsw_op_louis and
dcsw_op_all to match the AAch64 ones.

Change-Id: I4226e8ea4f8b2b5bc2972992c83de659ee0da52c

show more ...

fc17f61218-Jan-2017 danh-arm <dan.handley@arm.com>

Merge pull request #790 from masahir0y/utils

add utility macros to utils.h

29440c1916-Jan-2017 Antonio Nino Diaz <antonio.ninodiaz@arm.com>

libfdt: Replace v1.4.1 by v1.4.2

Delete old version of libfdt at lib/libfdt. Move new libfdt API
headers to include/lib/libfdt and all other files to lib/libfdt.

Change-Id: I32b7888f1f20d62205310e3

libfdt: Replace v1.4.1 by v1.4.2

Delete old version of libfdt at lib/libfdt. Move new libfdt API
headers to include/lib/libfdt and all other files to lib/libfdt.

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

show more ...

152c8c1105-Dec-2016 Masahiro Yamada <yamada.masahiro@socionext.com>

utils: move BIT(n) macro to utils.h

We are duplicating this macro define, and it is useful enough
to be placed in the common place.

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

fcab6bbe03-Nov-2016 dp-arm <dimitris.papastamos@arm.com>

fiptool: Add support for operating on binary blobs using the UUID

Previously, fiptool only understood a fixed set of images as
specified in tbbr_config.c. It preserved unknown images during
the upd

fiptool: Add support for operating on binary blobs using the UUID

Previously, fiptool only understood a fixed set of images as
specified in tbbr_config.c. It preserved unknown images during
the update, unpack and remove operations but it was not possible to
explicitly refer to one of those unknown images.

Add a new --blob option to create/update/unpack/remove images that
are not known at compile time. This is accomplished by specifying
the UUID and filename pair as shown below:

$ ./fiptool create --blob uuid=01234567-89ab-cdef-0123-456789abcdef,file=foo.bin fip.bin
$ ./fiptool info fip.bin
01234567-89ab-cdef-0123-456789abcdef: offset=0x60, size=0x1AA68

Fixes ARM-software/tf-issues#420

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

show more ...

67748e4820-Dec-2016 danh-arm <dan.handley@arm.com>

Merge pull request #788 from jeenu-arm/cpuops-framework

Add provision to extend CPU operations at more levels


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/bl1_fwu.c
/rk3399_ARM-atf/bl1/tbbr/tbbr_img_desc.c
/rk3399_ARM-atf/common/bl_common.c
/rk3399_ARM-atf/docs/firmware-design.md
/rk3399_ARM-atf/docs/firmware-update.md
/rk3399_ARM-atf/docs/porting-guide.md
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_main.c
/rk3399_ARM-atf/drivers/auth/auth_mod.c
/rk3399_ARM-atf/include/common/bl_common.h
/rk3399_ARM-atf/include/drivers/arm/gicv3.h
cpus/aarch32/cpu_macros.S
cpus/aarch64/cpu_macros.S
/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/common/platform.h
/rk3399_ARM-atf/lib/cpus/aarch32/aem_generic.S
/rk3399_ARM-atf/lib/cpus/aarch32/cortex_a32.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/psci/aarch32/psci_helpers.S
/rk3399_ARM-atf/lib/psci/aarch64/psci_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_pm.c
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/common/arm_bl1_fwu.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/common/tbbr/plat_tbbr.c
5d93484a19-Dec-2016 danh-arm <dan.handley@arm.com>

Merge pull request #779 from dp-arm/dp/rtinstr-cache

Add two timestamps to measure PSCI cache flush overhead

78b4c5b019-Dec-2016 danh-arm <dan.handley@arm.com>

Merge pull request #778 from antonio-nino-diaz-arm/an/xlat-fixes

Fixes and improvements to translation tables library


/rk3399_ARM-atf/bl1/aarch64/bl1_exceptions.S
/rk3399_ARM-atf/bl2/aarch32/bl2_entrypoint.S
/rk3399_ARM-atf/bl2/aarch64/bl2_entrypoint.S
/rk3399_ARM-atf/bl2u/aarch64/bl2u_entrypoint.S
/rk3399_ARM-atf/bl31/aarch64/crash_reporting.S
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_entrypoint.S
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_exceptions.S
/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/docs/porting-guide.md
/rk3399_ARM-atf/docs/user-guide.md
/rk3399_ARM-atf/fdts/fvp-foundation-gicv2-psci.dts
/rk3399_ARM-atf/fdts/fvp-foundation-motherboard.dtsi
/rk3399_ARM-atf/include/common/aarch32/asm_macros.S
/rk3399_ARM-atf/include/common/aarch32/el3_common_macros.S
/rk3399_ARM-atf/include/common/aarch64/asm_macros.S
/rk3399_ARM-atf/include/drivers/io/io_fip.h
aarch64/arch.h
aarch64/arch_helpers.h
xlat_tables.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/lib/aarch64/misc_helpers.S
/rk3399_ARM-atf/lib/psci/aarch32/psci_helpers.S
/rk3399_ARM-atf/lib/psci/aarch64/psci_helpers.S
/rk3399_ARM-atf/lib/stdlib/mem.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/xlat_tables_private.h
/rk3399_ARM-atf/make_helpers/build_env.mk
/rk3399_ARM-atf/plat/arm/board/fvp/aarch64/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/juno/aarch64/juno_helpers.S
/rk3399_ARM-atf/plat/rockchip/common/drivers/pmu/pmu_com.h
/rk3399_ARM-atf/plat/rockchip/common/include/rockchip_sip_svc.h
/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_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/plat_sip_calls.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/plat_pmu_macros.S
/rk3399_ARM-atf/plat/rockchip/rk3399/include/plat_sip_calls.h
/rk3399_ARM-atf/plat/rockchip/rk3399/plat_sip_calls.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/aarch64/zynqmp_helpers.S
/rk3399_ARM-atf/plat/xilinx/zynqmp/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp-zynqmp.mk
5dd9dbb518-Nov-2016 Jeenu Viswambharan <jeenu.viswambharan@arm.com>

Add provision to extend CPU operations at more levels

Various CPU drivers in ARM Trusted Firmware register functions to handle
power-down operations. At present, separate functions are registered to

Add provision to extend CPU operations at more levels

Various CPU drivers in ARM Trusted Firmware register functions to handle
power-down operations. At present, separate functions are registered to
power down individual cores and clusters.

This scheme operates on the basis of core and cluster, and doesn't cater
for extending the hierarchy for power-down operations. For example,
future CPUs might support multiple threads which might need powering
down individually.

This patch therefore reworks the CPU operations framework to allow for
registering power down handlers on specific level basis. Henceforth:

- Generic code invokes CPU power down operations by the level
required.

- CPU drivers explicitly mention CPU_NO_RESET_FUNC when the CPU has no
reset function.

- CPU drivers register power down handlers as a list: a mandatory
handler for level 0, and optional handlers for higher levels.

All existing CPU drivers are adapted to the new CPU operations framework
without needing any functional changes within.

Also update firmware design guide.

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

show more ...


/rk3399_ARM-atf/bl1/aarch64/bl1_exceptions.S
/rk3399_ARM-atf/bl2/aarch32/bl2_entrypoint.S
/rk3399_ARM-atf/bl2/aarch64/bl2_entrypoint.S
/rk3399_ARM-atf/bl2u/aarch64/bl2u_entrypoint.S
/rk3399_ARM-atf/bl31/aarch64/crash_reporting.S
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_entrypoint.S
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_exceptions.S
/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/docs/firmware-design.md
/rk3399_ARM-atf/docs/user-guide.md
/rk3399_ARM-atf/include/common/aarch32/asm_macros.S
/rk3399_ARM-atf/include/common/aarch32/el3_common_macros.S
/rk3399_ARM-atf/include/common/aarch64/asm_macros.S
cpus/aarch32/cpu_macros.S
cpus/aarch64/cpu_macros.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/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/psci/aarch32/psci_helpers.S
/rk3399_ARM-atf/lib/psci/aarch64/psci_helpers.S
/rk3399_ARM-atf/lib/stdlib/mem.c
/rk3399_ARM-atf/plat/arm/board/fvp/aarch64/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/juno/aarch64/juno_helpers.S
/rk3399_ARM-atf/plat/xilinx/zynqmp/aarch64/zynqmp_helpers.S
7941816a15-Nov-2016 dp-arm <dimitris.papastamos@arm.com>

Add two timestamps to measure PSCI cache flush overhead

Testing showed that the time spent in a cluster power down
operation is dominated by cache flushes. Add two more timestamps
in runtime instru

Add two timestamps to measure PSCI cache flush overhead

Testing showed that the time spent in a cluster power down
operation is dominated by cache flushes. Add two more timestamps
in runtime instrumentation to keep track of the time spent
flushing the L1/L2 caches.

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

show more ...

1...<<515253545556575859