estrutura SDBUS_INTERFACE_STANDARD (ntddsd.h)

A estrutura SDBUS_INTERFACE_STANDARD contém ponteiros para as rotinas de método de um SD (Secure Digital) cartão interface de barramento.

Sintaxe

typedef struct _SDBUS_INTERFACE_STANDARD {
  USHORT                              Size;
  USHORT                              Version;
  PVOID                               Context;
  PINTERFACE_REFERENCE                InterfaceReference;
  PINTERFACE_DEREFERENCE              InterfaceDereference;
  PSDBUS_INITIALIZE_INTERFACE_ROUTINE InitializeInterface;
  PSDBUS_ACKNOWLEDGE_INT_ROUTINE      AcknowledgeInterrupt;
} SDBUS_INTERFACE_STANDARD, *PSDBUS_INTERFACE_STANDARD;

Membros

Size

Indica o tamanho, em bytes, dessa estrutura. O chamador de SdBusOpenInterface deve definir esse membro como sizeof(SDBUS_INTERFACE_STANDARD).

Version

Indica o número de versão da interface. O chamador de SdBusOpenInterface deve definir esse membro como SDBUS_INTERFACE_VERSION.

Context

Ponteiro para informações de contexto que o driver de barramento fornece sempre que um driver de dispositivo abre uma interface com SdBusOpenInterface. Essas informações estão disponíveis para o chamador na saída após a chamada para SdBusOpenInterface. O chamador deve passar essas informações como um parâmetro para outras rotinas de interface.

InterfaceReference

Ponteiro para uma rotina fornecida pelo driver de barramento do tipo PINTERFACE_REFERENCE que incrementa a contagem de referência da interface que está disponível para o chamador da rotina SdBusOpenInterface quando essa rotina retorna. SdBusOpenInterface incrementa automaticamente a contagem de interfaces para uma, portanto, na maioria dos casos, é necessário que o chamador use essa rotina.

Essa rotina segue o formato padrão das rotinas de referência da interface de barramento. Para obter uma descrição do caso geral, consulte INTERFACE.

InterfaceDereference

Ponteiro para uma rotina fornecida pelo driver de barramento do tipo PINTERFACE_DEREFERENCE que diminui a contagem de referência de interface. Se o chamador diminuir a contagem de referência para zero, o driver de barramento fechará a interface.

Essa rotina segue o formato padrão das rotinas de desreferência da interface de barramento. Para obter uma descrição do caso geral, consulte INTERFACE.

Os drivers de dispositivo devem usar essa rotina para desreferenciar a interface nas seguintes condições:

  • O driver do dispositivo recebe um IRP de remoção de consulta.
  • O driver do dispositivo recebe um IRP de remoção surpresa.
  • O driver do dispositivo recebe um IRP de remoção, sem primeiro receber uma remoção de consulta ou um IRP de remoção surpresa.

Em todos esses casos, o driver do dispositivo deve desreferenciar a interface antes de passar o IRP para o motorista do ônibus.

InitializeInterface

Ponteiro para uma rotina fornecida pelo driver de barramento do tipo PSDBUS_INITIALIZE_INTERFACE_ROUTINE que define parâmetros de inicialização na interface.

AcknowledgeInterrupt

Ponteiro para uma rotina fornecida pelo motorista de ônibus do tipo PSDBUS_ACKNOWLEDGE_INT_ROUTINE que o motorista do dispositivo SD usa para notificar o motorista do ônibus de que terminou de processar uma interrupção.

Comentários

Os drivers de dispositivo SD devem obter esse conjunto de rotinas de método para se comunicar com o driver de barramento SD. Os drivers chamam a rotina da biblioteca SdBusOpenInterface para abrir uma interface.

Requisitos

Requisito Valor
Cabeçalho ntddsd.h

Confira também

INTERFACE

PSDBUS_ACKNOWLEDGE_INT_ROUTINE

SDBUS_INTERFACE_STANDARD

SdBusOpenInterface