71 ULONG PreciseIncrement;
89 RegisterA |= ClockRate;
138 DPRINT1(
"Clock initialized\n");
152 TrapFrame->ErrorCode = 0xc10c4;
203 TrapFrame->ErrorCode = 0xc10c4;
#define APIC_CLOCK_VECTOR
VOID NTAPI KeSetTimeIncrement(IN ULONG MaxIncrement, IN ULONG MinIncrement)
IN OUT PLONG IN OUT PLONG Addend IN OUT PLONG IN LONG Increment
BOOLEAN NTAPI HalBeginSystemInterrupt(IN KIRQL Irql, IN ULONG Vector, OUT PKIRQL OldIrql)
BOOLEAN NTAPI HalEnableSystemInterrupt(IN ULONG Vector, IN KIRQL Irql, IN KINTERRUPT_MODE InterruptMode)
VOID FASTCALL KeUpdateSystemTime(IN PKTRAP_FRAME TrapFrame, IN ULONG Increment, IN KIRQL OldIrql)
VOID NTAPI HalpReleaseCmosSpinLock(VOID)
VOID NTAPI HalpAcquireCmosSpinLock(VOID)
VOID NTAPI HalpWriteCmos(_In_ UCHAR Reg, _In_ UCHAR Value)
UCHAR NTAPI HalpReadCmos(_In_ UCHAR Reg)
VOID NTAPI KeUpdateRunTime(_In_ PKTRAP_FRAME TrapFrame, _In_ KIRQL Irql)
void __cdecl _disable(void)
__INTRIN_INLINE void __writeeflags(uintptr_t Value)
__INTRIN_INLINE uintptr_t __readeflags(void)
#define KiEndInterrupt(x, y)
DECLSPEC_NORETURN VOID FASTCALL KiEoiHelper(IN PKTRAP_FRAME TrapFrame)
VOID FASTCALL HalpClockInterruptHandler(IN PKTRAP_FRAME TrapFrame)
static UCHAR HalpCurrentClockRate
ULONG NTAPI HalSetTimeIncrement(IN ULONG Increment)
static BOOLEAN HalpSetClockRate
static const UCHAR RtcMinimumClockRate
VOID FASTCALL HalpClockIpiHandler(IN PKTRAP_FRAME TrapFrame)
static ULONG HalpCurrentFractionalIncrement
static const UCHAR RtcMaximumClockRate
static UCHAR HalpNextClockRate
static ULONG HalpCurrentTimeIncrement
static ULONG HalpRunningFraction
VOID RtcSetClockRate(UCHAR ClockRate)
FORCEINLINE ULONG RtcClockRateToPreciseIncrement(UCHAR Rate)
Converts the CMOS RTC rate into the time increment in 0.1ns intervals.
VOID NTAPI HalpInitializeClock(VOID)
static ULONG HalpMinimumTimeIncrement
static ULONG HalpMaximumTimeIncrement
static LARGE_INTEGER Frequency
FORCEINLINE VOID KiEnterInterruptTrap(IN PKTRAP_FRAME TrapFrame)
VOID FASTCALL HalpBroadcastClockIpi(_In_ UCHAR Vector)