freebsd-skq/sys/compat/ndis
Bill Paul 78edd540cf Correct the API for Windows interupt handling a little. The prototype
for a Windows ISR is 'BOOLEAN isrfunc(KINTERRUPT *, void *)' meaning
the ISR get a pointer to the interrupt object and a context pointer,
and returns TRUE if the ISR determines the interrupt was really generated
by the associated device, or FALSE if not.

I had mistakenly used 'void isrfunc(void *)' instead. It happens the
only thing this affects is the internal ndis_intr() ISR in subr_ndis.c,
but it should be fixed just in case we ever need to register a real
Windows ISR vi IoConnectInterrupt().

For NDIS miniports that provide a MiniportISR() method, the 'is_our_intr'
value returned by the method serves as the return value from ndis_isr(),
and 'call_isr' is used to decide whether or not to schedule the interrupt
handler via DPC. For drivers that only supply MiniportEnableInterrupt()
and MiniportDisableInterrupt() methods, call_isr is always TRUE and
is_our_intr is always FALSE.

In the end, there should be no functional changes, except that now
ntoskrnl_intr() can terminate early once it finds the ISR that wants
to service the interrupt.
2005-11-20 01:29:29 +00:00
..
cfg_var.h Start each of the license/copyright comments with /*- 2005-01-05 22:34:37 +00:00
hal_var.h Create new i386 windows/bsd thunking layer, similar to the amd64 thunking 2005-04-11 02:02:35 +00:00
kern_ndis.c Tests with my dual Opteron system have shown that it's possible 2005-11-02 18:01:04 +00:00
kern_windrv.c Tests with my dual Opteron system have shown that it's possible 2005-11-02 18:01:04 +00:00
ndis_var.h Change the definition for EXT_NDIS to EXT_NET_DRV. Since the latest 2005-11-07 16:57:14 +00:00
ntoskrnl_var.h The latest version of the Intel 2200BG/2915ABG driver (9.0.0.3-9) from 2005-11-06 19:38:34 +00:00
pe_var.h Clean up and apply the fix for PR 83477. The calculation for locating 2005-10-26 18:46:27 +00:00
resource_var.h Add support for Windows/x86-64 binaries to Project Evil. 2005-02-16 05:41:18 +00:00
subr_hal.c The latest version of the Intel 2200BG/2915ABG driver (9.0.0.3-9) from 2005-11-06 19:38:34 +00:00
subr_ndis.c Correct the API for Windows interupt handling a little. The prototype 2005-11-20 01:29:29 +00:00
subr_ntoskrnl.c Correct the API for Windows interupt handling a little. The prototype 2005-11-20 01:29:29 +00:00
subr_pe.c Clean up and apply the fix for PR 83477. The calculation for locating 2005-10-26 18:46:27 +00:00
subr_usbd.c This commit makes a bunch of changes, some big, some not so big. 2005-05-05 03:56:09 +00:00
usbd_var.h - Correct one aspect of the driver_object/device_object/IRP framework: 2005-02-24 21:49:14 +00:00
winx32_wrap.S Tests with my dual Opteron system have shown that it's possible 2005-11-02 18:01:04 +00:00
winx64_wrap.S When setting up the new stack for a function in x86_64_wrap(), make 2005-04-16 04:47:15 +00:00