NdisMDeregisterIoPortRange function (ndis.h)
NdisMDeregisterIoPortRange releases a mapping that was set up with NdisMRegisterIoPortRange during driver initialization.
Syntax
void NdisMDeregisterIoPortRange(
[in] NDIS_HANDLE MiniportAdapterHandle,
[in] UINT InitialPort,
[in] UINT NumberOfPorts,
[in] PVOID PortOffset
);
Parameters
[in] MiniportAdapterHandle
Specifies the handle input to MiniportInitializeEx.
[in] InitialPort
Specifies the bus-relative address of the first port in the range of ports.
[in] NumberOfPorts
Specifies the number of ports in the range.
[in] PortOffset
Specifies the mapped base port address returned by NdisMRegisterIoPortRange.
Return value
None
Remarks
The miniport driver must pass the same InitialPort and NumberOfPorts to NdisMDeregisterIoPortRange that were passed when MiniportInitializeEx called NdisMRegisterIoPortRange to get the mapped PortOffset value. That is, a miniport driver cannot call NdisMDeregisterIoPortRange to release a subrange of a mapped port range.
NdisMDeregisterIoPortRange can be called from the MiniportInitializeEx or MiniportHaltEx functions only if MiniportInitializeEx previously made a successful call to NdisMRegisterIoPortRange.
NdisMDeregisterIoPortRange also releases the driver's claim on the I/O port range in the registry.
After it calls NdisMRegisterIoPortRange, the miniport driver can no longer access the NIC's port range with calls to the NdisRaw..PortXxx functions.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported for NDIS 6.0 and NDIS 5.1 drivers (see NdisMDeregisterIoPortRange (NDIS 5.1)) in Windows Vista. Supported for NDIS 5.1 drivers (see NdisMDeregisterIoPortRange (NDIS 5.1)) in Windows XP. |
Target Platform | Universal |
Header | ndis.h (include Ndis.h) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |
DDI compliance rules | Irql_Miniport_Driver_Function(ndis) |