OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
HdaController.h File Reference
#include "AudioDxe.h"
#include <IndustryStandard/HdaRegisters.h>
#include <Library/BaseOverflowLib.h>
#include <Protocol/PciIo.h>
#include <IndustryStandard/Pci.h>

Go to the source code of this file.

Data Structures

struct  HDA_BDL_ENTRY
 
struct  HDA_DMA_POS_ENTRY
 
struct  HDA_STREAM
 
struct  HDA_RING_BUFFER
 
struct  HDA_IO_CHILD
 
struct  _HDA_CONTROLLER_DEV
 
struct  _HDA_IO_PRIVATE_DATA
 
struct  _HDA_CONTROLLER_INFO_PRIVATE_DATA
 

Macros

#define HDA_CONTROLLER_PRIVATE_DATA_SIGNATURE   SIGNATURE_32('H','d','a','C')
 
#define PCI_HDA_BAR   0
 
#define HDA_VERSION_MIN_MAJOR   0x1
 
#define HDA_VERSION_MIN_MINOR   0x0
 
#define HDA_MAX_CODECS   15
 
#define PCI_HDA_TCSEL_OFFSET   0x44
 
#define PCI_HDA_TCSEL_TC0_MASK   ~(BIT0 | BIT1 | BIT2)
 
#define PCI_HDA_DEVC_OFFSET   0x78
 
#define PCI_HDA_DEVC_NOSNOOPEN   BIT11
 
#define HDA_CORB_ENTRY_SIZE   sizeof(UINT32)
 
#define HDA_RIRB_ENTRY_SIZE   sizeof(UINT64)
 
#define HDA_CORB_VERB(Cad, Nid, Verb)
 
#define HDA_RIRB_RESP(Response)
 
#define HDA_RIRB_CAD(Response)
 
#define HDA_RIRB_UNSOL(Response)
 
#define HDA_BDL_ENTRY_IOC   BIT0
 
#define HDA_BDL_ENTRY_COUNT   2
 
#define HDA_BDL_SIZE   (sizeof(HDA_BDL_ENTRY) * HDA_BDL_ENTRY_COUNT)
 
#define HDA_BDL_ENTRY_HALF   ((HDA_BDL_ENTRY_COUNT / 2) - 1)
 
#define HDA_BDL_ENTRY_LAST   (HDA_BDL_ENTRY_COUNT - 1)
 
#define HDA_STREAM_BUF_SIZE   BASE_512KB
 
#define HDA_STREAM_BUF_SIZE_HALF   (HDA_STREAM_BUF_SIZE / 2)
 
#define HDA_BDL_BLOCKSIZE   (HDA_STREAM_BUF_SIZE / HDA_BDL_ENTRY_COUNT)
 
#define HDA_STREAM_POLL_TIME   (EFI_TIMER_PERIOD_MILLISECONDS(1))
 
#define HDA_STREAM_BUFFER_PADDING   0x200
 
#define HDA_STREAM_DMA_CHECK_THRESH   5
 
#define HDA_STREAM_ID_MIN   1
 
#define HDA_STREAM_ID_MAX   15
 
#define HDA_CONTROLLER_QUIRK_QEMU_1   BIT0
 
#define HDA_CONTROLLER_QUIRK_QEMU_2   BIT1
 
#define HDA_CONTROLLER_QUIRK_CORB_NO_POLL_RESET   BIT2
 
#define HDA_CONTROLLER_QUIRK_INITIAL
 
#define HDA_IO_PRIVATE_DATA_FROM_THIS(This)
 
#define HDA_CONTROLLER_INFO_PRIVATE_DATA_FROM_THIS(This)
 

Typedefs

typedef struct _HDA_CONTROLLER_DEV HDA_CONTROLLER_DEV
 
typedef struct _HDA_IO_PRIVATE_DATA HDA_IO_PRIVATE_DATA
 
