31#include <Protocol/LoadedImage.h>
38EFI_DRIVER_BINDING_PROTOCOL
51EFI_DRIVER_BINDING_PROTOCOL
64 IN EFI_HANDLE ImageHandle,
65 IN EFI_SYSTEM_TABLE *SystemTable
69 EFI_LOADED_IMAGE_PROTOCOL *LoadedImage;
70 CHAR16 *DevicePathName;
76 Status =
gBS->HandleProtocol (
82 if (EFI_ERROR (Status)) {
86 DevicePathName = NULL;
89 if (!EFI_ERROR (Status)) {
102 if (DevicePathName != NULL) {
109 if (Status != EFI_NOT_FOUND) {
116 }
else if (Status != EFI_NOT_FOUND) {
122 "HDA: GPIO stages 0x%X mask 0x%X%a; Restore NSNPEN %d; Force device %s codec %u(%u); Conn none %u; Delay %u\n",
137 Status = EfiLibInstallDriverBindingComponentName2 (
146 if (EFI_ERROR (Status)) {
153 Status = EfiLibInstallDriverBindingComponentName2 (
162 ASSERT_EFI_ERROR (Status);
163 if (EFI_ERROR (Status)) {
167 Status =
gBS->InstallMultipleProtocolInterfaces (
174 ASSERT_EFI_ERROR (Status);
175 if (EFI_ERROR (Status)) {
EFI_AUDIO_DECODE_PROTOCOL gEfiAudioDecodeProtocol
EFI_GUID gEfiAudioDecodeProtocolGuid
EFI_DRIVER_BINDING_PROTOCOL gHdaCodecDriverBinding
EFI_DRIVER_BINDING_PROTOCOL gHdaControllerDriverBinding
EFI_STATUS EFIAPI AudioDxeInit(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
BOOLEAN gCodecUseConnNoneNode
EFI_STATUS EFIAPI HdaCodecDriverBindingSupported(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL)
EFI_STATUS EFIAPI HdaCodecDriverBindingStart(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL)
UINTN gGpioSetupStageMask
EFI_STATUS EFIAPI HdaCodecDriverBindingStop(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer OPTIONAL)
#define GPIO_SETUP_STAGE_NONE
#define GPIO_SETUP_STAGE_ALL
GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL gHdaCodecComponentName
GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gHdaCodecComponentName2
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_DEVICE_PATH_PROTOCOL * gForcedControllerDevicePath
EFI_STATUS EFIAPI HdaControllerDriverBindingSupported(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL)
GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gHdaControllerComponentName2
GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL gHdaControllerComponentName
EFI_STATUS OcParseLoadOptions(IN CONST EFI_LOADED_IMAGE_PROTOCOL *LoadedImage, OUT OC_FLEX_ARRAY **ParsedVars)
EFI_STATUS OcParsedVarsGetInt(IN CONST OC_FLEX_ARRAY *ParsedVars, IN CONST VOID *Name, OUT UINTN *Value, IN CONST OC_STRING_FORMAT StringFormat)
BOOLEAN OcHasParsedVar(IN CONST OC_FLEX_ARRAY *ParsedVars, IN CONST VOID *Name, IN CONST OC_STRING_FORMAT StringFormat)
BOOLEAN OcParsedVarsGetUnicodeStr(IN CONST OC_FLEX_ARRAY *ParsedVars, IN CONST CHAR16 *Name, OUT CHAR16 **StrValue)
VOID OcFlexArrayFree(IN OUT OC_FLEX_ARRAY **FlexArray)
EFI_GUID gEfiLoadedImageProtocolGuid