The use of the EmbeddedPkg/MetronomeDxe driver on Juno can cause problems
with drivers that use gBS->Stall, since it takes 10x longer than
requested. For example requesting a timeout of 1 ms when doing a USB
bulk transfer results in it taking 100 ms. Switching to the
MdeModulePkg/Universal/Metronome driver fixes this since it assumes the
timer clock ticks at least every 100 ns.
While here, set the PCD value of the timer frequency to 0 so it gets
read from the SoC instead of hard-coding it.
Also, fix the time between interrupts in TimerDxe to be 1 ms as
the driver wants.
Rebecca Cran (3):
Platform/ARM/JunoPkg: Switch to MdeModulePkg/Universal/Metronome
driver
Platform/ARM/JunoPkg: Override PcdTimerPeriod to be 10000
Platform/ARM/JunoPkg: Set PcdArmArchTimerFreqInHz to 0 to read from
CNTFRQ_EL0
Platform/ARM/JunoPkg/ArmJuno.dsc | 7 ++++---
Platform/ARM/JunoPkg/ArmJuno.fdf | 2 +-
2 files changed, 5 insertions(+), 4 deletions(-)
--
2.30.2