typedef struct _HDA_CONTROLLER_INFO_PRIVATE_DATA HDA_CONTROLLER_INFO_PRIVATE_DATA
 

Enumerations

enum  HDA_RING_BUFFER_TYPE { HDA_RING_BUFFER_TYPE_CORB , HDA_RING_BUFFER_TYPE_RIRB }
 

Functions

EFI_STATUS EFIAPI HdaControllerHdaIoGetAddress (IN EFI_HDA_IO_PROTOCOL *This, OUT UINT8 *CodecAddress)
 
EFI_STATUS EFIAPI HdaControllerHdaIoSendCommand (IN EFI_HDA_IO_PROTOCOL *This, IN UINT8 Node, IN UINT32 Verb, OUT UINT32 *Response)
 
EFI_STATUS EFIAPI HdaControllerHdaIoSendCommands (IN EFI_HDA_IO_PROTOCOL *This, IN UINT8 Node, IN EFI_HDA_IO_VERB_LIST *Verbs)
 
EFI_STATUS EFIAPI HdaControllerHdaIoSetupStream (IN EFI_HDA_IO_PROTOCOL *This, IN EFI_HDA_IO_PROTOCOL_TYPE Type, IN UINT16 Format, OUT UINT8 *StreamId)
 
EFI_STATUS EFIAPI HdaControllerHdaIoCloseStream (IN EFI_HDA_IO_PROTOCOL *This, IN EFI_HDA_IO_PROTOCOL_TYPE Type)
 
EFI_STATUS EFIAPI HdaControllerHdaIoGetStream (IN EFI_HDA_IO_PROTOCOL *This, IN EFI_HDA_IO_PROTOCOL_TYPE Type, OUT BOOLEAN *State)
 
EFI_STATUS EFIAPI HdaControllerHdaIoStartStream (IN EFI_HDA_IO_PROTOCOL *This, IN EFI_HDA_IO_PROTOCOL_TYPE Type, IN VOID *Buffer, IN UINTN BufferLength, IN UINTN BufferPosition OPTIONAL, IN EFI_HDA_IO_STREAM_CALLBACK Callback OPTIONAL, IN VOID *Context1 OPTIONAL, IN VOID *Context2 OPTIONAL, IN VOID *Context3 OPTIONAL)
 
EFI_STATUS EFIAPI HdaControllerHdaIoStopStream (IN EFI_HDA_IO_PROTOCOL *This, IN EFI_HDA_IO_PROTOCOL_TYPE Type)
 
EFI_STATUS EFIAPI HdaControllerInfoGetName (IN EFI_HDA_CONTROLLER_INFO_PROTOCOL *This, OUT CONST CHAR16 **Name)
 
EFI_STATUS EFIAPI HdaControllerInfoGetVendorId (IN EFI_HDA_CONTROLLER_INFO_PROTOCOL *This, OUT UINT32 *VendorId)
 
VOID EFIAPI HdaControllerStreamOutputPollTimerHandler (IN EFI_EVENT Event, IN VOID *Context)
 
EFI_STATUS EFIAPI HdaControllerReset (IN HDA_CONTROLLER_DEV *HdaControllerDev, IN BOOLEAN Restart)
 
EFI_STATUS EFIAPI HdaControllerSendCommands (IN HDA_CONTROLLER_DEV *HdaDev, IN UINT8 CodecAddress, IN UINT8 Node, IN EFI_HDA_IO_VERB_LIST *Verbs)
 
EFI_STATUS EFIAPI HdaControllerDriverBindingSupported (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL)
 
EFI_STATUS EFIAPI HdaControllerDriverBindingStart (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL)
 
EFI_STATUS EFIAPI HdaControllerDriverBindingStop (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer OPTIONAL)
 
EFI_STATUS HdaControllerInitRingBuffer (IN HDA_RING_BUFFER *HdaRingBuffer, IN HDA_CONTROLLER_DEV *HdaDev, IN HDA_RING_BUFFER_TYPE Type)
 
