freebsd-dev/sys/compat/ndis
Bill Paul 7f3cc43211 Get rid of the timer tracking and reaping code in NdisMInitializeTimer()
and ndis_halt_nic(). It's been disabled for some time anyway, and
it turns out there's a possible deadlock in NdisMInitializeTimer() when
acquiring the miniport block lock to modify the timer list: it's
possible for a driver to call NdisMInitializeTimer() when the miniport
block lock has already been acquired by an earlier piece of code. You
can't acquire the same spinlock twice, so this can deadlock.

Also, implement MmMapIoSpace() and MmUnmapIoSpace(), and make
NdisMMapIoSpace() and NdisMUnmapIoSpace() use them. There are some
drivers that want MmMapIoSpace() and MmUnmapIoSpace() so that they can
map arbitrary register spaces not directly associated with their
device resources. For example, there's an Atheros driver for
a miniPci card (0x168C:0x1014) on the IBM Thinkpad x40 that wants
to map some I/O spaces at 0xF00000 and 0xE00000 which are held by
the acpi0 device. I don't know what it wants these ranges for,
but if it can't map and access them, the MiniportInitialize() method
fails.
2005-10-26 06:52:57 +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 Get rid of the timer tracking and reaping code in NdisMInitializeTimer() 2005-10-26 06:52:57 +00:00
kern_windrv.c This commit makes a big round of updates and fixes many, many things. 2005-10-10 16:46:39 +00:00
ndis_var.h Another round of cleanups and fixes: 2005-10-18 19:52:15 +00:00
ntoskrnl_var.h Get rid of the timer tracking and reaping code in NdisMInitializeTimer() 2005-10-26 06:52:57 +00:00
pe_var.h Create new i386 windows/bsd thunking layer, similar to the amd64 thunking 2005-04-11 02:02:35 +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 Correct the macro definition for KeRaiseIrql(). The official API 2005-10-21 05:23:20 +00:00
subr_ndis.c Get rid of the timer tracking and reaping code in NdisMInitializeTimer() 2005-10-26 06:52:57 +00:00
subr_ntoskrnl.c Get rid of the timer tracking and reaping code in NdisMInitializeTimer() 2005-10-26 06:52:57 +00:00
subr_pe.c Couple of lessons learned during USB driver testing: 2005-02-24 17:58: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 This commit makes a big round of updates and fixes many, many things. 2005-10-10 16:46:39 +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