struttura IDE_CONTROLLER_CONFIGURATION (irb.h)
La struttura IDE_CONTROLLER_CONFIGURATION viene usata per passare le informazioni di configurazione del controller tra il driver di porta e il driver miniport.
Sintassi
typedef struct _IDE_CONTROLLER_CONFIGURATION {
USHORT Version;
UCHAR NumberOfChannels;
IDE_OPERATION_MODE ControllerMode;
UCHAR NumberOfPhysicalBreaks;
ULONG MaximumTransferLength;
BOOLEAN Reserved;
BOOLEAN NativeModeEnabled;
BOOLEAN Dma64BitAddress;
BOOLEAN BusMaster;
IDE_BUS_TYPE AtaBusType;
PIDE_MINIPORT_RESOURCES ControllerResources;
} IDE_CONTROLLER_CONFIGURATION, *PIDE_CONTROLLER_CONFIGURATION;
Members
Version
Il driver della porta imposta questo campo per indicare la versione del driver di porta. Il driver della porta imposta la versione su sizeof(IDE_CONTROLLER_CONFIGURATION). Il driver miniport deve verificare che la versione sia maggiore o uguale a quella in uso.
NumberOfChannels
Specifica il numero di canali supportati dall'HBA. Si noti che questo indica il numero totale di canali, inclusi quelli disabilitati.
ControllerMode
Il driver della porta imposta questo campo per informare il miniport ATA in quale modalità è in esecuzione. Esistono due possibili modalità:
Mode | Descrizione |
---|---|
IdeModeNormal | Questa è la modalità completa standard in cui il miniport ATA può funzionare normalmente. |
IdeModeDump | Questa è la modalità di memoria limitata che un miniport ATA opera durante l'ibernazione o crashdump. Le routine di callback e le routine di accesso al Registro di sistema non possono essere usate in questa modalità. |
NumberOfPhysicalBreaks
Specifica il numero massimo di interruzioni tra intervalli di indirizzi che un buffer di dati può avere se l'HBA supporta la raccolta/dispersione. In altre parole, il numero di elenchi a dispersione/raccolta meno uno. Per impostazione predefinita, il valore di questo membro è IDE_UNINITIALIZED_VALUE, che indica che l'HBA può supportare un numero illimitato di discontità fisiche. Se il driver della porta imposta un valore per questo membro, il driver miniport può modificare il valore inferiore ma non superiore. Se questo membro è IDE_UNINITIALIZED_VALUE, il driver miniport deve reimpostare questo membro in base alla capacità di dispersione/raccolta dell'HBA.
MaximumTransferLength
Specifica il numero massimo di byte che l'HBA può trasferire in una singola operazione di trasferimento. Per impostazione predefinita, il valore di questo membro è IDE_UNINITIALIZED_VALUE, che indica una dimensione massima di trasferimento illimitata.
Reserved
Riservato per utilizzi futuri. Il driver miniport non deve utilizzare questo campo.
NativeModeEnabled
Il driver miniport potrebbe impostare questo membro su TRUE per indicare che il controller deve essere gestito in modalità nativa.
Dma64BitAddress
Il driver miniport potrebbe impostare questo membro su TRUE per indicare il supporto per l'operazione DMA a 64 bit.
BusMaster
Il driver miniport potrebbe impostare questo membro su TRUE per indicare il supporto del mastering del bus.
AtaBusType
Indica se si tratta di un controller SATA o PATA.
ControllerResources
Fornisce le risorse hardware per il controller ATA.
Requisiti
Requisito | Valore |
---|---|
Intestazione | irb.h (include Irb.h) |