/* FUNCTIONS *****************************************************************/
+static KDEFERRED_ROUTINE i8042MouDpcRoutine;
+static KDEFERRED_ROUTINE i8042DpcRoutineMouseTimeout;
+
/*
* These functions are callbacks for filter driver custom interrupt
* service routines.
UNREFERENCED_PARAMETER(SystemArgument1);
UNREFERENCED_PARAMETER(SystemArgument2);
- DeviceExtension = (PI8042_MOUSE_EXTENSION)DeferredContext;
+ __analysis_assume(DeferredContext != NULL);
+ DeviceExtension = DeferredContext;
PortDeviceExtension = DeviceExtension->Common.PortDeviceExtension;
switch (DeviceExtension->MouseTimeoutState)
UNREFERENCED_PARAMETER(SystemArgument1);
UNREFERENCED_PARAMETER(SystemArgument2);
- DeviceExtension = (PI8042_MOUSE_EXTENSION)DeferredContext;
+ __analysis_assume(DeferredContext != NULL);
+ DeviceExtension = DeferredContext;
PortDeviceExtension = DeviceExtension->Common.PortDeviceExtension;
Irql = KeAcquireInterruptSpinLock(PortDeviceExtension->HighestDIRQLInterrupt);
UNREFERENCED_PARAMETER(Interrupt);
- DeviceExtension = (PI8042_MOUSE_EXTENSION)Context;
+ __analysis_assume(Context != NULL);
+ DeviceExtension = Context;
PortDeviceExtension = DeviceExtension->Common.PortDeviceExtension;
Counter = PortDeviceExtension->Settings.PollStatusIterations;