ArmPkg: add reenable hook to ArmGenericTimerCounterLib

In preparation of selectively reinstating the timer enable quirk for Xen
that we removed in commit 411a373ed6 ("ArmPkg/TimerDxe: remove workaround
for KVM timer handling"), add a ArmGenericTimerReenableTimer() library
function to ArmGenericTimerCounterLib that we will populate for Xen only.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Tested-by: Julien Grall <julien.grall@arm.com>
Acked-by: Julien Grall <julien.grall@arm.com>
This commit is contained in:
Ard Biesheuvel 2018-04-23 16:47:18 +02:00
parent 1eb72acddd
commit 5853e2e450
4 changed files with 23 additions and 0 deletions

View File

@ -337,6 +337,7 @@ TimerInterruptHandler (
// Set next compare value // Set next compare value
ArmGenericTimerSetCompareVal (CompareValue); ArmGenericTimerSetCompareVal (CompareValue);
ArmGenericTimerReenableTimer ();
ArmInstructionSynchronizationBarrier (); ArmInstructionSynchronizationBarrier ();
} }

View File

@ -22,6 +22,12 @@ ArmGenericTimerEnableTimer (
VOID VOID
); );
VOID
EFIAPI
ArmGenericTimerReenableTimer (
VOID
);
VOID VOID
EFIAPI EFIAPI
ArmGenericTimerDisableTimer ( ArmGenericTimerDisableTimer (

View File

@ -29,6 +29,14 @@ ArmGenericTimerEnableTimer (
ArmWriteCntpCtl (TimerCtrlReg); ArmWriteCntpCtl (TimerCtrlReg);
} }
VOID
EFIAPI
ArmGenericTimerReenableTimer (
VOID
)
{
}
VOID VOID
EFIAPI EFIAPI
ArmGenericTimerDisableTimer ( ArmGenericTimerDisableTimer (

View File

@ -29,6 +29,14 @@ ArmGenericTimerEnableTimer (
ArmWriteCntvCtl (TimerCtrlReg); ArmWriteCntvCtl (TimerCtrlReg);
} }
VOID
EFIAPI
ArmGenericTimerReenableTimer (
VOID
)
{
}
VOID VOID
EFIAPI EFIAPI
ArmGenericTimerDisableTimer ( ArmGenericTimerDisableTimer (