Compartilhar via


Função StorPortGetUncachedExtension (storport.h)

A rotina StorPortGetUncachedExtension aloca um buffer comum não armazenado em cache a ser compartilhado pela CPU e pelo dispositivo.

Sintaxe

STORPORT_API PVOID StorPortGetUncachedExtension(
  PVOID                           HwDeviceExtension,
  PPORT_CONFIGURATION_INFORMATION ConfigInfo,
  ULONG                           NumberOfBytes
);

Parâmetros

HwDeviceExtension

Um ponteiro para a extensão do dispositivo de hardware. Essa é uma área de armazenamento por HBA que o driver de porta aloca e inicializa em nome do driver de miniport. Os drivers de miniporto geralmente armazenam informações específicas do HBA nessa extensão, como o estado do HBA e os intervalos de acesso mapeados para o HBA. Essa área está disponível para o driver de miniporte imediatamente após o driver de miniporto chamar StorPortInitialize. O driver de porta libera essa memória quando remove o dispositivo.

ConfigInfo

Especifica informações sobre os recursos de DMA do HBA. Os seguintes membros devem ser preenchidos: DmaChannel ou DmaPort, DmaWidth, DmaSpeed, MaximumTransferLength, ScatterGather, Master set como TRUE, NumberOfPhysicalBreaks, AdapterInterfaceType, Dma32BitAddresses, Dma64BitAddresses, SystemIoBusNumber, AutoRequestSense e SrbExtensionSize.

Os membros que não são pertinentes ao HBA, como o DmaChannel para um adaptador de master de barramento EISA, devem ser deixados como estão.

NumberOfBytes

O tamanho necessário, em bytes, da extensão não em cache a ser alocada.

Retornar valor

StorPortGetUncachedExtension retorna um ponteiro de endereço virtual para a extensão não armazenado em cache. Se não puder alocar a memória solicitada, ela retornará NULL. Se a memória tiver sido alocada anteriormente, o ponteiro de endereço virtual para a extensão não armazenada em cache atual será retornado.

Comentários

Os dispositivos master de barramento usam espaço de buffer comum para transferências de DMA.

Requisitos

Requisito Valor
Plataforma de Destino Universal
Cabeçalho storport.h (inclua Storport.h)
Biblioteca Storport.lib

Confira também

ScsiPortGetUncachedExtension