summaryrefslogtreecommitdiff
path: root/Core/EM/SMIFlash/SMIFlash.sdl
diff options
context:
space:
mode:
Diffstat (limited to 'Core/EM/SMIFlash/SMIFlash.sdl')
-rw-r--r--Core/EM/SMIFlash/SMIFlash.sdl349
1 files changed, 349 insertions, 0 deletions
diff --git a/Core/EM/SMIFlash/SMIFlash.sdl b/Core/EM/SMIFlash/SMIFlash.sdl
new file mode 100644
index 0000000..7cdc8e2
--- /dev/null
+++ b/Core/EM/SMIFlash/SMIFlash.sdl
@@ -0,0 +1,349 @@
+TOKEN
+ Name = "SMIFlash_SUPPORT"
+ Value = "1"
+ Help = "Main switch to enable SMIFlash support in Project"
+ TokenType = Boolean
+ TargetMAK = Yes
+ Master = Yes
+End
+
+TOKEN
+ Name = "SMI_FLASH_INTERFACE_VERSION"
+ Value = "11"
+ Help = "Version of the SMI Flash Interface"
+ TokenType = Integer
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "REPORT_NCB_BY_ROM_LAYOUT"
+ Value = "0"
+ Help = "Report NCBs by ROM Layout Definitions."
+ TokenType = Boolean
+ TargetMAK = Yes
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "PRESERVE_PASSWORDS"
+ Value = "0"
+ Help = "1 - Preserve passwords through flashing. 0 - Do not preserve passwords."
+ TokenType = Boolean
+ TargetMAK = Yes
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "PRESERVE_EFIBOOTORDER"
+ Value = "1"
+ Help = "1 - Preserve EFI BootOrder through flashing. 0 - Do not preserve EFI BootOrder."
+ TokenType = Boolean
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "AFU_BUFFER_IN_SHADOW"
+ Value = "0"
+ Help = "1 - AFU will store the buffer pointer in F-segment If Afu support."
+ TokenType = Boolean
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "DISABLE_PWR_BUTTON"
+ Value = "0"
+ Help = "1 - Disable PWR Button when flashing BIOS in DOS."
+ TokenType = Boolean
+ TargetH = Yes
+End
+
+PATH
+ Name = "SMI_FLASH_DIR"
+End
+
+MODULE
+ Help = "Includes SMIFlash.mak to Project"
+ File = "SMIFlash.mak"
+End
+
+ELINK
+ Name = "$(BUILD_DIR)\SMIFlash.ffs"
+ Parent = "FV_MAIN"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "PreserveSetupPassword,"
+ Parent = "SMIFlashPreUpdateList"
+ Token = "PRESERVE_PASSWORDS" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "RestoreSetupPassword,"
+ Parent = "SMIFlashEndUpdateList"
+ Token = "PRESERVE_PASSWORDS" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "PreserveEfiBootOrders,"
+ Parent = "SMIFlashPreUpdateList"
+ Token = "PRESERVE_EFIBOOTORDER" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "RestoreEfiBootOrders,"
+ Parent = "SMIFlashEndUpdateList"
+ Token = "PRESERVE_EFIBOOTORDER" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "DisablePowerButton,"
+ Parent = "SMIFlashPreUpdateList"
+ Token = "DISABLE_PWR_BUTTON" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "EnablePowerButton,"
+ Parent = "SMIFlashEndUpdateList"
+ Token = "DISABLE_PWR_BUTTON" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "DisableUSBKBD,"
+ Parent = "SMIFlashPreUpdateList"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "EnableUSBKBD,"
+ Parent = "SMIFlashEndUpdateList"
+ InvokeOrder = AfterParent
+End
+
+
+ELINK
+ Name = "UpdateShadowBuffer,"
+ Parent = "SMIFlashPreHandlerList"
+ Token = "AFU_BUFFER_IN_SHADOW" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "ClearShadowBuffer,"
+ Parent = "SMIFlashEndHandlerList"
+ Token = "AFU_BUFFER_IN_SHADOW" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "$(BUILD_DIR)\AMICSPLib.Lib"
+ Parent = "PRESERVE_LIB"
+ Token = "AFU_BUFFER_IN_SHADOW" "=" "1"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "ReassignNcbByRomLayout,"
+ Parent = "SMIFlashEndHandlerList"
+ Token = "REPORT_NCB_BY_ROM_LAYOUT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "PostRestoreVariables,"
+ Parent = "SMIFlashNotSmmList"
+ Token = "FAULT_TOLERANT_NVRAM_UPDATE" "=" "1"
+ Token = "BACKUP_NVRAM_WHEN_FLASH" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "USBNonSmmFunction,"
+ Parent = "SMIFlashNotSmmList"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "USBInSmmFunction,"
+ Parent = "SMIFlashInSmmList"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "SMIFlashInSmmList"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "SMIFlashPreserveRomHoleGuid"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "SMIFlashNotSmmList"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "SMIFlashPreUpdateList"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "SMIFlashEndUpdateList"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "SMIFlashPreHandlerList"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "SMIFlashEndHandlerList"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "PRESERVE_LIB"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "RestoreSecureVariablesPreHandler,"
+ Parent = "SMIFlashPreHandlerList"
+ Token = "FAULT_TOLERANT_NVRAM_UPDATE" "=" "1"
+ Token = "BACKUP_NVRAM_WHEN_FLASH" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "RestoreSecureVariablesEndHandler,"
+ Parent = "SMIFlashEndHandlerList"
+ Token = "FAULT_TOLERANT_NVRAM_UPDATE" "=" "1"
+ Token = "BACKUP_NVRAM_WHEN_FLASH" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "ClearFFSState,"
+ Parent = "SecureUpdBeforeSmiflashWrite,"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "PreserveWin8Variables,"
+ Parent = "SMIFlashPreUpdateList"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "RestoreWin8Variables,"
+ Parent = "SMIFlashEndUpdateList"
+ InvokeOrder = AfterParent
+End
+
+TOKEN
+ Name = "NON_SECURE_NCB_UPDATE"
+ Value = "0"
+ Help = "1 - Allow NCB Update w/o Secure check."
+ TokenType = Boolean
+ TargetH = Yes
+ Token = "SecSMIFlash_SUPPORT" "=" "1"
+End
+
+ELINK
+ Name = "NCBUpdate,"
+ Parent = "SecureUpdBeforeSmiflashWrite,"
+ Token = "NON_SECURE_NCB_UPDATE" "=" "1"
+ Token = "SecSMIFlash_SUPPORT" "=" "1"
+ InvokeOrder = BeforeParent
+End
+
+ELINK
+ Name = "NCBUpdate,"
+ Parent = "SecureUpdBeforeSmiflashWrite,"
+ Token = "NON_SECURE_NCB_UPDATE" "=" "1"
+ Token = "SecSMIFlash_SUPPORT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+TOKEN
+ Name = "RECOVERY_PRESERVE_VARS_IN_SMM"
+ Value = "1"
+ Help = "1 - Preserved variables thru SMIFlash Func 0x20/0x24 if Capsule/Recovery mode of Secure Flash."
+ TokenType = Boolean
+ TargetMAK = Yes
+ TargetH = Yes
+ Token = "SecSMIFlash_SUPPORT" "=" "1"
+End
+
+TOKEN
+ Name = "RECOVERY_PRESERVE_ROMHOLE"
+ Value = "1"
+ Help = "1 - Preserved Romholes if Capsule/Recovery mode of Secure Flash."
+ TokenType = Boolean
+ TargetH = Yes
+ Token = "SecSMIFlash_SUPPORT" "=" "1"
+End
+
+ELINK
+ Name = "RecoveryPreserveRomHoles,"
+ Parent = "SMIFlashNotSmmList"
+ Token = "RECOVERY_PRESERVE_ROMHOLE" "=" "1"
+ Token = "SecSMIFlash_SUPPORT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "RecoveryHookBeforeFlash,"
+ Parent = "OemBeforeFlashUpdateList"
+ Token = "RECOVERY_PRESERVE_VARS_IN_SMM" "=" "1"
+ Token = "SecSMIFlash_SUPPORT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "RecoveryHookAfterFlash,"
+ Parent = "OemAfterFlashUpdateList"
+ Token = "RECOVERY_PRESERVE_VARS_IN_SMM" "=" "1"
+ Token = "SecSMIFlash_SUPPORT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "{0xFD44820B,0xF1AB,0x41c0,0xAE,0x4E,0x0C,0x55,0x55,0x6E,0xB9,0xBD},"
+ Parent = "SMIFlashPreserveRomHoleGuid"
+ InvokeOrder = AfterParent
+End
+
+TOKEN
+ Name = "BACKUP_NVRAM_WHEN_FLASH"
+ Value = "0"
+ Help = "1 - Keep Current NVRAM, update new NVRAM to another NVRAM Region."
+ TokenType = Boolean
+ TargetH = Yes
+ Token = "FAULT_TOLERANT_NVRAM_UPDATE" "=" "1"
+End
+
+ELINK
+ Name = "CheckNVRAMArea,"
+ Parent = "SMIFlashPreUpdateList"
+ Token = "FAULT_TOLERANT_NVRAM_UPDATE" "=" "1"
+ Token = "BACKUP_NVRAM_WHEN_FLASH" "=" "0"
+ InvokeOrder = BeforeParent
+End
+
+ELINK
+ Name = "UpdateNVRAMArea,"
+ Parent = "SMIFlashEndUpdateList"
+ Token = "FAULT_TOLERANT_NVRAM_UPDATE" "=" "1"
+ Token = "BACKUP_NVRAM_WHEN_FLASH" "=" "0"
+ InvokeOrder = BeforeParent
+End