VOID HdaControllerCleanupRingBuffer (IN HDA_RING_BUFFER *HdaRingBuffer, IN HDA_RING_BUFFER_TYPE Type)
 
EFI_STATUS HdaControllerSetRingBufferState (IN HDA_RING_BUFFER *HdaRingBuffer, IN BOOLEAN Enable, IN HDA_RING_BUFFER_TYPE Type)
 
EFI_STATUS HdaControllerResetRingBuffer (IN HDA_RING_BUFFER *HdaRingBuffer)
 
EFI_STATUS HdaControllerInitStreams (IN HDA_CONTROLLER_DEV *HdaDev)
 
BOOLEAN HdaControllerResetStream (IN HDA_STREAM *HdaStream)
 
VOID HdaControllerCleanupStreams (IN HDA_CONTROLLER_DEV *HdaDev)
 
BOOLEAN HdaControllerGetStreamState (IN HDA_STREAM *HdaStream, OUT BOOLEAN *Run)
 
BOOLEAN HdaControllerSetStreamState (IN HDA_STREAM *HdaStream, IN BOOLEAN Run)
 
BOOLEAN HdaControllerGetStreamLinkPos (IN HDA_STREAM *HdaStream, OUT UINT32 *Position)
 
BOOLEAN HdaControllerGetStreamId (IN HDA_STREAM *HdaStream, OUT UINT8 *Index)
 
BOOLEAN HdaControllerSetStreamId (IN HDA_STREAM *HdaStream, IN UINT8 Index)
 
VOID HdaControllerStreamIdle (IN HDA_STREAM *HdaStream)
 
VOID HdaControllerStreamAbort (IN HDA_STREAM *HdaStream)
 

Variables

BOOLEAN gRestoreNoSnoop
 
EFI_DEVICE_PATH_PROTOCOL * gForcedControllerDevicePath
 

Macro Definition Documentation

◆ HDA_BDL_BLOCKSIZE

#define HDA_BDL_BLOCKSIZE   (HDA_STREAM_BUF_SIZE / HDA_BDL_ENTRY_COUNT)

Definition at line 102 of file HdaController.h.

◆ HDA_BDL_ENTRY_COUNT

#define HDA_BDL_ENTRY_COUNT   2

Definition at line 94 of file HdaController.h.

◆ HDA_BDL_ENTRY_HALF

#define HDA_BDL_ENTRY_HALF   ((HDA_BDL_ENTRY_COUNT / 2) - 1)

Definition at line 96 of file HdaController.h.

◆ HDA_BDL_ENTRY_IOC

#define HDA_BDL_ENTRY_IOC   BIT0

Definition at line 93 of file HdaController.h.

◆ HDA_BDL_ENTRY_LAST

#define HDA_BDL_ENTRY_LAST   (HDA_BDL_ENTRY_COUNT - 1)

Definition at line 97 of file HdaController.h.

◆ HDA_BDL_SIZE

#define HDA_BDL_SIZE   (sizeof(HDA_BDL_ENTRY) * HDA_BDL_ENTRY_COUNT)

Definition at line 95 of file HdaController.h.

◆ HDA_CONTROLLER_INFO_PRIVATE_DATA_FROM_THIS

#define HDA_CONTROLLER_INFO_PRIVATE_DATA_FROM_THIS ( This)
Value:

Definition at line 395 of file HdaController.h.

◆ HDA_CONTROLLER_PRIVATE_DATA_SIGNATURE

#define HDA_CONTROLLER_PRIVATE_DATA_SIGNATURE   SIGNATURE_32('H','d','a','C')

Definition at line 47 of file HdaController.h.

◆ HDA_CONTROLLER_QUIRK_CORB_NO_POLL_RESET

#define HDA_CONTROLLER_QUIRK_CORB_NO_POLL_RESET   BIT2

