]> git.proxmox.com Git - mirror_edk2.git/blob - Nt32Pkg/PlatformBdsDxe/Generic/Bds.h
bbd655647a2567536a8cd6a258eb24e5ccd8bb2f
[mirror_edk2.git] / Nt32Pkg / PlatformBdsDxe / Generic / Bds.h
1 /*++
2
3 Copyright (c) 2006, 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 Bds.h
15
16 Abstract:
17
18 Head file for BDS Architectural Protocol implementation
19
20 Revision History
21
22 --*/
23
24 #ifndef _BDS_H
25 #define _BDS_H
26
27 //
28 // Include common header file for this module.
29 //
30 #include "CommonHeader.h"
31
32 //
33 // Bds AP Context data
34 //
35 #define EFI_BDS_ARCH_PROTOCOL_INSTANCE_SIGNATURE EFI_SIGNATURE_32 ('B', 'd', 's', 'A')
36 typedef struct {
37 UINTN Signature;
38
39 EFI_HANDLE Handle;
40
41 EFI_BDS_ARCH_PROTOCOL Bds;
42
43 //
44 // Save the current boot mode
45 //
46 EFI_BOOT_MODE BootMode;
47
48 //
49 // Set true if boot with default settings
50 //
51 BOOLEAN DefaultBoot;
52
53 //
54 // The system default timeout for choose the boot option
55 //
56 UINT16 TimeoutDefault;
57
58 //
59 // Memory Test Level
60 //
61 EXTENDMEM_COVERAGE_LEVEL MemoryTestLevel;
62
63 } EFI_BDS_ARCH_PROTOCOL_INSTANCE;
64
65 #define EFI_BDS_ARCH_PROTOCOL_INSTANCE_FROM_THIS(_this) \
66 CR (_this, \
67 EFI_BDS_ARCH_PROTOCOL_INSTANCE, \
68 Bds, \
69 EFI_BDS_ARCH_PROTOCOL_INSTANCE_SIGNATURE \
70 )
71
72 //
73 // Prototypes
74 //
75 EFI_STATUS
76 EFIAPI
77 BdsInitialize (
78 IN EFI_HANDLE ImageHandle,
79 IN EFI_SYSTEM_TABLE *SystemTable
80 );
81
82 EFI_STATUS
83 EFIAPI
84 BdsEntry (
85 IN EFI_BDS_ARCH_PROTOCOL *This
86 );
87
88 #endif