Compartilhar via


NdisMMapIoSpace

Windows Mobile Not SupportedWindows Embedded CE Supported

9/8/2008

Essa função mapeia um barramento especificado-relativo intervalo de físico endereços ou registra em um sistema-espaço virtual intervalo de endereços.

Syntax

NDIS_STATUS NdisMMapIoSpace(
  PVOID* VirtualAddress,
  NDIS_HANDLE MiniportAdapterHandle,
  NDIS_PHYSICAL_ADDRESS PhysicalAddress,
  UINT Length
);

Parameters

  • VirtualAddress
    [out] Ponteiro para uma variável Caller-supplied que é definido para o endereço virtual convertido se for o chamar bem-sucedido.
  • PhysicalAddress
    [no] Especifica o barramento-relativo físico de base endereço do intervalo de memória dispositivo a ser mapeada.
  • Comprimento
    [no] Especifica o número de bytes a ser mapeada.

Return Value

Valor Descrição

NDIS_STATUS_SUCCESS

O mapeamento foi bem-sucedido.

NDIS_STATUS_RESOURCE_CONFLICT

Tentar solicitar o intervalo memória dispositivo no Registro tem falha, possivelmente porque outro driver já foi solicitado o intervalo para seu dispositivo. Essa função registra um erro se isso ocorrer.

NDIS_STATUS_RESOURCES

A memória não pôde ser mapeada ou não foi possível alocar memória virtual suficiente.

NDIS_STATUS_FAILURE

O tipo barramento ou barramento número está fora do intervalo, ou o especificado PhysicalAddress e Comprimento São inválido, possivelmente não dentro de espaço E/S do atual plataforma.

Remarks

Drivers de placas de rede que têm memória placa chamar esta função ou um banco de dispositivo registra apareça no espaço de E/S da hospedar. De exemplo, o driver de uma NIC que usa PI/O chama essa função.

Um bem-sucedido chamar para esta função alega recursos hardware o Registro para NIC. do driver Conseqüentemente, apenas MiniportInitialize funções chamar essa função.

Essa função define a variável no VirtualAddress Para NULL se ele não retornar NDIS_STATUS_SUCCESS.

MiniportInitialize Obtém o PhysicalAddress valor do driver Parâmetros chave Registro ou por chamado um barramento - tipo - específico NDISXXX função configuração. O físico especificado intervalo do endereço deve ficar dentro de espaço E/S do atual plataforma. É um erro de programação para chamar essa função com um físico hospedar memória endereço.

Uma miniporta deve chamar a recíproca NdisMUnmapIoSpace função para versão seu alegação em recursos sistema se MiniportInitialize Subseqüentemente Falha ao inicializar o NIC, se seu NIC for removido da máquina e / ou quando o driver está descarregando.

Requirements

Header ndis.h
Library ndis.dll
Windows Embedded CE Windows CE .NET 4.0 and later

See Also

Reference

MiniportInitialize
NdisMUnmapIoSpace
NdisOpenConfiguration
NdisReadPciSlotInformation