Definition at line 304 of file HdaController.h.

◆ HDA_CONTROLLER_QUIRK_INITIAL

#define HDA_CONTROLLER_QUIRK_INITIAL
Value:
( \
)
#define HDA_CONTROLLER_QUIRK_QEMU_1
#define HDA_CONTROLLER_QUIRK_CORB_NO_POLL_RESET

Definition at line 306 of file HdaController.h.

◆ HDA_CONTROLLER_QUIRK_QEMU_1

#define HDA_CONTROLLER_QUIRK_QEMU_1   BIT0

Definition at line 289 of file HdaController.h.

◆ HDA_CONTROLLER_QUIRK_QEMU_2

#define HDA_CONTROLLER_QUIRK_QEMU_2   BIT1

Definition at line 295 of file HdaController.h.

◆ HDA_CORB_ENTRY_SIZE

#define HDA_CORB_ENTRY_SIZE   sizeof(UINT32)

Definition at line 70 of file HdaController.h.

◆ HDA_CORB_VERB

#define HDA_CORB_VERB ( Cad,
Nid,
Verb )
Value:
((((UINT32)Cad) << 28) | (((UINT32)Nid) << 20) | (Verb & 0xFFFFF))

Definition at line 74 of file HdaController.h.

◆ HDA_IO_PRIVATE_DATA_FROM_THIS

#define HDA_IO_PRIVATE_DATA_FROM_THIS ( This)

◆ HDA_MAX_CODECS

#define HDA_MAX_CODECS   15

Definition at line 59 of file HdaController.h.

◆ HDA_RIRB_CAD

#define HDA_RIRB_CAD ( Response)
Value:
((Response >> 32) & 0xF)

Definition at line 76 of file HdaController.h.

◆ HDA_RIRB_ENTRY_SIZE

#define HDA_RIRB_ENTRY_SIZE   sizeof(UINT64)

Definition at line 71 of file HdaController.h.

◆ HDA_RIRB_RESP

#define HDA_RIRB_RESP ( Response)
Value:
((UINT32)Response)

Definition at line 75 of file HdaController.h.

◆ HDA_RIRB_UNSOL

#define HDA_RIRB_UNSOL ( Response)
Value:
((Response >> 36) & 0x1)

Definition at line 77 of file HdaController.h.

◆ HDA_STREAM_BUF_SIZE

#define HDA_STREAM_BUF_SIZE   BASE_512KB

Definition at line 100 of file HdaController.h.

◆ HDA_STREAM_BUF_SIZE_HALF

#define HDA_STREAM_BUF_SIZE_HALF   (HDA_STREAM_BUF_SIZE / 2)

Definition at line 101 of file HdaController.h.

◆ HDA_STREAM_BUFFER_PADDING

#define HDA_STREAM_BUFFER_PADDING   0x200

Definition at line 104 of file HdaController.h.

◆ HDA_STREAM_DMA_CHECK_THRESH

#define HDA_STREAM_DMA_CHECK_THRESH   5

Definition at line 106 of file HdaController.h.

◆ HDA_STREAM_ID_MAX

#define HDA_STREAM_ID_MAX   15

Definition at line 125 of file HdaController.h.

◆ HDA_STREAM_ID_MIN

#define HDA_STREAM_ID_MIN   1

Definition at line 124 of file HdaController.h.

◆ HDA_STREAM_POLL_TIME

#define HDA_STREAM_POLL_TIME   (EFI_TIMER_PERIOD_MILLISECONDS(1))

Definition at line 103 of file HdaController.h.

◆ HDA_VERSION_MIN_MAJOR

#define HDA_VERSION_MIN_MAJOR   0x1

Definition at line 57 of file HdaController.h.

◆ HDA_VERSION_MIN_MINOR

#define HDA_VERSION_MIN_MINOR   0x0

Definition at line 58 of file HdaController.h.

◆ PCI_HDA_BAR

