29#include <Protocol/DevicePath.h>
38#define EFI_HDA_IO_PROTOCOL_GUID \
39 { 0xA090D7F9, 0xB50A, 0x4EA1, \
40 { 0xBD, 0xE9, 0x1A, 0xA5, 0xE9, 0x81, 0x2F, 0x45 } }
87 OUT UINT8 *CodecAddress
158 IN UINTN BufferLength,
159 IN UINTN BufferPosition OPTIONAL,
161 IN VOID *Context1 OPTIONAL,
162 IN VOID *Context2 OPTIONAL,
163 IN VOID *Context3 OPTIONAL
196#define EFI_HDA_IO_DEVICE_PATH_GUID \
197 { 0xA9003FEB, 0xD806, 0x41DB, \
198 { 0xA4, 0x91, 0x54, 0x05, 0xFE, 0xEF, 0x46, 0xC3 } }
217 ==
sizeof (EFI_DEVICE_PATH_PROTOCOL) +
sizeof (EFI_GUID) +
sizeof (UINT32),
218 "Unexpected EFI_HDA_IO_DEVICE_PATH size"
226#define EFI_HDA_IO_DEVICE_PATH_TEMPLATE \
229 MESSAGING_DEVICE_PATH, \
232 (UINT8) (sizeof (EFI_HDA_IO_DEVICE_PATH) & 0xFFU), \
233 (UINT8) ((sizeof (EFI_HDA_IO_DEVICE_PATH) >> 8U) & 0xFFU) \
236 gEfiHdaIoDevicePathGuid, \
EFI_GUID gEfiHdaIoProtocolGuid
VOID(EFIAPI * EFI_HDA_IO_STREAM_CALLBACK)(IN EFI_HDA_IO_PROTOCOL_TYPE Type, IN VOID *Context1, IN VOID *Context2, IN VOID *Context3)
EFI_GUID gEfiHdaIoDevicePathGuid
EFI_STATUS(EFIAPI * EFI_HDA_IO_STOP_STREAM)(IN EFI_HDA_IO_PROTOCOL *This, IN EFI_HDA_IO_PROTOCOL_TYPE Type)
EFI_STATUS(EFIAPI * EFI_HDA_IO_GET_ADDRESS)(IN EFI_HDA_IO_PROTOCOL *This, OUT UINT8 *CodecAddress)
EFI_STATUS(EFIAPI * EFI_HDA_IO_SEND_COMMANDS)(IN EFI_HDA_IO_PROTOCOL *This, IN UINT8 Node, IN OUT EFI_HDA_IO_VERB_LIST *Verbs)
EFI_STATUS(EFIAPI * EFI_HDA_IO_CLOSE_STREAM)(IN EFI_HDA_IO_PROTOCOL *This, IN EFI_HDA_IO_PROTOCOL_TYPE Type)
EFI_STATUS(EFIAPI * EFI_HDA_IO_GET_STREAM)(IN EFI_HDA_IO_PROTOCOL *This, IN EFI_HDA_IO_PROTOCOL_TYPE Type, OUT BOOLEAN *State)
STATIC_ASSERT(sizeof(EFI_HDA_IO_DEVICE_PATH)==sizeof(EFI_DEVICE_PATH_PROTOCOL)+sizeof(EFI_GUID)+sizeof(UINT32), "Unexpected EFI_HDA_IO_DEVICE_PATH size")
EFI_STATUS(EFIAPI * EFI_HDA_IO_SETUP_STREAM)(IN EFI_HDA_IO_PROTOCOL *This, IN EFI_HDA_IO_PROTOCOL_TYPE Type, IN UINT16 Format, OUT UINT8 *StreamId)
EFI_STATUS(EFIAPI * EFI_HDA_IO_SEND_COMMAND)(IN EFI_HDA_IO_PROTOCOL *This, IN UINT8 Node, IN UINT32 Verb, OUT UINT32 *Response)
EFI_STATUS(EFIAPI * EFI_HDA_IO_START_STREAM)(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)
OC_TYPING_BUFFER_ENTRY Buffer[OC_TYPING_BUFFER_SIZE]
EFI_DEVICE_PATH_PROTOCOL Header
EFI_HDA_IO_CLOSE_STREAM CloseStream
EFI_HDA_IO_GET_ADDRESS GetAddress
EFI_HDA_IO_START_STREAM StartStream
EFI_HDA_IO_SETUP_STREAM SetupStream
EFI_HDA_IO_SEND_COMMAND SendCommand
EFI_HDA_IO_GET_STREAM GetStream
EFI_HDA_IO_STOP_STREAM StopStream
EFI_HDA_IO_SEND_COMMANDS SendCommands