1 /*++
2 
3   Copyright (c) 2004  - 2014, Intel Corporation. All rights reserved.<BR>
4 
5 
6   This program and the accompanying materials are licensed and made available under
7 
8   the terms and conditions of the BSD License that accompanies this distribution.
9 
10   The full text of the license may be found at
11 
12   http://opensource.org/licenses/bsd-license.php.
13 
14 
15 
16   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
17 
18   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
19 
20 
21 
22 
23 
24 Module Name:
25 
26     SetupMode.h
27 
28 Abstract:
29 
30     EFI Setup Mode
31 
32 
33 
34 --*/
35 
36 #ifndef _EFI_SETUP_MODE_H_
37 #define _EFI_SETUP_MODE_H_
38 
39 //
40 // Global ID for the Setup Mode
41 //
42 #define EFI_PLATFORM_BOOT_MODE_GUID \
43   { 0xce845704, 0x1683, 0x4d38, 0xa4, 0xf9, 0x7d, 0xb, 0x50, 0x77, 0x57, 0x93 }
44 
45 #define EFI_NORMAL_SETUP_GUID \
46   { 0xec87d643, 0xeba4, 0x4bb5, 0xa1, 0xe5, 0x3f, 0x3e, 0x36, 0xb2, 0xd, 0xa9 }
47 
48 #define EFI_NORMAL_SETUP_RESET_NAME L"Reset"
49 
50 enum {
51   //
52   // This means: "whatever reset defaults in setup does"
53   //
54   SetupDataResetNormal        = 0,
55 
56   //
57   // This means: "the defaults built into the BIOS"
58   //
59   SetupDataResetStandard      = 1,
60 
61   //
62   // This means: "the manufacturing mode defaults"
63   //
64   SetupDataResetManufacturing = 2,
65 
66   //
67   // This means: "the oem defaults"
68   //
69   SetupDataResetOem           = 3,
70 };
71 
72 //
73 // PlatformBootMode types
74 //
75 #define PLATFORM_NORMAL_MODE          0x01
76 #define PLATFORM_SAFE_MODE            0x02
77 #define PLATFORM_RECOVERY_MODE        0x04
78 #define PLATFORM_MANUFACTURING_MODE   0x08
79 #define PLATFORM_BACK_TO_BIOS_MODE    0x10
80 
81 extern EFI_GUID gEfiPlatformBootModeGuid;
82 
83 #define   NORMAL_SETUP_NAME                L"Setup"
84 #define   IN_SETUP_NAME                    L"InSetup"
85 #define   SYSTEM_PASSWORD_NAME             L"SystemPassword"
86 #define   BOOT_TIME_NAME                   L"BootTime"
87 
88 extern EFI_GUID gEfiNormalSetupGuid;
89 extern CHAR16   gEfiNormalSetupName[];
90 extern CHAR16   gEfiInSetupName[];
91 extern CHAR16   gEfiSystemPasswordName[];
92 
93 typedef struct {
94   EFI_GUID    SetupGuid;
95   CHAR16      SetupName[0x20];          // Maximum "Setup" Name
96   UINT32      PlatformBootMode;
97 } EFI_PLATFORM_SETUP_ID;
98 
99 #endif
100