#define PCI_HDA_BAR   0

Definition at line 54 of file HdaController.h.

◆ PCI_HDA_DEVC_NOSNOOPEN

#define PCI_HDA_DEVC_NOSNOOPEN   BIT11

Definition at line 64 of file HdaController.h.

◆ PCI_HDA_DEVC_OFFSET

#define PCI_HDA_DEVC_OFFSET   0x78

Definition at line 63 of file HdaController.h.

◆ PCI_HDA_TCSEL_OFFSET

#define PCI_HDA_TCSEL_OFFSET   0x44

Definition at line 61 of file HdaController.h.

◆ PCI_HDA_TCSEL_TC0_MASK

#define PCI_HDA_TCSEL_TC0_MASK   ~(BIT0 | BIT1 | BIT2)

Definition at line 62 of file HdaController.h.

Typedef Documentation

◆ HDA_CONTROLLER_DEV

Definition at line 42 of file HdaController.h.

◆ HDA_CONTROLLER_INFO_PRIVATE_DATA

◆ HDA_IO_PRIVATE_DATA

Definition at line 43 of file HdaController.h.

Enumeration Type Documentation

◆ HDA_RING_BUFFER_TYPE

Enumerator
HDA_RING_BUFFER_TYPE_CORB 
HDA_RING_BUFFER_TYPE_RIRB 

Definition at line 222 of file HdaController.h.

Function Documentation

◆ HdaControllerCleanupRingBuffer()

VOID HdaControllerCleanupRingBuffer ( IN HDA_RING_BUFFER * HdaRingBuffer,
IN HDA_RING_BUFFER_TYPE Type )

Definition at line 197 of file HdaControllerMem.c.

◆ HdaControllerCleanupStreams()

VOID HdaControllerCleanupStreams ( IN HDA_CONTROLLER_DEV * HdaDev)

Definition at line 739 of file HdaControllerMem.c.

◆ HdaControllerDriverBindingStart()

EFI_STATUS EFIAPI HdaControllerDriverBindingStart ( IN EFI_DRIVER_BINDING_PROTOCOL * This,
IN EFI_HANDLE ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL )

Definition at line 1065 of file HdaController.c.

◆ HdaControllerDriverBindingStop()

EFI_STATUS EFIAPI HdaControllerDriverBindingStop ( IN EFI_DRIVER_BINDING_PROTOCOL * This,
IN EFI_HANDLE ControllerHandle,
IN UINTN NumberOfChildren,
IN EFI_HANDLE *ChildHandleBuffer OPTIONAL )

Definition at line 1288 of file HdaController.c.

◆ HdaControllerDriverBindingSupported()

EFI_STATUS EFIAPI HdaControllerDriverBindingSupported ( IN EFI_DRIVER_BINDING_PROTOCOL * This,
IN EFI_HANDLE ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL )

Definition at line 995 of file HdaController.c.

◆ HdaControllerGetStreamId()

BOOLEAN HdaControllerGetStreamId ( IN HDA_STREAM * HdaStream,
OUT UINT8 * Index )

Definition at line 930 of file HdaControllerMem.c.

◆ HdaControllerGetStreamLinkPos()

BOOLEAN HdaControllerGetStreamLinkPos ( IN HDA_STREAM * HdaStream,
OUT UINT32 * Position )

Definition at line 909 of file HdaControllerMem.c.

◆ HdaControllerGetStreamState()

BOOLEAN HdaControllerGetStreamState ( IN HDA_STREAM * HdaStream,
OUT BOOLEAN * Run )

Definition at line 832 of file HdaControllerMem.c.

◆ HdaControllerHdaIoCloseStream()

EFI_STATUS EFIAPI HdaControllerHdaIoCloseStream ( IN EFI_HDA_IO_PROTOCOL * This,
IN EFI_HDA_IO_PROTOCOL_TYPE Type )

