OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
AudioDxe.h
Go to the documentation of this file.
1/*
2 * File: AudioDxe.h
3 *
4 * Copyright (c) 2018 John Davis
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a copy
7 * of this software and associated documentation files (the "Software"), to deal
8 * in the Software without restriction, including without limitation the rights
9 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 * copies of the Software, and to permit persons to whom the Software is
11 * furnished to do so, subject to the following conditions:
12 *
13 * The above copyright notice and this permission notice shall be included in all
14 * copies or substantial portions of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22 * SOFTWARE.
23 */
24
25#ifndef EFI_AUDIODXE_H
26#define EFI_AUDIODXE_H
27
28//
29// Common UEFI includes and library classes.
30//
31#include <Uefi.h>
32#include <Library/BaseLib.h>
33#include <Library/BaseMemoryLib.h>
34#include <Library/DebugLib.h>
35#include <Library/DevicePathLib.h>
36#include <Library/MemoryAllocationLib.h>
37#include <Library/PcdLib.h>
38#include <Library/SynchronizationLib.h>
39#include <Library/UefiBootServicesTableLib.h>
40#include <Library/UefiRuntimeServicesTableLib.h>
41#include <Library/UefiLib.h>
42
44
45//
46// Proctols that are consumed/produced.
47//
49#include <Protocol/AudioIo.h>
50#include <Protocol/DevicePath.h>
51#include <Protocol/DevicePathUtilities.h>
52#include <Protocol/DriverBinding.h>
53#include <Protocol/HdaIo.h>
56
57// Driver version
58#define AUDIODXE_VERSION 0xD
59#define AUDIODXE_PKG_VERSION 1
60
61// Driver Bindings.
62extern EFI_DRIVER_BINDING_PROTOCOL gHdaControllerDriverBinding;
63extern EFI_DRIVER_BINDING_PROTOCOL gHdaCodecDriverBinding;
65
66// Cannot raise TPL above this value round any code which calls gBS->SetTimer
67// (using the DxeCore implementation of it, e.g. at least OVMF).
68// REF: MdeModulePkg/Core/Dxe/Event/Timer.c
69#define TPL_DXE_CORE_TIMER (TPL_HIGH_LEVEL - 1)
70
71#endif // EFI_AUDIODXE_H
EFI_DRIVER_BINDING_PROTOCOL gHdaCodecDriverBinding
Definition AudioDxe.c:52
EFI_AUDIO_DECODE_PROTOCOL gEfiAudioDecodeProtocol
EFI_DRIVER_BINDING_PROTOCOL gHdaControllerDriverBinding
Definition AudioDxe.c:39