IDE_HW_CONTROL fungsi panggilan balik (irb.h)
Driver miniport IdeHwControl rutin memberi tahu driver miniport tentang Plug and Play (PnP) dan peristiwa daya.
Sintaks
IDE_HW_CONTROL IdeHwControl;
BOOLEAN IdeHwControl(
[in] PVOID ChannelExtension,
[in] IDE_CONTROL_ACTION ControlAction,
[in, out] PVOID Parameters
)
{...}
Parameter
[in] ChannelExtension
Penunjuk ke ekstensi saluran.
[in] ControlAction
Berisi nilai enumerator jenis IDE_CONTROL_ACTION yang menunjukkan tindakan kontrol yang akan dilakukan.
[in, out] Parameters
Penunjuk ke buffer yang berisi parameter yang terkait dengan tindakan kontrol. Parameter ini dapat memiliki salah satu nilai dalam tabel berikut.
Tindakan kontrol | Parameter | Deskripsi |
---|---|---|
IdeStart | Parameter menunjuk ke struktur jenis IDE_CHANNEL_CONFIGURATION. | Menunjukkan bahwa driver port sedang memulai saluran. |
IdeVendorDefined | Parameter menunjuk ke struktur jenis IDE_VENDOR_DEFINED_POWER_INFO. | Menunjukkan bahwa ada peristiwa daya yang ditentukan vendor yang akan datang. |
Nilai kembali
IdeHwControl mengembalikan TRUE jika operasi berhasil. Jika tidak, ia mengembalikan FALSE.
Keterangan
Driver port memastikan bahwa tidak ada I/O yang luar biasa pada saluran sebelum memanggil rutinitas ini. Driver miniport dapat memiliki metode kebijakan daya sendiri ketika sistem memasuki status daya yang berbeda. Untuk mencapai hal ini, driver miniport perlu melakukan hal berikut:
- Tambahkan skema pengaturan kebijakan daya ke dalam file INF driver miniport. GUID diperlukan untuk menyajikan kebijakan daya yang ditentukan driver miniport. Untuk informasi selengkapnya tentang direktif pengaturan daya, lihat Petunjuk AddPowerSetting INF. Informasi lebih lanjut tentang GUID dapat ditemukan di pengaturan Disk.
- Ketika driver miniport rutin IdeHwControl dipanggil dengan tindakan kontrol IdeStart:
- Periksa bidang SupportedAdvances.AdvancedChannelConfigurationSupported di struktur ChannelConfiguration.
- Periksa bidang AdvancedChannelConfiguration->Present.VendorDefinedPower di struktur ChannelConfiguration.
- Jika nilai dua bidang yang tercantum sebelumnya adalah TRUE, versi driver port ATA ini mendukung manajemen daya yang ditentukan vendor.
- Jika manajemen daya yang ditentukan vendor didukung oleh driver port ATA, driver miniport dapat mendaftar untuk penanganan manajemen daya khusus dengan mengatur bidang AdvancedChannelConfiguration->VendorDefinedPower.ValidGuids dan AdvancedChannelConfiguration->VendorDefinedPower.Guid[] (yang terakhir harus menjadi GUID kebijakan daya dalam file INF driver miniport).
- Setelah manajemen daya yang ditentukan vendor terdaftar, driver miniport akan dapat menerima panggilan ke rutinitas IdeHwControl-nya dengan tindakan kontrol IdeVendorDefined ketika skema daya sistem berubah.
- Sementara driver miniport memproses rutinitas IdeHwControl dengan tindakan kontrol IdeVendorDefined, itu harus melakukan hal berikut:
- Bandingkan bidang SettingGuid dari bidang parameter struktur IDE_VENDOR_DEFINED_POWER_INFO dengan GUID yang didaftarkan driver miniport untuk memastikan bahwa panggilan adalah untuk saluran ini. Jika GUID tidak cocok, driver miniport harus menyelesaikan panggilan dan tidak mengambil tindakan.
- Dapatkan bidang Nilai dari bidang parameter struktur IDE_VENDOR_DEFINED_POWER_INFO dan lakukan tindakan manajemen daya khusus driver miniport yang sesuai.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Desktop |
Header | irb.h (termasuk Irb.h) |