audk/ArmPkg
Ard Biesheuvel 7a1e861e29 ArmPkg/TimerDxe: Read timer frequency from CPU
The PCD gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz is used in the
SEC phase (if applicable) to write the platform's counter frequency
to the CNTFRQ system register, as this needs to be done by the highest
exception level implemented.

Under virtualization, we should be able to rely on the host to have
initialized this register to a sane value, as we run at EL1 and only
use the virtual timer, so the PcdArmArchTimerFreqInHz PCD has little
meaning here.

So in either case, by the time we enter the DXE phase, we can use the
CNTFRQ system register to read the frequency instead of looking at the
PCD.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16090 6f19259b-4bc3-4df7-8a09-765794883524
2014-09-10 18:48:47 +00:00
..
Application/LinuxLoader ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
Drivers ArmPkg/TimerDxe: Read timer frequency from CPU 2014-09-10 18:48:47 +00:00
Filesystem/SemihostFs ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
Include ArmPkg: Add ArmHvcLib 2014-09-10 18:46:23 +00:00
Library ArmPkg: Introduced ArmPsciResetSystemLib 2014-09-10 18:47:30 +00:00
ArmPkg.dec ArmPkg: Introduced ArmPsciResetSystemLib 2014-09-10 18:47:30 +00:00
ArmPkg.dsc ArmPkg: Introduced ArmPsciResetSystemLib 2014-09-10 18:47:30 +00:00
Contributions.txt EDK II Contributions.txt: Note acceptable contribution licenses 2014-08-25 23:10:18 +00:00
License.txt EDK II Packages: Added License.txt files 2012-04-12 16:40:32 +00:00