struktur IDE_CONTROLLER_CONFIGURATION (irb.h)

Struktur IDE_CONTROLLER_CONFIGURATION digunakan untuk meneruskan informasi konfigurasi pengontrol antara driver port dan driver miniport.

Catatan Driver port ATA dan model driver miniport ATA dapat diubah atau tidak tersedia di masa depan. Sebagai gantinya, sebaiknya gunakan driver Storport dan model driver miniport Storport .
 

Sintaks

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;

Anggota

Version

Driver port mengatur bidang ini untuk menunjukkan versi driver port. Driver port mengatur versi ke sizeof(IDE_CONTROLLER_CONFIGURATION). Driver miniport harus memverifikasi bahwa versi lebih besar dari atau sama dengan yang digunakannya.

NumberOfChannels

Menentukan jumlah saluran yang didukung oleh HBA. Perhatikan bahwa ini menunjukkan jumlah total saluran termasuk yang dinonaktifkan.

ControllerMode

Driver port mengatur bidang ini untuk menginformasikan miniport ATA mode mana yang dijalankannya. Ada dua mode yang mungkin:

Mode Deskripsi
IdeModeNormal Ini adalah mode kemampuan penuh standar di mana miniport ATA dapat beroperasi secara normal.
IdeModeDump Ini adalah mode tanpa memori terbatas yang dioperasikan oleh miniport ATA selama hibernasi atau crashdump. Rutinitas Panggilan Balik dan Rutinitas Akses Registri tidak dapat digunakan ketika dalam mode ini.

NumberOfPhysicalBreaks

Menentukan jumlah maksimum jeda antara rentang alamat yang dapat dimiliki buffer data jika HBA mendukung sebar/kumpulkan. Dengan kata lain, jumlah daftar sebar/kumpulkan dikurangi satu. Secara default, nilai anggota ini adalah IDE_UNINITIALIZED_VALUE, yang menunjukkan HBA dapat mendukung jumlah diskontiguitas fisik yang tidak terbatas. Jika driver port menetapkan nilai untuk anggota ini, driver miniport dapat menyesuaikan nilai lebih rendah tetapi tidak lebih tinggi. Jika anggota ini IDE_UNINITIALIZED_VALUE, driver miniport harus mengatur ulang anggota ini sesuai dengan kapasitas HBA yang tersebar/mengumpulkan.

MaximumTransferLength

Menentukan jumlah maksimum byte yang dapat ditransfer HBA dalam satu operasi transfer. Secara default, nilai anggota ini adalah IDE_UNINITIALIZED_VALUE, yang menunjukkan ukuran transfer maksimum tak terbatas.

Reserved

Disiapkan untuk penggunaan masa mendatang. Driver miniport tidak boleh menggunakan bidang ini.

NativeModeEnabled

Driver miniport dapat mengatur anggota ini ke TRUE untuk menunjukkan bahwa pengontrol akan dioperasikan dalam mode Asli.

Dma64BitAddress

Driver miniport dapat mengatur anggota ini ke TRUE untuk menunjukkan dukungan untuk operasi DMA 64 bit.

BusMaster

Driver miniport dapat mengatur anggota ini ke TRUE untuk menunjukkan dukungan penguasaan bus.

AtaBusType

Menunjukkan apakah itu SATA atau pengontrol PATA.

ControllerResources

Menyediakan sumber daya perangkat keras untuk pengontrol ATA.

Persyaratan

Persyaratan Nilai
Header irb.h (termasuk Irb.h)