arm-trusted-firmware/include/lib
Soby Mathew 342d6220e6 ARM Platforms: Update CNTFRQ register in CNTCTLBase frame
Currently TF-A doesn't initialise CNTFRQ register in CNTCTLBase
frame of the system timer. ARM ARM states that "The instance of
the register in the CNTCTLBase frame must be programmed with this
value as part of system initialization."

The psci_arch_setup() updates the CNTFRQ system register but
according to the ARM ARM, this instance of the register is
independent of the memory mapped instance. This is only an issue
for Normal world software which relies on the memory mapped
instance rather than the system register one.

This patch resolves the issue for ARM platforms.

The patch also solves a related issue on Juno, wherein
CNTBaseN.CNTFRQ can be written and does not reflect the value of
the register in CNTCTLBase frame. Hence this patch additionally
updates CNTFRQ register in the Non Secure frame of the CNTBaseN.

Fixes ARM-Software/tf-issues#593

Change-Id: I09cebb6633688b34d5b1bc349fbde4751025b350
Signed-off-by: Soby Mathew <soby.mathew@arm.com>
2018-06-20 13:09:30 +01:00
..
aarch32 ARM Platforms: Update CNTFRQ register in CNTCTLBase frame 2018-06-20 13:09:30 +01:00
aarch64 ARM Platforms: Update CNTFRQ register in CNTCTLBase frame 2018-06-20 13:09:30 +01:00
cpus Implement dynamic mitigation for CVE-2018-3639 on Cortex-A76 2018-06-08 11:46:31 +01:00
el3_runtime SDEI: Ensure SDEI handler executes with CVE-2018-3639 mitigation enabled 2018-06-08 11:46:31 +01:00
extensions RAS: Allow individual interrupt registration 2018-05-04 08:33:17 +01:00
libfdt libfdt: Replace v1.4.1 by v1.4.2 2017-01-16 17:26:04 +00:00
pmf lib: fix switch statements to comply with MISRA rules 2018-03-26 12:43:05 +01:00
psci Update PSCI version to 1.1 2017-10-13 12:39:08 +01:00
stdlib types: use int-ll64 for both aarch32 and aarch64 2018-04-27 18:35:02 +09:00
xlat_tables Merge pull request #1415 from antonio-nino-diaz-arm/an/spm-fixes 2018-06-14 14:33:13 +01:00
zlib zlib: add gunzip() support 2018-02-02 00:18:54 +09:00
bakery_lock.h Use SPDX license identifiers 2017-05-03 09:39:28 +01:00
cassert.h Use SPDX license identifiers 2017-05-03 09:39:28 +01:00
coreboot.h Add platform-independent coreboot support library 2018-01-19 15:21:12 -08:00
mmio.h Use SPDX license identifiers 2017-05-03 09:39:28 +01:00
optee_utils.h Add Trusted OS extra image parsing support for ARM standard platforms 2017-08-09 18:06:05 +08:00
runtime_instr.h Use SPDX license identifiers 2017-05-03 09:39:28 +01:00
semihosting.h Use SPDX license identifiers 2017-05-03 09:39:28 +01:00
smcc.h Rename 'smcc' to 'smccc' 2018-03-21 10:49:27 +00:00
smccc.h smccc: Fix checkpatch error in header file 2018-05-02 09:52:39 +01:00
smccc_v1.h Add support for the SMC Calling Convention 2.0 2018-04-23 15:43:29 +01:00
smccc_v2.h Add support for the SMC Calling Convention 2.0 2018-04-23 15:43:29 +01:00
spinlock.h Use SPDX license identifiers 2017-05-03 09:39:28 +01:00
utils.h ARM platforms: Demonstrate mem_protect from el3_runtime 2018-05-01 15:25:25 +01:00
utils_def.h utils: Add BIT_32 and BIT_64 macros 2018-06-14 18:35:38 +02:00