/** @file | |
FrontPage routines to handle the callbacks and browser calls | |
Copyright (c) 2011 - 2015, Intel Corporation. All rights reserved.<BR> | |
This program and the accompanying materials | |
are licensed and made available under the terms and conditions of the BSD License | |
which accompanies this distribution. The full text of the license may be found at | |
http://opensource.org/licenses/bsd-license.php | |
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, | |
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. | |
**/ | |
#ifndef _BDS_MODULE_H_ | |
#define _BDS_MODULE_H_ | |
#include <IndustryStandard/SmBios.h> | |
#include <Guid/MdeModuleHii.h> | |
#include <Guid/StatusCodeDataTypeId.h> | |
#include <Protocol/Smbios.h> | |
#include <Protocol/HiiConfigAccess.h> | |
#include <Library/PrintLib.h> | |
#include <Library/DebugLib.h> | |
#include <Library/BaseMemoryLib.h> | |
#include <Library/UefiBootServicesTableLib.h> | |
#include <Library/UefiLib.h> | |
#include <Library/MemoryAllocationLib.h> | |
#include <Library/ReportStatusCodeLib.h> | |
#include <Library/UefiRuntimeServicesTableLib.h> | |
#include <Library/HiiLib.h> | |
#include <Library/DevicePathLib.h> | |
#include <Library/UefiHiiServicesLib.h> | |
#include <Library/UefiBootManagerLib.h> | |
#pragma pack(1) | |
/// | |
/// HII specific Vendor Device Path definition. | |
/// | |
typedef struct { | |
VENDOR_DEVICE_PATH VendorDevicePath; | |
EFI_DEVICE_PATH_PROTOCOL End; | |
} HII_VENDOR_DEVICE_PATH; | |
#pragma pack() | |
// | |
//The interface functions related to the Setup Browser Reset Reminder feature | |
// | |
/** | |
Enable the setup browser reset reminder feature. | |
This routine is used in a platform tip. If the platform policy needs the feature, use the routine to enable it. | |
**/ | |
VOID | |
EFIAPI | |
EnableResetReminderFeature ( | |
VOID | |
); | |
/** | |
Disable the setup browser reset reminder feature. | |
This routine is used in a platform tip. If the platform policy does not want the feature, use the routine to disable it. | |
**/ | |
VOID | |
EFIAPI | |
DisableResetReminderFeature ( | |
VOID | |
); | |
/** | |
Record the info that a reset is required. | |
A module boolean variable is used to record whether a reset is required. | |
**/ | |
VOID | |
EFIAPI | |
EnableResetRequired ( | |
VOID | |
); | |
/** | |
Record the info that no reset is required. | |
A module boolean variable is used to record whether a reset is required. | |
**/ | |
VOID | |
EFIAPI | |
DisableResetRequired ( | |
VOID | |
); | |
/** | |
Check whether platform policy enables the reset reminder feature. The default is enabled. | |
**/ | |
BOOLEAN | |
EFIAPI | |
IsResetReminderFeatureEnable ( | |
VOID | |
); | |
/** | |
Check if the user changed any option setting that needs a system reset to be effective. | |
**/ | |
BOOLEAN | |
EFIAPI | |
IsResetRequired ( | |
VOID | |
); | |
/** | |
Check whether a reset is needed, and finish the reset reminder feature. | |
If a reset is needed, pop up a menu to notice user, and finish the feature | |
according to the user selection. | |
**/ | |
VOID | |
EFIAPI | |
SetupResetReminder ( | |
VOID | |
); | |
#endif |