/** @file\r
Debug Agent Library provide source-level debug capability.\r
\r
- Copyright (c) 2010, Intel Corporation\r
- All rights reserved. This program and the accompanying materials\r
- are licensed and made available under the terms and conditions of the BSD License\r
- which accompanies this distribution. The full text of the license may be found at\r
- http://opensource.org/licenses/bsd-license.php\r
+Copyright (c) 2010, Intel Corporation. All rights reserved<BR>\r
+This program and the accompanying materials are licensed and made available under \r
+the terms and conditions of the BSD License that accompanies this distribution. \r
+The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php. \r
\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
**/\r
\r
\r
#define DEBUG_AGENT_INIT_PREMEM_SEC 1\r
#define DEBUG_AGENT_INIT_POSTMEM_SEC 2\r
-#define DEBUG_AGENT_INIT_DXE 3\r
+#define DEBUG_AGENT_INIT_DXE_CORE 3\r
#define DEBUG_AGENT_INIT_SMM 4\r
-#define DEBUG_AGENT_INIT_SMI 5\r
+#define DEBUG_AGENT_INIT_ENTER_SMI 5\r
+#define DEBUG_AGENT_INIT_EXIT_SMI 6\r
+#define DEBUG_AGENT_INIT_S3 7\r
\r
/**\r
Initialize debug agent.\r
\r
This function is used to set up debug enviroment.\r
\r
- @param[in] InitFlag Init flag is used to decide initialize process.\r
- @param[in] Context Context needed according to InitFlag, it was optional.\r
+ @param[in] InitFlag Init flag is used to decide the initialize process.\r
+ @param[in] Context Context needed according to InitFlag; it was optional.\r
\r
**/\r
VOID\r
);\r
\r
/**\r
- Enable/Disable the interrupt of debug timer.\r
+ Enable/Disable the interrupt of debug timer and return the interrupt state\r
+ prior to the operation.\r
\r
If EnableStatus is TRUE, enable the interrupt of debug timer.\r
If EnableStatus is FALSE, disable the interrupt of debug timer.\r
\r
@param[in] EnableStatus Enable/Disable.\r
\r
+ @retval TRUE Debug timer interrupt were enabled on entry to this call.\r
+ @retval FALSE Debug timer interrupt were disabled on entry to this call.\r
+\r
**/\r
-VOID\r
+BOOLEAN\r
EFIAPI\r
-SetDebugTimerInterrupt (\r
+SaveAndSetDebugTimerInterrupt (\r
IN BOOLEAN EnableStatus\r
);\r
\r