Definition at line 253 of file HdaControllerHdaIo.c.

◆ HdaControllerHdaIoGetAddress()

EFI_STATUS EFIAPI HdaControllerHdaIoGetAddress ( IN EFI_HDA_IO_PROTOCOL * This,
OUT UINT8 * CodecAddress )

Retrieves this codec's address.

Parameters
[in]ThisA pointer to the HDA_IO_PROTOCOL instance.
[out]CodecAddressThe codec's address.
Return values
EFI_SUCCESSThe codec's address was returned.
EFI_INVALID_PARAMETEROne or more parameters are invalid.

Definition at line 42 of file HdaControllerHdaIo.c.

◆ HdaControllerHdaIoGetStream()

EFI_STATUS EFIAPI HdaControllerHdaIoGetStream ( IN EFI_HDA_IO_PROTOCOL * This,
IN EFI_HDA_IO_PROTOCOL_TYPE Type,
OUT BOOLEAN * State )

Definition at line 330 of file HdaControllerHdaIo.c.

◆ HdaControllerHdaIoSendCommand()

EFI_STATUS EFIAPI HdaControllerHdaIoSendCommand ( IN EFI_HDA_IO_PROTOCOL * This,
IN UINT8 Node,
IN UINT32 Verb,
OUT UINT32 * Response )

Sends a single command to the codec.

Parameters
[in]ThisA pointer to the HDA_IO_PROTOCOL instance.
[in]NodeThe destination node.
[in]VerbThe verb to send.
[out]ResponseThe response received.
Return values
EFI_SUCCESSThe verb was sent successfully and a response received.
EFI_INVALID_PARAMETEROne or more parameters are invalid.

Definition at line 73 of file HdaControllerHdaIo.c.

◆ HdaControllerHdaIoSendCommands()

EFI_STATUS EFIAPI HdaControllerHdaIoSendCommands ( IN EFI_HDA_IO_PROTOCOL * This,
IN UINT8 Node,
IN EFI_HDA_IO_VERB_LIST * Verbs )

Sends a set of commands to the codec.

Parameters
[in]ThisA pointer to the HDA_IO_PROTOCOL instance.
[in]NodeThe destination node.
[in]VerbsThe verbs to send. Responses will be delievered in the same list.
Return values
EFI_SUCCESSThe verbs were sent successfully and all responses received.
EFI_INVALID_PARAMETEROne or more parameters are invalid.

Definition at line 103 of file HdaControllerHdaIo.c.

◆ HdaControllerHdaIoSetupStream()

EFI_STATUS EFIAPI HdaControllerHdaIoSetupStream ( IN EFI_HDA_IO_PROTOCOL * This,
IN EFI_HDA_IO_PROTOCOL_TYPE Type,
IN UINT16 Format,
OUT UINT8 * StreamId )

Definition at line 124 of file HdaControllerHdaIo.c.

◆ HdaControllerHdaIoStartStream()

EFI_STATUS EFIAPI HdaControllerHdaIoStartStream ( IN EFI_HDA_IO_PROTOCOL * This,
IN EFI_HDA_IO_PROTOCOL_TYPE Type,
IN VOID * Buffer,
IN UINTN BufferLength,
IN UINTN BufferPosition OPTIONAL,
IN EFI_HDA_IO_STREAM_CALLBACK Callback OPTIONAL,
IN VOID *Context1 OPTIONAL,
IN VOID *Context2 OPTIONAL,
IN VOID *Context3 OPTIONAL )

Definition at line 367 of file HdaControllerHdaIo.c.

◆ HdaControllerHdaIoStopStream()

EFI_STATUS EFIAPI HdaControllerHdaIoStopStream ( IN EFI_HDA_IO_PROTOCOL * This,
IN EFI_HDA_IO_PROTOCOL_TYPE Type )

Definition at line 529 of file HdaControllerHdaIo.c.

◆ HdaControllerInfoGetName()

