]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Include/Library/PlatformBdsLib.h
UEFI HII: Merge UEFI HII support changes from branch.
[mirror_edk2.git] / MdeModulePkg / Include / Library / PlatformBdsLib.h
1 /*++
2
3 Copyright (c) 2008, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12 Module Name:
13
14 PlatformBdsLib.h
15
16 Abstract:
17
18 Platform BDS library definition, include the file and data structure
19
20 --*/
21
22 #ifndef __PLATFORM_BDS_LIB_H_
23 #define __PLATFORM_BDS_LIB_H_
24
25 #include <PiDxe.h>
26 #include <Protocol/Bds.h>
27 #include <Protocol/GenericMemoryTest.h>
28
29 //
30 // Bds AP Context data
31 //
32 #define EFI_BDS_ARCH_PROTOCOL_INSTANCE_SIGNATURE EFI_SIGNATURE_32 ('B', 'd', 's', 'A')
33 typedef struct _EFI_BDS_ARCH_PROTOCOL_INSTANCE EFI_BDS_ARCH_PROTOCOL_INSTANCE;
34
35 struct _EFI_BDS_ARCH_PROTOCOL_INSTANCE {
36 UINTN Signature;
37 EFI_HANDLE Handle;
38 EFI_BDS_ARCH_PROTOCOL Bds;
39 //
40 // Save the current boot mode
41 //
42 EFI_BOOT_MODE BootMode;
43 //
44 // Set true if boot with default settings
45 //
46 BOOLEAN DefaultBoot;
47 //
48 // The system default timeout for choose the boot option
49 //
50 UINT16 TimeoutDefault;
51 //
52 // Memory Test Level
53 //
54 EXTENDMEM_COVERAGE_LEVEL MemoryTestLevel;
55 };
56
57 //
58 // Platform BDS Functions
59 //
60 VOID
61 EFIAPI
62 PlatformBdsInit (
63 IN EFI_BDS_ARCH_PROTOCOL_INSTANCE *PrivateData
64 )
65 ;
66
67 VOID
68 EFIAPI
69 PlatformBdsPolicyBehavior (
70 IN EFI_BDS_ARCH_PROTOCOL_INSTANCE *PrivateData,
71 IN LIST_ENTRY *DriverOptionList,
72 IN LIST_ENTRY *BootOptionList
73 )
74 ;
75
76
77 VOID
78 PlatformBdsBootFail (
79 IN BDS_COMMON_OPTION *Option,
80 IN EFI_STATUS Status,
81 IN CHAR16 *ExitData,
82 IN UINTN ExitDataSize
83 )
84 ;
85
86 VOID
87 PlatformBdsBootSuccess (
88 IN BDS_COMMON_OPTION *Option
89 )
90 ;
91
92 EFI_STATUS
93 EFIAPI
94 PlatformBdsLockNonUpdatableFlash (
95 VOID
96 )
97 ;
98 #endif