Bagikan melalui


IDE_HW_INTERRUPT fungsi panggilan balik (irb.h)

Rutinitas driver miniport IdeHwInterrupt menangani gangguan dari adaptor bus host (HBA) tempat pengontrol untuk driver miniport terhubung.

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

Sintaks

IDE_HW_INTERRUPT IdeHwInterrupt;

BOOLEAN IdeHwInterrupt(
  [in] PVOID ChannelExtension
)
{...}

Parameter

[in] ChannelExtension

Penunjuk ke ekstensi saluran.

Nilai kembali

AtaHwInterrrupt mengembalikan TRUE jika interupsi dihasilkan oleh salah satu saluran pengontrol. Jika saluran tidak menghasilkan gangguan, rutinitas harus mengembalikan FALSE secepat mungkin.

Keterangan

Rutinitas IdeHwInterrupt menyelesaikan operasi I/O yang digerakkan interupsi.

Jika saluran yang ditunjukkan tidak menghasilkan gangguan, driver miniport harus melakukan panggilan kedua (rekursif) ke rutinitas IdeHwInterrupt untuk menangani gangguan yang ditujukan untuk saluran lain pengontrol.

Jika driver miniport membutuhkan banyak waktu untuk memproses interupsi, driver harus mengikuti langkah-langkah berikut:

  1. Mengabaikan interupsi pada HBA.
  2. Nonaktifkan interupsi pada saluran yang ditunjukkan oleh parameter ChannelExtension .
  3. Minta rutinitas pekerja dengan menggunakan AtaPortRequestWorkerRoutine.
  4. Selesaikan pemrosesan tambahan dalam rutinitas pekerja.
  5. Aktifkan interupsi pada saluran.
Rutinitas port ATA berikut tidak boleh dipanggil dari rutinitas IdeHwInterrupt : Namun, pengemudi miniport dapat meminta rutinitas pekerja dan melakukan panggilan dalam rutinitas pekerja.

Rutinitas pekerja harus menghapus interupsi pada HBA sebelum mengembalikan TRUE.

Persyaratan

Persyaratan Nilai
Target Platform Desktop
Header irb.h (termasuk Irb.h)

Lihat juga

AtaPortCompleteAllActiveRequests

AtaPortDeviceBusy

AtaPortRequestWorkerRoutine