Routine DDI audio HD
Come illustrato in Differenze tra le versioni DDI audio HD, esistono tre versioni di HD Audio DDI. Queste tre versioni DDI sono definite dalle strutture HDAUDIO_BUS_INTERFACE, HDAUDIO_BUS_INTERFACE_V2 e HDAUDIO_BUS_INTERFACE_BDL.
Le tre versioni DDI sono accessibili solo in modalità kernel.
Ogni versione DDI fornisce l'accesso alle risorse hardware gestite dal controller del bus audio HD. Queste risorse includono codec, motori DMA, larghezza di banda di collegamento, registri posizione collegamento e un registro dell'orologio a parete. Il driver del bus audio HD implementa l'DDI ed espone l'DDI ai suoi figli. Gli elementi figlio sono istanze di driver di funzione in modalità kernel che usano DDI per gestire i codec hardware connessi al controller AUDIO HD.
Per ottenere l'accesso a una versione DDI, un driver di funzione deve eseguire query sul driver del bus audio HD per un oggetto contesto DDI. Per altre informazioni, vedere Ottenere un oggetto DDI HDAUDIO_BUS_INTERFACE, ottenere un oggetto DDI HDAUDIO_BUS_INTERFACE_V2 e ottenere un oggetto DDI HDAUDIO_BUS_INTERFACE_BDL.
Ogni routine nelle tre versioni DDI accetta un puntatore all'oggetto contesto come primo parametro di chiamata.
La struttura HDAUDIO_BUS_INTERFACE definisce un DDI contenente le routine seguenti:
Annullare la registrazioneEventCallback
La struttura HDAUDIO_BUS_INTERFACE_V2 è disponibile in Windows Vista e versioni successive di Windows e definisce un DDI contenente le routine seguenti:
AllocateDmaBufferWithNotification
Annullare la registrazioneEventCallback
La versione HDAUDIO_BUS_INTERFACE di HD Audio DDI è supportata in Windows Vista e versioni successive di Windows. Inoltre, una versione del driver del bus audio HD che supporta questo DDI può essere installata in Windows 2000, Windows XP e Windows Server 2003.
La struttura HDAUDIO_BUS_INTERFACE_BDL definisce un DDI contenente le routine seguenti:
Annullare la registrazioneEventCallback
Una versione del driver del bus audio HD che supporta la versione HDAUDIO_BUS_INTERFACE_BDL di HD Audio DDI può essere installata in Windows 2000, Windows XP e Windows Server 2003. Tuttavia, Windows Vista non fornisce alcun supporto per questa versione DDI.
La maggior parte delle routine nelle due DDI è identica sia nel nome che nell'operazione. Tuttavia, le due routine seguenti, che fanno parte della versione HDAUDIO_BUS_INTERFACE di DDI, non sono incluse nella versione HDAUDIO_BUS_INTERFACE_BDL:
Analogamente, le tre routine seguenti nella versione HDAUDIO_BUS_INTERFACE_BDL dell'DDI non fanno parte della versione di HDAUDIO_BUS_INTERFACE:
Questa sezione descrive le routine DDI seguenti:
SetupDmaEngineWithBdl che funziona con PHDAUDIO_BDL_ISR
Annullare la registrazioneEventCallback
L'elenco precedente contiene tutte le routine visualizzate in o in entrambe le versioni dell'DDI.