Function drivers allocate and free these resources through the HD audio DDI. In addition, the bus driver manages the HD audio link hardware resources, which include the DMA engines and bus bandwidth.
The bus driver exposes the HD audio DDI that its children-instances of the function drivers that control the audio and modem codecs-can use to program the HD audio controller hardware.
The HD audio bus driver is the only software component that directly accesses the hardware registers of the HD audio bus interface controller.