diff options
author | raywu <raywu0301@gmail.com> | 2018-06-15 00:00:50 +0800 |
---|---|---|
committer | raywu <raywu0301@gmail.com> | 2018-06-15 00:00:50 +0800 |
commit | b7c51c9cf4864df6aabb99a1ae843becd577237c (patch) | |
tree | eebe9b0d0ca03062955223097e57da84dd618b9a /Core/EM/FastBoot/FastBoot.sd | |
download | zprj-master.tar.xz |
Diffstat (limited to 'Core/EM/FastBoot/FastBoot.sd')
-rw-r--r-- | Core/EM/FastBoot/FastBoot.sd | 372 |
1 files changed, 372 insertions, 0 deletions
diff --git a/Core/EM/FastBoot/FastBoot.sd b/Core/EM/FastBoot/FastBoot.sd new file mode 100644 index 0000000..74609cc --- /dev/null +++ b/Core/EM/FastBoot/FastBoot.sd @@ -0,0 +1,372 @@ +//************************************************************************* +//************************************************************************* +//** ** +//** (C)Copyright 1985-2010, American Megatrends, Inc. ** +//** ** +//** All Rights Reserved. ** +//** ** +//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 ** +//** ** +//** Phone: (770)-246-8600 ** +//** ** +//************************************************************************* +//************************************************************************* + +//********************************************************************** +// $Header: /Alaska/SOURCE/Modules/PTT/FastBoot.sd 16 7/11/13 10:13p Simonchen $ +// +// $Revision: 16 $ +// +// $Date: 7/11/13 10:13p $ +//********************************************************************** +// Revision History +// ---------------- +// $Log: /Alaska/SOURCE/Modules/PTT/FastBoot.sd $ +// +// 16 7/11/13 10:13p Simonchen +// [TAG] EIP126196 +// [Category] Bug Fix +// [Severity] Minor +// [Symptom] If set two HDD password and use Raid mode, fastboot will +// [RootCause] Because when AHCI driver unlock first HDD, Raid driver +// will try to read all HDD, but second HDD is still lock, so access will +// fail. +// [Solution] Make sure all HDD unlock then Raid can access HDD. +// And add "Support Raid Driver" token to control fastboot support Raid +// feature or not. +// [Files] FastBoot.c +// FastBoot.sd +// FastBoot.sdl +// FastBootRuntime.c +// FastBoot.h +// +// 15 4/18/13 5:39a Simonchen +// [TAG] EIP113454 +// [Category] New Feature +// [Description] This eip is created for implement or experiment for +// Intel raid mode on fastboot. +// [Files] FastBoot.sdl +// FastBootRuntime.c +// FastBoot.c +// FastBoot.sd +// FastBoot.uni +// +// 14 1/28/13 10:10p Bibbyyeh +// [TAG] EIP113574 +// [Category] Spec Update +// [Severity] Normal +// [Description] Update the PTT eModule to utilize Setup Customization +// [Files] FastBoot.sd FastBoot.uni +// +// 13 8/10/12 3:23a Bibbyyeh +// [TAG] EIP96276 +// [Category] New Feature +// [Description] Function request for PTT_12 +// EIP96276.2 Fixed USB skip table issue. +// EIP96276.3 Add token ¡¥CONNECT_ALL_SATA_DEVICE_IN_FASTBOOT¡¦ to +// gFastBootPolicy. +// EIP96276.4 Add IsValidFBBootOptionPtr support by driver type. Exp : usb +// type skip or other type +// EIP96276.5 Add token ¡¥Test mode¡¨ to gFastBootPolicy Setup menu. +// EIP96276.6 Disable Tse Hotkey support in fastboot path. +// EIP96276.7 Modify TRACE message. +// [Files] FastBoot.c FastBoot.sd FastBoot.sdl FastBoot.uni +// FastBootRuntime.c FastBootProtocol.c +// +// 12 6/15/12 6:28a Bibbyyeh +// Add token "DEFAULT_VGA_SUPPORT_SETTING" , +// "DEFAULT_USB_SUPPORT_SETTING", "DEFAULT_PS2_SUPPORT_SETTING", and +// "DEFAULT_NETWORK_STACK_SUPPORT_SETTING" for Fast Boot default setup +// option. +// +// 11 6/12/12 10:14p Bibbyyeh +// Add a item "Auto" for fastboot "VGA Support". Only install Legacy OpRom +// only when previous boot is Legacy OS. +// +// 10 6/01/12 6:58a Bibbyyeh +// [TAG] EIP90455 +// [Category] New Feature +// [Description] PTT improvement - fastboot policy protocol for dynamic +// control fast boot behavior. +// [Files] FastBoot.c FastBoot.sdl FastBoot.sd FastBoot.uni +// FastBootRuntime.c FastBootTseHook.c FastBootProtocol.h FastBoot.h +// +// 9 5/29/12 4:44a Bibbyyeh +// Fix build fail issue if CSM and CsmOpOut moudle are removed. +// +// 8 4/09/12 8:05a Bibbyyeh +// Modify the default of SETUP_DATA.FastBoot as token DEFAULT_FAST_BOOT. +// +// 7 10/18/11 7:47a Bibbyyeh +// [TAG] EIP68563 +// [Category] Improvement +// [Description] Manufacturing Mode not set for the FastBoot setup +// options. +// [Files] FastBoot.sd +// +// 6 8/29/11 4:14a Bibbyyeh +// [TAG] EIP67571 +// [Category] Bug Fix +// [Severity] Important +// [Symptom] All FastBoot setup options are enabled in manufacturing +// mode. +// [RootCause] MANUFACTURING is set in FastBoot Setup option. +// [Solution] Remove MANUFACTURING flag. +// [Files] FastBoot.sd +// +// 5 3/17/11 8:40a Bibbyyeh +// [TAG] EIP56151 +// [Category] Improvement +// [Description] PTT eModule has several compiled errors if CSM eModule +// is removed, that must be solved. +// [Files] FastBoot.c FastBoot.sd +// +// 4 3/17/11 7:18a Bibbyyeh +// [TAG] EIP56151 +// [Category] Improvement +// [Description] PTT eModule has several compiled errors if CSM eModule +// is removed, that must be solved. +// [Files] FastBoot.c FastBoot.sd +// +// 3 3/11/11 10:01p Bibbyyeh +// [TAG] EIP54993 +// [Category] Improvement +// [Description] +// 1.Sync with Fastboot_10 +// 2.Remove token "SAVE_LAST_BOOT_DEVICE_CHECKSUM" +// 3.Add token "CALL_DISPATCHER_AGAIN_IN_FASTBOOT" +// 4.Use SimpleText protocol to detect mode change hotkey instead of +// pBS->ConIn. +// 5.Simplify the code about "AMILEGACY16_FASTBOOT_SOLUTION". +// 6.Fixed a bug that SATA device can't be found if keep TSE execution on +// fastboot path. +// [Files] PPT.cif FastBoot.sdl FastBootRuntime.c FastBootTseHook.c +// FastBoot.c FastBoot.h FastBoot.sd FastBootProtocol.cif +// FastBootProtocol.h FastBootSMI.cif FastBootSMI.sdl FastBootSMI.c +// FastBootSMI.dxs FastBootSMI.mak +// +// 2 11/17/10 9:44a Bibbyyeh +// [TAG] EIP47397 +// [Category] Improvement +// [Description] 1. Move all console related functions into PTT module +// to avoid uncompatible with different core version. +// 2. Install dumy SimpleTextCoin protocol when pBS->ConIn & pBS-ConOut is +// Null. +// 3. Raise timer call back as TPL_HIGH_LEVEL level, it will give BIOS +// more chance to mode change successfully. +// 4. Remove FASTBOOT_CONSOLE_SETTING token.Add setup option for fastboot +// setting, "Skip VGA", "Skip USB", Skip "PS2". +// [Files] FastBoot.c +// FastBoot.h +// FastBoot.sd +// FastBoot.sdl +// FastBoot.uni +// +// 1 10/12/10 9:04a Bibbyyeh +// Initial check in +// +//********************************************************************** + +//********************************************************************** +//<AMI_FHDR_START> +// +// Name: FastBoot.sd +// +// Description: FastBoot Setup data definitions, currently go under Boot page +// +//<AMI_FHDR_END> +//********************************************************************** + +#ifdef SETUP_DATA_DEFINITION + UINT8 FastBoot; + UINT8 FbSata; + UINT8 FbVga; + UINT8 FbUsb; + UINT8 FbPs2; + UINT8 FbNetWrokStack; + UINT8 FbTestMode; //(EIP96276.5+) +#endif + +#if defined(VFRCOMPILE) && !defined(CONTROLS_ARE_DEFINED) +#define CONTROL_DEFINITION +#endif + +#ifdef CONTROL_DEFINITION +// +// Put control definitions here. +// + +#define FB_ONEOF_FASTBOOT\ + oneof varid = SETUP_DATA.FastBoot,\ + prompt = STRING_TOKEN(STR_FAST_BOOT),\ + help = STRING_TOKEN(STR_FAST_BOOT_HELP),\ + default = DEFAULT_FAST_BOOT,\ + option text = STRING_TOKEN(STR_DISABLE), value = 0, flags = MANUFACTURING | RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_ENABLE), value = 1, flags = RESET_REQUIRED;\ + endoneof; + +#if SUPPORT_RAID_DRIVER +#define FB_ONEOF_FBSATA\ + oneof varid = SETUP_DATA.FbSata,\ + prompt = STRING_TOKEN(STR_FB_SATA),\ + help = STRING_TOKEN(STR_FB_SATA_HELP),\ + default = DEFAULT_SATA_SUPPORT_SETTING,\ + option text = STRING_TOKEN(STR_SATA_LAST_BOOT_ONLY), value = 0, flags = RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_SATA_ALL), value = 1, flags = MANUFACTURING | RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_SATA_HDD_ONLY), value = 2, flags = RESET_REQUIRED;\ + endoneof; +#else +#define FB_ONEOF_FBSATA\ + oneof varid = SETUP_DATA.FbSata,\ + prompt = STRING_TOKEN(STR_FB_SATA),\ + help = STRING_TOKEN(STR_FB_SATA_HELP),\ + default = DEFAULT_SATA_SUPPORT_SETTING,\ + option text = STRING_TOKEN(STR_SATA_LAST_BOOT_ONLY), value = 0, flags = RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_SATA_ALL), value = 1, flags = MANUFACTURING | RESET_REQUIRED;\ + endoneof; +#endif + +#define FB_ONEOF_FBVGA\ + oneof varid = SETUP_DATA.FbVga,\ + prompt = STRING_TOKEN(STR_FB_VGA),\ + help = STRING_TOKEN(STR_FB_VGA_HELP),\ + default = DEFAULT_VGA_SUPPORT_SETTING,\ + option text = STRING_TOKEN(STR_AUTO), value = 0, flags = RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_VGA_DRIVER), value = 1, flags = MANUFACTURING | RESET_REQUIRED;\ + endoneof; + + +#if (((USB_DRIVER_MAJOR_VER*100 ) + (USB_DRIVER_MINOR_VER*10) + (USB_DRIVER_BUILD_VER)) >= 920) + +#define FB_ONEOF_FBUSB\ + oneof varid = SETUP_DATA.FbUsb,\ + prompt = STRING_TOKEN(STR_FB_USB),\ + help = STRING_TOKEN(STR_FB_USB_HELP),\ + default = DEFAULT_USB_SUPPORT_SETTING,\ + option text = STRING_TOKEN(STR_DISABLE), value = 0, flags = RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_FULL_INIT), value = 1, flags = MANUFACTURING | RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_PATIAL_INIT), value = 2, flags = RESET_REQUIRED;\ + endoneof; + +#else + +#define FB_ONEOF_FBUSB\ + oneof varid = SETUP_DATA.FbUsb,\ + prompt = STRING_TOKEN(STR_FB_USB),\ + help = STRING_TOKEN(STR_FB_USB_HELP),\ + default = DEFAULT_USB_SUPPORT_SETTING,\ + option text = STRING_TOKEN(STR_DISABLE), value = 0, flags = RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_FULL_INIT), value = 1, flags = MANUFACTURING | RESET_REQUIRED; + endoneof; +#endif + +#define FB_ONEOF_FBPS2\ + oneof varid = SETUP_DATA.FbPs2,\ + prompt = STRING_TOKEN(STR_FB_PS2),\ + help = STRING_TOKEN(STR_FB_PS2_HELP),\ + default = DEFAULT_PS2_SUPPORT_SETTING,\ + option text = STRING_TOKEN(STR_DISABLE), value = 0, flags = RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_ENABLE), value = 1, flags = MANUFACTURING | RESET_REQUIRED;\ + endoneof; + +#define FB_ONEOF_FBNETWORKSTACK\ + oneof varid = SETUP_DATA.FbNetWrokStack,\ + prompt = STRING_TOKEN(STR_FB_NETWORK_STACK),\ + help = STRING_TOKEN(STR_FB_NETWORK_STACK_HELP),\ + default = DEFAULT_NETWORK_STACK_SUPPORT_SETTING,\ + option text = STRING_TOKEN(STR_DISABLE), value = 0, flags = RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_ENABLE), value = 1, flags = MANUFACTURING | RESET_REQUIRED;\ + endoneof; + +#define FB_ONEOF_FBTESTMODE\ + oneof varid = SETUP_DATA.FbTestMode,\ + prompt = STRING_TOKEN(STR_FB_TEST),\ + help = STRING_TOKEN(STR_FB_TEST_HELP),\ + option text = STRING_TOKEN(STR_DISABLE), value = 0, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\ + option text = STRING_TOKEN(STR_ENABLE), value = 1, flags = RESET_REQUIRED;\ + endoneof;\ + +#endif //#ifdef CONTROL_DEFINITION + +#ifdef CONTROLS_WITH_DEFAULTS +// +// List macros of all the controls attached to the actual data. +// + FB_ONEOF_FASTBOOT + FB_ONEOF_FBSATA + FB_ONEOF_FBVGA + FB_ONEOF_FBUSB + FB_ONEOF_FBPS2 + FB_ONEOF_FBNETWORKSTACK + FB_ONEOF_FBTESTMODE + +#endif //#ifdef CONTROLS_WITH_DEFAULTS + +//Select Top level menu itmem (forset) for you pages +#ifdef BOOT_FORM_SET + #ifndef SUPPRESS_GRAYOUT_ENDIF //old Core + #define SUPPRESS_GRAYOUT_ENDIF endif; + #endif + +#ifdef FORM_SET_ITEM + + FB_ONEOF_FASTBOOT + + + suppressif ideqval SETUP_DATA.FastBoot == 0; + grayoutif ideqval SETUP_DATA.FastBoot == 0; + FB_ONEOF_FBSATA + SUPPRESS_GRAYOUT_ENDIF + +#if CSM_SUPPORT + suppressif ideqval SETUP_DATA.FastBoot == 0; + FB_ONEOF_FBVGA + endif; +#else + suppressif ideqval SETUP_DATA.FastBoot == 0; + grayoutif ideqval SETUP_DATA.FastBoot == 1; + FB_ONEOF_FBVGA + SUPPRESS_GRAYOUT_ENDIF +#endif //#if CSM_SUPPORT + + suppressif ideqval SETUP_DATA.FastBoot == 0; + grayoutif ideqval SETUP_DATA.FastBoot == 0; + FB_ONEOF_FBUSB + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.FastBoot == 0; + grayoutif ideqval SETUP_DATA.FastBoot == 0; + FB_ONEOF_FBPS2 + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.FastBoot == 0; + grayoutif ideqval SETUP_DATA.FastBoot == 0; + FB_ONEOF_FBNETWORKSTACK + SUPPRESS_GRAYOUT_ENDIF + +//(EIP96276.5+)>> +#if FAST_BOOT_TEST_MODE + suppressif ideqval SETUP_DATA.FastBoot == 0; + grayoutif ideqval SETUP_DATA.FastBoot == 0; + FB_ONEOF_FBTESTMODE + SUPPRESS_GRAYOUT_ENDIF +#endif //#if FAST_BOOT_TEST_MODE +//<<(EIP96276.5+) + +#endif //#ifdef FORM_SET_ITEM + +#endif //#ifdef BOOT_FORM_SET +//************************************************************************* +//************************************************************************* +//** ** +//** (C)Copyright 1985-2010, American Megatrends, Inc. ** +//** ** +//** All Rights Reserved. ** +//** ** +//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 ** +//** ** +//** Phone: (770)-246-8600 ** +//** ** +//************************************************************************* +//************************************************************************* + |