summaryrefslogtreecommitdiff
path: root/Core/EM/StatusCode/StatusCode.sdl
diff options
context:
space:
mode:
Diffstat (limited to 'Core/EM/StatusCode/StatusCode.sdl')
-rw-r--r--Core/EM/StatusCode/StatusCode.sdl280
1 files changed, 280 insertions, 0 deletions
diff --git a/Core/EM/StatusCode/StatusCode.sdl b/Core/EM/StatusCode/StatusCode.sdl
new file mode 100644
index 0000000..5ced211
--- /dev/null
+++ b/Core/EM/StatusCode/StatusCode.sdl
@@ -0,0 +1,280 @@
+TOKEN
+ Name = "StatusCode_SUPPORT"
+ Value = "1"
+ Help = "Main switch to enable Status Code support in Project"
+ TokenType = Boolean
+ TargetEQU = Yes
+ TargetMAK = Yes
+ Master = Yes
+End
+
+TOKEN
+ Name = "STRING_STATUS_SUPPORT"
+ Value = "1"
+ Help = "Enables/Disables all string-based status code routines \defined by the ReportStringStatus eLink"
+ TokenType = Boolean
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "SERIAL_STATUS_SUPPORT"
+ Value = "1"
+ Help = "Enables/Disables serail port status code routine"
+ TokenType = Boolean
+ TargetH = Yes
+ Token = "STRING_STATUS_SUPPORT" "=" "1"
+ Token = "SIO_SUPPORT" "=" "1"
+End
+
+TOKEN
+ Name = "RUNTIME_TRACE_SUPPORT"
+ Value = "1"
+ Help = "Enables/Disables support of trace messages in Runtime"
+ TokenType = Boolean
+ TargetH = Yes
+ Token = "DEBUG_MODE" "!=" "0"
+End
+
+TOKEN
+ Name = "DATAHUB_STATUS_SUPPORT"
+ Value = "1"
+ Help = "Enables/Disables logging of the status codes into a data hub"
+ TokenType = Boolean
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "CONOUT_CHECKPOINTS_SUPPORT"
+ Value = "1"
+ Help = "Enables/Disables checkpoint display on the ConOut devices\(right bottom corner)"
+ TokenType = Boolean
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "CON_OUT_CHECKPOINTS_IN_QUIET_MODE"
+ Value = "1"
+ Help = "Enables/Disables checkpoints display on the ConOut devices\in quiet mode (only in effect when CONOUT_CHECKPOINTS_SUPPORT is enabled)"
+ TokenType = Boolean
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "CHECKPOINT_PROGRESS_CODES_MAP"
+ Value = "ProgressCheckpointMap"
+ Help = "Name of the table that establishes mapping between progress codes and checkpoints.\Clone this token to support custom checkpoint lists."
+ TokenType = Expression
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "CHECKPOINT_ERROR_CODES_MAP"
+ Value = "ErrorCheckpointMap"
+ Help = "Name of the table that establishes mapping between error codes and checkpoints.\Clone this token to support custom checkpoint lists."
+ TokenType = Expression
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "BEEP_PROGRESS_CODES_MAP"
+ Value = "ProgressBeepMap"
+ Help = "Name of the table that establishes mapping between progress codes and number of beeps.\Clone this token to support custom beep codes."
+ TokenType = Expression
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "BEEP_ERROR_CODES_MAP"
+ Value = "ErrorBeepMap"
+ Help = "Name of the table that establishes mapping between error codes and number of beeps.\Clone this token to support custom beep codes."
+ TokenType = Expression
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "STATUS_CODE_VERSION"
+ Value = "16"
+ Help = "Version of the status code module."
+ TokenType = Integer
+ TargetMAK = Yes
+ TargetH = Yes
+ Lock = Yes
+End
+
+PATH
+ Name = "STATUS_CODE_DIR"
+End
+
+MODULE
+ Help = "Includes StatusCode.mak to Project"
+ File = "StatusCode.mak"
+End
+
+ELINK
+ Name = "StatusCodeInitialize"
+ Help = "This is a list of initialization routines for status code subcomponents. The routines are called during initialization of the StatusCode module\The child eLink can be in one of the following formats:\'InitFunctionName,' - The function will be called in PEI as well as in DXE\'PEI(InitFunctionName),' - The function will only be called in PEI\'DXE(InitFunctionName),' - The function will only be called in DXE\"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "ReportSimpleStatus"
+ Help = "This is a list of status code routines that consume only status code type and value. \The child eLink can be in one of the following formats:\'FunctionName,' - The function will be called in PEI as well as in DXE\'PEI(FunctionName),' - The function will only be called in PEI\'DXE(FunctionName),' - The function will only be called in DXE\"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "ReportMiscStatus"
+ Help = "This is a list of status code routines that consume all available status code data. \The child eLink can be in one of the following formats:\'FunctionName,' - The function will be called in PEI as well as in DXE\'PEI(FunctionName),' - The function will only be called in PEI\'DXE(FunctionName),' - The function will only be called in DXE\"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "CheckPointStatus,"
+ Parent = "ReportSimpleStatus"
+ Help = "This is a list of checkpoint routines. \The child eLink can be in one of the following formats:\'FunctionName,' - The function will be called in PEI as well as in DXE\'PEI(FunctionName),' - The function will only be called in PEI\'DXE(FunctionName),' - The function will only be called in DXE\"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "RUNTIME(CheckPointStatus),"
+ Parent = "ReportSimpleStatus"
+ Help = "This is a list of checkpoint routines. \The child eLink can be in one of the following formats:\'FunctionName,' - The function will be called in PEI as well as in DXE\'PEI(FunctionName),' - The function will only be called in PEI\'DXE(FunctionName),' - The function will only be called in DXE\"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "PeiInitStatusCode,"
+ Parent = "PeiCoreInitialize"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "BeepService,"
+ Parent = "ReportMiscStatus"
+ Token = "BEEP_ENABLE" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "BeepStatus,"
+ Parent = "ReportSimpleStatus"
+ Token = "BEEP_ENABLE" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "ReportStringStatus"
+ Help = "This is a list of status code routines that consume strings. \The child eLink can be in one of the following formats:\'FunctionName,' - The function will be called in PEI as well as in DXE\'PEI(FunctionName),' - The function will only be called in PEI\'DXE(FunctionName),' - The function will only be called in DXE\"
+ Token = "STRING_STATUS_SUPPORT" "=" "1"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "ReportCheckpoint"
+ Help = "This is a list of checkpoint display routines. \The child eLink can be in one of the following formats:\'FunctionName,' - The function will be called in PEI as well as in DXE\'PEI(FunctionName),' - The function will only be called in PEI\'DXE(FunctionName),' - The function will only be called in DXE\"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "Port80Checkpoint,"
+ Parent = "ReportCheckpoint"
+ Help = "Port 0x80 checkpoints"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "RUNTIME(Port80Checkpoint),"
+ Parent = "ReportCheckpoint"
+ Help = "Port 0x80 checkpoints"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "DXE(DataHubStatusCode),"
+ Parent = "ReportMiscStatus"
+ Help = "DataHub status code routine (DXE only).\Logs prorgess and error status codes into data hub"
+ Token = "DATAHUB_STATUS_SUPPORT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "SerialOutput,"
+ Parent = "ReportStringStatus"
+ Help = "Serial port string status code"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "RUNTIME(SerialOutput),"
+ Parent = "ReportStringStatus"
+ Help = "Serial port string status code"
+ Token = "SERIAL_STATUS_SUPPORT" "=" "1"
+ Token = "RUNTIME_TRACE_SUPPORT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "DXE(ConOutCheckpoint),"
+ Parent = "ReportCheckpoint"
+ Help = "ConOut Checkpoints (DXE only)"
+ Token = "CONOUT_CHECKPOINTS_SUPPORT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "SerialCheckpoint,"
+ Parent = "ReportCheckpoint"
+ Help = "Checkpoints over Serial Port"
+ Token = "SERIAL_STATUS_SUPPORT" "=" "1"
+ Disable = Yes
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "SerialStatusInit,"
+ Parent = "StatusCodeInitialize"
+ Help = "Serial port status code initialization routine"
+ Token = "SERIAL_STATUS_SUPPORT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "DXE(ConOutCpInit),"
+ Parent = "StatusCodeInitialize"
+ Help = "ConOut checkpoints initialization routine (DXE only)"
+ Token = "CONOUT_CHECKPOINTS_SUPPORT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "DXE(DataHubInit),"
+ Parent = "StatusCodeInitialize"
+ Help = "DataHub status code initialization routine (DXE only).\Logs prorgess and error status codes into data hub"
+ Token = "DATAHUB_STATUS_SUPPORT" "=" "1"
+ InvokeOrder = AfterParent
+End
+
+ELINK
+ Name = "PeiErrorCodeActions"
+ Help = "List of actions to perform when error of a particular type is detected in PEI.\The child eLink has the following format: \ERROR_ACTION(Value,Action)\where\Value - error code value (error values are defined in AmiStatusCodes.h)\Action - error action. Function with the following interface:\VOID (ERROR_CODE_ACTION)(\ IN VOID *PeiServices, IN EFI_STATUS_CODE_VALUE Value\);\Custom or standard action can be used.\The following standard actions are defined:\Halt, ResetOrHalt, ResetOrResume\"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "DxeErrorCodeActions"
+ Help = "List of actions to perform when error of a particular type is detected in DXE.\The child eLink has the following format: \ERROR_ACTION(Value,Action)\where\Value - error code value (error values are defined in AmiStatusCodes.h)\Action - error action. Function with the following interface:\VOID (ERROR_CODE_ACTION)(\ IN VOID *PeiServices, IN EFI_STATUS_CODE_VALUE Value\);\Custom or standard action can be used.\The following standard actions are defined:\Halt, ResetOrHalt, ResetOrResume\"
+ InvokeOrder = ReplaceParent
+End
+
+ELINK
+ Name = "StatusCodeSmmEntry,"
+ Parent = "RuntimeSmmInitialize"
+ InvokeOrder = BeforeParent
+End
+
+ELINK
+ Name = "DxeInitStatusCode,"
+ Parent = "DxeCoreInitialize"
+ InvokeOrder = BeforeParent
+End
+