EFI_STATUS EFIAPI HdaControllerInfoGetName ( IN EFI_HDA_CONTROLLER_INFO_PROTOCOL * This,
OUT CONST CHAR16 ** Name )

Definition at line 29 of file HdaControllerInfo.c.

◆ HdaControllerInfoGetVendorId()

EFI_STATUS EFIAPI HdaControllerInfoGetVendorId ( IN EFI_HDA_CONTROLLER_INFO_PROTOCOL * This,
OUT UINT32 * VendorId )

Definition at line 48 of file HdaControllerInfo.c.

◆ HdaControllerInitRingBuffer()

EFI_STATUS HdaControllerInitRingBuffer ( IN HDA_RING_BUFFER * HdaRingBuffer,
IN HDA_CONTROLLER_DEV * HdaDev,
IN HDA_RING_BUFFER_TYPE Type )

Definition at line 31 of file HdaControllerMem.c.

◆ HdaControllerInitStreams()

EFI_STATUS HdaControllerInitStreams ( IN HDA_CONTROLLER_DEV * HdaDev)

Definition at line 380 of file HdaControllerMem.c.

◆ HdaControllerReset()

EFI_STATUS EFIAPI HdaControllerReset ( IN HDA_CONTROLLER_DEV * HdaControllerDev,
IN BOOLEAN Restart )

Definition at line 411 of file HdaController.c.

◆ HdaControllerResetRingBuffer()

EFI_STATUS HdaControllerResetRingBuffer ( IN HDA_RING_BUFFER * HdaRingBuffer)

Definition at line 305 of file HdaControllerMem.c.

◆ HdaControllerResetStream()

BOOLEAN HdaControllerResetStream ( IN HDA_STREAM * HdaStream)

Definition at line 590 of file HdaControllerMem.c.

◆ HdaControllerSendCommands()

EFI_STATUS EFIAPI HdaControllerSendCommands ( IN HDA_CONTROLLER_DEV * HdaDev,
IN UINT8 CodecAddress,
IN UINT8 Node,
IN EFI_HDA_IO_VERB_LIST * Verbs )

Definition at line 683 of file HdaController.c.

◆ HdaControllerSetRingBufferState()

EFI_STATUS HdaControllerSetRingBufferState ( IN HDA_RING_BUFFER * HdaRingBuffer,
IN BOOLEAN Enable,
IN HDA_RING_BUFFER_TYPE Type )

Definition at line 237 of file HdaControllerMem.c.

◆ HdaControllerSetStreamId()

BOOLEAN HdaControllerSetStreamId ( IN HDA_STREAM * HdaStream,
IN UINT8 Index )

Definition at line 957 of file HdaControllerMem.c.

◆ HdaControllerSetStreamState()

BOOLEAN HdaControllerSetStreamState ( IN HDA_STREAM * HdaStream,
IN BOOLEAN Run )

Definition at line 859 of file HdaControllerMem.c.

◆ HdaControllerStreamAbort()

VOID HdaControllerStreamAbort ( IN HDA_STREAM * HdaStream)

Definition at line 1013 of file HdaControllerMem.c.

◆ HdaControllerStreamIdle()

VOID HdaControllerStreamIdle ( IN HDA_STREAM * HdaStream)

Definition at line 994 of file HdaControllerMem.c.

◆ HdaControllerStreamOutputPollTimerHandler()

VOID EFIAPI HdaControllerStreamOutputPollTimerHandler ( IN EFI_EVENT Event,
IN VOID * Context )

Definition at line 45 of file HdaController.c.

Variable Documentation

◆ gForcedControllerDevicePath

EFI_DEVICE_PATH_PROTOCOL* gForcedControllerDevicePath
extern

Definition at line 41 of file HdaController.c.

◆ gRestoreNoSnoop

BOOLEAN gRestoreNoSnoop
extern

Definition at line 38 of file HdaController.c.