public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues
@ 2016-12-05  5:27 Dandan Bi
  2016-12-05  5:27 ` [patch 1/5] MdeModulePkg/EbcDxe: Make the comments align with EDKII coding style Dandan Bi
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Dandan Bi @ 2016-12-05  5:27 UTC (permalink / raw)
  To: edk2-devel; +Cc: Jiewen Yao, Pete Batard

These patch series make the coding style of EbcDxe follow
the EDKII coding rules.

Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Pete Batard <pete@akeo.ie>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>


Dandan Bi (5):
  MdeModulePkg/EbcDxe: Make the comments align with EDKII coding style
  MdeModulePkg/EbcDxe: Initialize variable after declaration
  MdeModulePkg/EbcDxe: Make the variable name follow rules
  MdeModulePkg/EbcDxe: Avoid Non-Boolean type used as Boolean
  MdeModulePkg/EbcDxe: Add comments for functions

 .../EbcDxe/EbcDebugger/EbcDebuggerConfig.c         |   21 +
 MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c    |  223 ++---
 MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.h    |   34 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdBranch.c    |   98 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c     |  199 ++--
 .../EbcDxe/EbcDebugger/EdbCmdBreakpoint.c          |  327 +++---
 .../Universal/EbcDxe/EbcDebugger/EdbCmdExtIo.c     |  195 ++--
 .../Universal/EbcDxe/EbcDebugger/EdbCmdExtPci.c    |  161 ++-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdGo.c        |   43 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdHelp.c      |   40 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdMemory.c    |  427 +++-----
 .../Universal/EbcDxe/EbcDebugger/EdbCmdQuit.c      |   38 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdRegister.c  |   40 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdScope.c     |   70 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdStep.c      |  152 ++-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdSymbol.c    |  374 +++----
 .../Universal/EbcDxe/EbcDebugger/EdbCommand.c      |   68 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCommand.h      |   35 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCommon.h       |   15 +-
 .../Universal/EbcDxe/EbcDebugger/EdbDisasm.c       |  733 ++++++--------
 .../Universal/EbcDxe/EbcDebugger/EdbDisasm.h       |   14 +-
 .../EbcDxe/EbcDebugger/EdbDisasmSupport.c          |  950 +++++++-----------
 .../EbcDxe/EbcDebugger/EdbDisasmSupport.h          |  352 ++++++-
 .../Universal/EbcDxe/EbcDebugger/EdbHook.c         |  566 ++++-------
 .../Universal/EbcDxe/EbcDebugger/EdbHook.h         |   15 +-
 .../Universal/EbcDxe/EbcDebugger/EdbSupport.h      |  279 +++++-
 .../Universal/EbcDxe/EbcDebugger/EdbSupportFile.c  |  115 +--
 .../EbcDxe/EbcDebugger/EdbSupportString.c          |  650 ++++++------
 .../Universal/EbcDxe/EbcDebugger/EdbSupportUI.c    |  168 ++--
 .../Universal/EbcDxe/EbcDebugger/EdbSymbol.c       | 1050 ++++++--------------
 .../Universal/EbcDxe/EbcDebugger/EdbSymbol.h       |  142 ++-
 MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.c    |  117 +++
 MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.h    |  129 ++-
 MdeModulePkg/Universal/EbcDxe/EbcExecute.c         |    4 +-
 34 files changed, 3665 insertions(+), 4179 deletions(-)

-- 
1.9.5.msysgit.1



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [patch 1/5] MdeModulePkg/EbcDxe: Make the comments align with EDKII coding style
  2016-12-05  5:27 [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues Dandan Bi
@ 2016-12-05  5:27 ` Dandan Bi
  2016-12-05  5:27 ` [patch 2/5] MdeModulePkg/EbcDxe: Initialize variable after declaration Dandan Bi
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Dandan Bi @ 2016-12-05  5:27 UTC (permalink / raw)
  To: edk2-devel; +Cc: Jiewen Yao, Pete Batard

Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Pete Batard <pete@akeo.ie>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
---
 MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c    |  219 ++--
 MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.h    |   34 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdBranch.c    |   98 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c     |  199 ++--
 .../EbcDxe/EbcDebugger/EdbCmdBreakpoint.c          |  327 +++---
 .../Universal/EbcDxe/EbcDebugger/EdbCmdExtIo.c     |  195 ++--
 .../Universal/EbcDxe/EbcDebugger/EdbCmdExtPci.c    |  161 ++-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdGo.c        |   43 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdHelp.c      |   40 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdMemory.c    |  427 +++-----
 .../Universal/EbcDxe/EbcDebugger/EdbCmdQuit.c      |   38 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdRegister.c  |   40 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdScope.c     |   70 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdStep.c      |  152 ++-
 .../Universal/EbcDxe/EbcDebugger/EdbCmdSymbol.c    |  374 +++----
 .../Universal/EbcDxe/EbcDebugger/EdbCommand.c      |   68 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCommand.h      |   35 +-
 .../Universal/EbcDxe/EbcDebugger/EdbCommon.h       |   15 +-
 .../Universal/EbcDxe/EbcDebugger/EdbDisasm.c       |  603 +++++------
 .../Universal/EbcDxe/EbcDebugger/EdbDisasm.h       |   14 +-
 .../EbcDxe/EbcDebugger/EdbDisasmSupport.c          |  946 +++++++-----------
 .../EbcDxe/EbcDebugger/EdbDisasmSupport.h          |   14 +-
 .../Universal/EbcDxe/EbcDebugger/EdbHook.c         |  557 ++++-------
 .../Universal/EbcDxe/EbcDebugger/EdbHook.h         |   15 +-
 .../Universal/EbcDxe/EbcDebugger/EdbSupport.h      |   20 +-
 .../Universal/EbcDxe/EbcDebugger/EdbSupportFile.c  |  115 +--
 .../EbcDxe/EbcDebugger/EdbSupportString.c          |  332 +++----
 .../Universal/EbcDxe/EbcDebugger/EdbSupportUI.c    |   87 +-
 .../Universal/EbcDxe/EbcDebugger/EdbSymbol.c       | 1046 ++++++--------------
 .../Universal/EbcDxe/EbcDebugger/EdbSymbol.h       |   14 +-
 30 files changed, 2319 insertions(+), 3979 deletions(-)

diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c
index 6485060..6953f16 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c
@@ -1,23 +1,17 @@
-/*++
+/** @file
 
-Copyright (c) 2007 - 2016, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007 - 2016, 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.
 
-Module Name:
-
-  Ebc.c
-
-Abstract:
-
---*/
+**/
 
 #include <Uefi.h>
 #include "Edb.h"
 
 EFI_DEBUGGER_PRIVATE_DATA mDebuggerPrivate = {
@@ -64,31 +58,23 @@ CHAR16 *mExceptionStr[] = {
   L"EXCEPT_EBC_INSTRUCTION_ENCODING",
   L"EXCEPT_EBC_BAD_BREAK",
   L"EXCEPT_EBC_SINGLE_STEP",
 };
 
+/**
+
+  Clear all the breakpoint.
+
+  @param DebuggerPrivate    EBC Debugger private data structure
+  @param NeedRemove         Whether need to remove all the breakpoint
+
+**/
 VOID
 EdbClearAllBreakpoint (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     BOOLEAN                   NeedRemove
   )
-/*++
-
-Routine Description:
-
-  Clear all the breakpoint
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  NeedRemove      - Whether need to remove all the breakpoint
-
-Returns:
-
-  None
-
---*/
 {
   UINTN    Index;
 
   //
   // Patch all the breakpoint
@@ -115,29 +101,21 @@ Returns:
   // Done
   //
   return ;
 }
 
+/**
+
+  Set all the breakpoint.
+
+  @param DebuggerPrivate    EBC Debugger private data structure
+
+**/
 VOID
 EdbSetAllBreakpoint (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate
   )
-/*++
-
-Routine Description:
-
-  Set all the breakpoint
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-
-Returns:
-
-  None
-
---*/
 {
   UINTN    Index;
   UINT16   Data16;
 
   //
@@ -171,32 +149,24 @@ Returns:
   // Done
   //
   return ;
 }
 
-VOID
-EdbCheckBreakpoint (
-  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
-  IN     EFI_SYSTEM_CONTEXT        SystemContext
-  )
-/*++
-
-Routine Description:
+/**
 
   Check all the breakpoint, if match, then set status flag, and record current breakpoint.
   Then clear all breakpoint to let user see a clean memory
 
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  SystemContext   - EBC system context.
+  @param   DebuggerPrivate    EBC Debugger private data structure
+  @param   SystemContext      EBC system context.
 
-Returns:
-
-  None
-
---*/
+**/
+VOID
+EdbCheckBreakpoint (
+  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
+  IN     EFI_SYSTEM_CONTEXT        SystemContext
+  )
 {
   UINT64   Address;
   UINTN    Index;
   BOOLEAN  IsHitBreakpoint;
 
@@ -275,29 +245,20 @@ Returns:
   // Done
   //
   return ;
 }
 
+/**
+  clear all the symbol.
+
+  @param DebuggerPrivate    EBC Debugger private data structure
+
+**/
 VOID
 EdbClearSymbol (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate
   )
-/*++
-
-Routine Description:
-
-  clear all the symbol
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-
-Returns:
-
-  None
-
---*/
 {
   EFI_DEBUGGER_SYMBOL_CONTEXT *DebuggerSymbolContext;
   EFI_DEBUGGER_SYMBOL_OBJECT  *Object;
   UINTN                       ObjectIndex;
   UINTN                       Index;
@@ -330,35 +291,27 @@ Returns:
   DebuggerSymbolContext->ObjectCount = 0;
 
   return ;
 }
 
+/**
+
+  Initialize Debugger private data structure
+
+  @param DebuggerPrivate   EBC Debugger private data structure
+  @param ExceptionType     Exception type.
+  @param SystemContext     EBC system context.
+  @param Initialized       Whether the DebuggerPrivate data is initialized.
+
+**/
 EFI_STATUS
 InitDebuggerPrivateData (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   IN     BOOLEAN                   Initialized
   )
-/*++
-
-Routine Description:
-
-  Initialize Debugger private data structure
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-  Initialized     - Whether the DebuggerPrivate data is initialized.
-
-Returns:
-
-  None
-
---*/
 {
   //
   // clear STEP flag in any condition.
   //
   if (SystemContext.SystemContextEbc->Flags & ((UINT64) VMFLAGS_STEP)) {
@@ -402,35 +355,27 @@ Returns:
   // Done
   //
   return EFI_SUCCESS;
 }
 
+/**
+
+  De-initialize Debugger private data structure.
+
+  @param DebuggerPrivate   EBC Debugger private data structure
+  @param ExceptionType     Exception type.
+  @param SystemContext     EBC system context.
+  @param Initialized       Whether the DebuggerPrivate data is initialized.
+
+**/
 EFI_STATUS
 DeinitDebuggerPrivateData (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   IN     BOOLEAN                   Initialized
   )
-/*++
-
-Routine Description:
-
-  De-initialize Debugger private data structure
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-  Initialized     - Whether the DebuggerPrivate data is initialized.
-
-Returns:
-
-  None
-
---*/
 {
   if (!Initialized) {
     //
     // If it does not want initialized state, de-init everything
     //
@@ -466,35 +411,27 @@ Returns:
   // Done
   //
   return EFI_SUCCESS;
 }
 
+/**
+
+  Print the reason of current break to EbcDebugger.
+
+  @param DebuggerPrivate   EBC Debugger private data structure
+  @param ExceptionType     Exception type.
+  @param SystemContext     EBC system context.
+  @param Initialized       Whether the DebuggerPrivate data is initialized.
+
+**/
 VOID
 PrintExceptionReason (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   IN     BOOLEAN                   Initialized
   )
-/*++
-
-Routine Description:
-
-  Print the reason of current break to EbcDebugger.
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-  Initialized     - Whether the DebuggerPrivate data is initialized.
-
-Returns:
-
-  None
-
---*/
 {
   //
   // Print break status
   //
   if ((DebuggerPrivate->StatusFlags & EFI_DEBUG_FLAG_EBC_GT) == EFI_DEBUG_FLAG_EBC_GT) {
@@ -527,34 +464,26 @@ Returns:
   }
 
   return ;
 }
 
-VOID
-EFIAPI
-EdbExceptionHandler (
-  IN     EFI_EXCEPTION_TYPE   ExceptionType,
-  IN OUT EFI_SYSTEM_CONTEXT   SystemContext
-  )
-/*++
-
-Routine Description:
+/**
 
   The default Exception Callback for the VM interpreter.
   In this function, we report status code, and print debug information
   about EBC_CONTEXT, then dead loop.
 
-Arguments:
-
-  InterruptType - Interrupt type.
-  SystemContext - EBC system context.
-
-Returns:
-
-  None
+  @param ExceptionType    Exception type.
+  @param SystemContext    EBC system context.
 
---*/
+**/
+VOID
+EFIAPI
+EdbExceptionHandler (
+  IN     EFI_EXCEPTION_TYPE   ExceptionType,
+  IN OUT EFI_SYSTEM_CONTEXT   SystemContext
+  )
 {
   CHAR16                  InputBuffer[EFI_DEBUG_INPUS_BUFFER_SIZE];
   CHAR16                  *CommandArg;
   EFI_DEBUGGER_COMMAND    DebuggerCommand;
   EFI_DEBUG_STATUS        DebugStatus;
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.h
index 91b507e..a08b1b0 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.h
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  Edb.h
-
-Abstract:
-
-
---*/
+**/
 
 #ifndef _EFI_EDB_H_
 #define _EFI_EDB_H_
 
 #include "EdbCommon.h"
@@ -28,19 +22,33 @@ Abstract:
 
 #define EFI_DEBUG_RETURN    1
 #define EFI_DEBUG_BREAK     2
 #define EFI_DEBUG_CONTINUE  3
 
-//
-// Function
-//
+/**
+  Driver Entry point.
+
+  @param  ImageHandle  ImageHandle of the loaded driver.
+  @param  SystemTable  Pointer to the EFI System Table.
+
+**/
 EFI_STATUS
 EfiDebuggerEntrypoint (
   IN EFI_HANDLE                     ImageHandle,
   IN EFI_SYSTEM_TABLE               *SystemTable
   );
 
+/**
+
+  The default Exception Callback for the VM interpreter.
+  In this function, we report status code, and print debug information
+  about EBC_CONTEXT, then dead loop.
+
+  @param ExceptionType    Exception type.
+  @param SystemContext    EBC system context.
+
+**/
 VOID
 EFIAPI
 EdbExceptionHandler (
   IN     EFI_EXCEPTION_TYPE   ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT   SystemContext
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBranch.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBranch.c
index ab07f72..e47bea1 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBranch.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBranch.c
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCmdBranch.c
-
-Abstract:
-
-
---*/
+**/
 
 #include "Edb.h"
 
 CHAR16 *mBranchTypeStr[] = {
   L"(CALL)",
@@ -26,62 +20,50 @@ CHAR16 *mBranchTypeStr[] = {
   L"(RET)",
   L"(JMP)",
   L"(JMP8)",
 };
 
-CHAR16 *
-EdbBranchTypeToStr (
-  IN EFI_DEBUGGER_BRANCH_TYPE  Type
-  )
-/*++
-
-Routine Description:
-
-  Comvert Branch Type to string
+/**
 
-Arguments:
+  Comvert Branch Type to string.
 
-  Type            - Branch Type
+  @param Type        Branch Type
 
-Returns:
+  @retval String     string of Branch Type.
 
-  String
-
---*/
+**/
+CHAR16 *
+EdbBranchTypeToStr (
+  IN EFI_DEBUGGER_BRANCH_TYPE  Type
+  )
 {
   if (Type < 0 || Type >= EfiDebuggerBranchTypeEbcMax) {
     return L"(Unknown Type)";
   }
 
   return mBranchTypeStr [Type];
 }
 
+/**
+
+  DebuggerCommand - CallStack.
+
+  @param  CommandArg         The argument for this command
+  @param  DebuggerPrivate    EBC Debugger private data structure
+  @param  ExceptionType      Exception type.
+  @param  SystemContext      EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE   formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerCallStack (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - CallStack
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   INTN                           Index;
   UINTN                          SubIndex;
   CHAR8                          *FuncName;
   EFI_DEBUGGER_CALLSTACK_CONTEXT *CallStackEntry;
@@ -254,35 +236,29 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - InstructionBranch.
+
+  @param  CommandArg             The argument for this command
+  @param  DebuggerPrivate        EBC Debugger private data structure
+  @param  ExceptionType          Exception type.
+  @param  SystemContext          EBC system context.
+
+  @retval  EFI_DEBUG_CONTINUE    formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerInstructionBranch (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - InstructionBranch
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   UINTN  Index;
 
   //
   // Check argument
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c
index ab3c7d8..5759a3b 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c
@@ -1,52 +1,41 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCmdBreak.c
+**/
 
-Abstract:
+#include "Edb.h"
 
 
---*/
+/**
 
-#include "Edb.h"
+  DebuggerCommand - BreakOnCALL.
+
+  @param  CommandArg          The argument for this command
+  @param  DebuggerPrivate     EBC Debugger private data structure
+  @param  ExceptionType       Exception type.
+  @param  SystemContext       EBC system context.
 
+  @retval EFI_DEBUG_CONTINUE  formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerBreakOnCALL (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - BreakOnCALL
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   //
   // Check argument
   //
   if (CommandArg == NULL) {
@@ -69,35 +58,30 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand    BreakOnCALLEX.
+
+
+  @param  CommandArg           The argument for this command
+  @param  DebuggerPrivate      EBC Debugger private data structure
+  @param  ExceptionType        Exceptiont type.
+  @param  SystemContext        EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE   formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerBreakOnCALLEX (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - BreakOnCALLEX
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   //
   // Check argument
   //
   if (CommandArg == NULL) {
@@ -120,35 +104,30 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - BreakOnRET.
+
+
+  @param  CommandArg          The argument for this command
+  @param  DebuggerPrivate     EBC Debugger private data structure
+  @param  ExceptionType       Exception type.
+  @param  SystemContext       EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE  formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerBreakOnRET (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - BreakOnRET
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   //
   // Check argument
   //
   if (CommandArg == NULL) {
@@ -171,35 +150,30 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - BreakOnEntrypoint.
+
+
+  @param  CommandArg           The argument for this command
+  @param  DebuggerPrivate      EBC Debugger private data structure
+  @param  ExceptionType        Exception type.
+  @param  SystemContext        EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE   formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerBreakOnEntrypoint (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - BreakOnEntrypoint
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   //
   // Check argument
   //
   if (CommandArg == NULL) {
@@ -222,35 +196,32 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
-EFI_DEBUG_STATUS
-DebuggerBreakOnThunk (
-  IN     CHAR16                    *CommandArg,
-  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
-  IN     EFI_EXCEPTION_TYPE        ExceptionType,
-  IN OUT EFI_SYSTEM_CONTEXT        SystemContext
-  )
-/*++
+/**
 
-Routine Description:
 
-  DebuggerCommand - BreakOnThunk
+  DebuggerCommand - BreakOnThunk.
 
-Arguments:
 
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
+  @param  CommandArg          The argument for this command
+  @param  DebuggerPrivate     EBC Debugger private data structure
+  @param  ExceptionType       Exception type.
+  @param  SystemContext       EBC system context.
 
-Returns:
 
-  EFI_DEBUG_CONTINUE - formal return value
+  @retval EFI_DEBUG_CONTINUE  formal return value
 
---*/
+**/
+EFI_DEBUG_STATUS
+DebuggerBreakOnThunk (
+  IN     CHAR16                    *CommandArg,
+  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
+  IN     EFI_EXCEPTION_TYPE        ExceptionType,
+  IN OUT EFI_SYSTEM_CONTEXT        SystemContext
+  )
 {
   //
   // Check argument
   //
   if (CommandArg == NULL) {
@@ -273,35 +244,31 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - BreakOnKey.
+
+
+  @param  CommandArg           The argument for this command
+  @param  DebuggerPrivate      EBC Debugger private data structure
+  @param  ExceptionType        Exception type.
+  @param  SystemContext        EBC system context.
+
+
+  @retval EFI_DEBUG_CONTINUE   formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerBreakOnKey (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - BreakOnKey
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   //
   // Check argument
   //
   if (CommandArg == NULL) {
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreakpoint.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreakpoint.c
index 7c0122e..090c647 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreakpoint.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreakpoint.c
@@ -1,47 +1,35 @@
-/*++
+/** @file
 
-Copyright (c) 2007 - 2016, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007 - 2016, 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.
 
-Module Name:
 
-  EdbCmdBreakpoint.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
 
---*/
+  Check whether current IP is EBC BREAK3 instruction.
 
-#include "Edb.h"
+  @param  Address    EBC IP address.
 
+  @retval TRUE       Current IP is EBC BREAK3 instruction
+  @retval FALSE      Current IP is not EBC BREAK3 instruction
+
+**/
 BOOLEAN
 IsEBCBREAK3 (
   IN UINTN            Address
   )
-/*++
-
-Routine Description:
-
-  Check whether current IP is EBC BREAK3 instruction
-
-Arguments:
-
-  Address   - EBC IP address.
-
-Returns:
-
-  TRUE  - Current IP is EBC BREAK3 instruction
-  FALSE - Current IP is not EBC BREAK3 instruction
-
---*/
 {
   if (GET_OPCODE(Address) != OPCODE_BREAK) {
     return FALSE;
   }
 
@@ -50,32 +38,26 @@ Returns:
   } else {
     return TRUE;
   }
 }
 
+/**
+
+  Check whether the Address is already set in breakpoint.
+
+  @param  DebuggerPrivate   EBC Debugger private data structure
+  @param  Address           Breakpoint Address
+
+  @retval TRUE              breakpoint is found
+  @retval FALSE             breakpoint is not found
+
+**/
 BOOLEAN
 DebuggerBreakpointIsDuplicated (
   IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN UINTN                     Address
   )
-/*++
-
-Routine Description:
-
-  Check whether the Address is already set in breakpoint
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  Address         - Breakpoint Address
-
-Returns:
-
-  TRUE          - breakpoint is found
-  FALSE         - breakpoint is not found
-
---*/
 {
   UINTN  Index;
 
   //
   // Go through each breakpoint context
@@ -93,33 +75,27 @@ Returns:
   // Not found
   //
   return FALSE;
 }
 
+/**
+
+  Add this breakpoint.
+
+  @param  DebuggerPrivate   EBC Debugger private data structure
+  @param  Address           Breakpoint Address
+
+  @retval EFI_SUCCESS            breakpoint added successfully
+  @retval EFI_ALREADY_STARTED    breakpoint is already added
+  @retval EFI_OUT_OF_RESOURCES   all the breakpoint entries are used
+
+**/
 EFI_STATUS
 DebuggerBreakpointAdd (
   IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN UINTN                     Address
   )
-/*++
-
-Routine Description:
-
-  Add this breakpoint
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  Address         - Breakpoint Address
-
-Returns:
-
-  EFI_SUCCESS          - breakpoint added successfully
-  EFI_ALREADY_STARTED  - breakpoint is already added
-  EFI_OUT_OF_RESOURCES - all the breakpoint entries are used
-
---*/
 {
   //
   // Check duplicated breakpoint
   //
   if (DebuggerBreakpointIsDuplicated (DebuggerPrivate, Address)) {
@@ -158,32 +134,26 @@ Returns:
   // Done
   //
   return EFI_SUCCESS;
 }
 
+/**
+
+  Delete this breakpoint.
+
+  @param  DebuggerPrivate   EBC Debugger private data structure
+  @param  Index             Breakpoint Index
+
+  @retval EFI_SUCCESS     breakpoint deleted successfully
+  @retval EFI_NOT_FOUND   breakpoint not found
+
+**/
 EFI_STATUS
 DebuggerBreakpointDel (
   IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN UINTN                     Index
   )
-/*++
-
-Routine Description:
-
-  Delete this breakpoint
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  Index           - Breakpoint Index
-
-Returns:
-
-  EFI_SUCCESS   - breakpoint deleted successfully
-  EFI_NOT_FOUND - breakpoint not found
-
---*/
 {
   UINTN    BpIndex;
 
   if ((Index >= EFI_DEBUGGER_BREAKPOINT_MAX) ||
       (Index >= DebuggerPrivate->DebuggerBreakpointCount)) {
@@ -207,32 +177,26 @@ Returns:
   // Done
   //
   return EFI_SUCCESS;
 }
 
+/**
+
+  Disable this breakpoint.
+
+  @param  DebuggerPrivate   EBC Debugger private data structure
+  @param  Index             Breakpoint Index
+
+  @retval EFI_SUCCESS     breakpoint disabled successfully
+  @retval EFI_NOT_FOUND   breakpoint not found
+
+**/
 EFI_STATUS
 DebuggerBreakpointDis (
   IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN UINTN                     Index
   )
-/*++
-
-Routine Description:
-
-  Disable this breakpoint
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  Index           - Breakpoint Index
-
-Returns:
-
-  EFI_SUCCESS   - breakpoint disabled successfully
-  EFI_NOT_FOUND - breakpoint not found
-
---*/
 {
   if ((Index >= EFI_DEBUGGER_BREAKPOINT_MAX) ||
       (Index >= DebuggerPrivate->DebuggerBreakpointCount)) {
     return EFI_NOT_FOUND;
   }
@@ -243,32 +207,26 @@ Returns:
   DebuggerPrivate->DebuggerBreakpointContext[Index].State = FALSE;
 
   return EFI_SUCCESS;
 }
 
+/**
+
+  Enable this breakpoint.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  Index           - Breakpoint Index
+
+  @retval EFI_SUCCESS   - breakpoint enabled successfully
+  @retval EFI_NOT_FOUND - breakpoint not found
+
+**/
 EFI_STATUS
 DebuggerBreakpointEn (
   IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN UINTN                     Index
   )
-/*++
-
-Routine Description:
-
-  Enable this breakpoint
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  Index           - Breakpoint Index
-
-Returns:
-
-  EFI_SUCCESS   - breakpoint enabled successfully
-  EFI_NOT_FOUND - breakpoint not found
-
---*/
 {
   if ((Index >= EFI_DEBUGGER_BREAKPOINT_MAX) ||
       (Index >= DebuggerPrivate->DebuggerBreakpointCount)) {
     return EFI_NOT_FOUND;
   }
@@ -279,35 +237,29 @@ Returns:
   DebuggerPrivate->DebuggerBreakpointContext[Index].State = TRUE;
 
   return EFI_SUCCESS;
 }
 
+/**
+
+  DebuggerCommand - BreakpointList.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerBreakpointList (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - BreakpointList
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   UINTN Index;
 
   //
   // Check breakpoint cound
@@ -345,35 +297,29 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - BreakpointSet.
+
+  @param  CommandArg        The argument for this command
+  @param  DebuggerPrivate   EBC Debugger private data structure
+  @param  ExceptionType     Exception type.
+  @param  SystemContext     EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerBreakpointSet (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - BreakpointSet
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   UINTN      Address;
   EFI_STATUS Status;
 
   if (CommandArg == NULL) {
@@ -409,35 +355,29 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - BreakpointClear
+
+  @param  CommandArg        The argument for this command
+  @param  DebuggerPrivate   EBC Debugger private data structure
+  @param  ExceptionType     Exception type.
+  @param  SystemContext     EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE   formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerBreakpointClear (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - BreakpointClear
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   UINTN      Index;
   EFI_STATUS Status;
 
   if (CommandArg == NULL) {
@@ -482,35 +422,29 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - BreakpointDisable
+
+  @param  CommandArg        The argument for this command
+  @param  DebuggerPrivate   EBC Debugger private data structure
+  @param  ExceptionType     Exception type.
+  @param  SystemContext     EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE   formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerBreakpointDisable (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - BreakpointDisable
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   UINTN      Index;
   EFI_STATUS Status;
 
   if (CommandArg == NULL) {
@@ -550,35 +484,28 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+  DebuggerCommand - BreakpointEnable.
+
+  @param  CommandArg        The argument for this command
+  @param  DebuggerPrivate   EBC Debugger private data structure
+  @param  ExceptionType     Exception type.
+  @param  SystemContext     EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE   formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerBreakpointEnable (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - BreakpointEnable
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   UINTN      Index;
   EFI_STATUS Status;
 
   if (CommandArg == NULL) {
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdExtIo.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdExtIo.c
index 5a3fe57..a263d23 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdExtIo.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdExtIo.c
@@ -1,217 +1,180 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCmdExtIo.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
 
---*/
+  DebuggerCommand - IB.
 
-#include "Edb.h"
+  @param  CommandArg        The argument for this command
+  @param  DebuggerPrivate   EBC Debugger private data structure
+  @param  ExceptionType     Exception type.
+  @param  SystemContext     EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE   formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerExtIoIB (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - IB
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+
+/**
+
+  DebuggerCommand - IW.
+
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval  EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerExtIoIW (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - IW
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - ID.
+
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval  EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerExtIoID (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - ID
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - OB.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerExtIoOB (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - OB
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+
+/**
+
+  DebuggerCommand - OW.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerExtIoOW (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - OW
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+
+/**
+
+  DebuggerCommand - OD.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
+
+  @retval  EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerExtIoOD (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - OD
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdExtPci.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdExtPci.c
index adb29f8..07b5e48 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdExtPci.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdExtPci.c
@@ -1,184 +1,149 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCmdExtPci.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
 
---*/
+  DebuggerCommand - PCIL.
 
-#include "Edb.h"
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
 
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerExtPciPCIL (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - PCIL
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - PCID.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerExtPciPCID (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - PCID
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - CFGB.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerExtPciCFGB (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - CFGB
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+
+/**
+
+  DebuggerCommand - CFGW.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerExtPciCFGW (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - CFGW
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - CFGD.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerExtPciCFGD (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - CFGD
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EDBPrint (L"Unsupported\n");
   //
   // TBD
   //
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdGo.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdGo.c
index d5dee8a..8c68879 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdGo.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdGo.c
@@ -1,53 +1,42 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCmdGo.c
 
-Abstract:
+**/
 
+#include "Edb.h"
 
---*/
+/**
 
-#include "Edb.h"
+  DebuggerCommand - Go.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
 
+  @retval EFI_DEBUG_BREAK    - formal return value
+  @retval EFI_DEBUG_CONTINUE - something wrong
+
+**/
 EFI_DEBUG_STATUS
 DebuggerGo (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - Go
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_BREAK    - formal return value
-  EFI_DEBUG_CONTINUE - something wrong
-
---*/
 {
   UINTN        Address;
   CHAR16       *CommandStr;
   EFI_STATUS   Status;
 
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdHelp.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdHelp.c
index ae5acd7..5cbed02 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdHelp.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdHelp.c
@@ -1,52 +1,40 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCmdHelp.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
 
---*/
+  DebuggerCommand - Help.
 
-#include "Edb.h"
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerHelp (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - Help
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   UINTN Index;
 
   //
   // if no argument, print all the command title
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdMemory.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdMemory.c
index 65b220a..74c17bd 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdMemory.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdMemory.c
@@ -1,48 +1,37 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCmdMemory.c
+**/
 
-Abstract:
+#include "Edb.h"
 
 
---*/
+/**
 
-#include "Edb.h"
+  Display memory unit.
+
+  @param  Address         - Memory Address
+  @param  Width           - Memory Width
 
+  @return Length of the memory unit
+
+**/
 UINTN
 EdbDisplayMemoryUnit (
   IN UINTN           Address,
   IN EDB_DATA_WIDTH  Width
   )
-/*++
-
-Routine Description:
-
-  Display memory unit
-
-Arguments:
-
-  Address         - Memory Address
-  Width           - Memory Width
-
-Returns:
-
-  Length of the memory unit
-
---*/
 {
   UINT8  Data8;
   UINT16 Data16;
   UINT32 Data32;
   UINT64 Data64;
@@ -76,33 +65,25 @@ Returns:
   // something wrong
   //
   return 0;
 }
 
+/**
+
+  Display memory.
+
+  @param  Address         - Memory Address
+  @param  Count           - Memory Count
+  @param  Width           - Memory Width
+
+**/
 VOID
 EdbDisplayMemory (
   IN UINTN          Address,
   IN UINTN          Count,
   IN EDB_DATA_WIDTH Width
   )
-/*++
-
-Routine Description:
-
-  Display memory
-
-Arguments:
-
-  Address         - Memory Address
-  Count           - Memory Count
-  Width           - Memory Width
-
-Returns:
-
-  None
-
---*/
 {
   UINTN  LineNumber;
   UINTN  ByteNumber;
   UINTN  LineIndex;
   UINTN  ByteIndex;
@@ -180,33 +161,25 @@ Returns:
   }
 
   return ;
 }
 
+/**
+
+  Entry memory.
+
+  @param  Address         - Memory Address
+  @param  Value           - Memory Value
+  @param  Width           - Memory Width
+
+**/
 VOID
 EdbEnterMemory (
   IN UINTN          Address,
   IN VOID           *Value,
   IN EDB_DATA_WIDTH Width
   )
-/*++
-
-Routine Description:
-
-  Entry memory
-
-Arguments:
-
-  Address         - Memory Address
-  Value           - Memory Value
-  Width           - Memory Width
-
-Returns:
-
-  None
-
---*/
 {
   switch (Width) {
   case EdbWidthUint8:
     CopyMem ((VOID *)Address, Value, sizeof(UINT8));
     break;
@@ -224,34 +197,28 @@ Returns:
   }
 
   return ;
 }
 
+/**
+
+  Get memory address and count.
+
+  @param  CommandArg      - The argument for this command
+  @param  Address         - Memory Address
+  @param  Count           - Memory Count
+
+  @retval EFI_SUCCESS           - memory address and count are got
+  @retval EFI_INVALID_PARAMETER - something wrong
+
+**/
 EFI_STATUS
 EdbGetMemoryAddressCount (
   IN CHAR16    *CommandArg,
   IN UINTN     *Address,
   IN UINTN     *Count
   )
-/*++
-
-Routine Description:
-
-  Get memory address and count
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  Address         - Memory Address
-  Count           - Memory Count
-
-Returns:
-
-  EFI_SUCCESS           - memory address and count are got
-  EFI_INVALID_PARAMETER - something wrong
-
---*/
 {
   CHAR16       *CommandStr;
   UINTN        MemAddress;
   EFI_STATUS   Status;
 
@@ -291,34 +258,28 @@ Returns:
   // Done
   //
   return EFI_SUCCESS;
 }
 
+/**
+
+  Get memory address and value.
+
+  @param  CommandArg      - The argument for this command
+  @param  Address         - Memory Address
+  @param  Value           - Memory Value
+
+  @retval EFI_SUCCESS           - memory address and value are got
+  @retval EFI_INVALID_PARAMETER - something wrong
+
+**/
 EFI_STATUS
 EdbGetMemoryAddressValue (
   IN CHAR16    *CommandArg,
   IN UINTN     *Address,
   IN UINT64    *Value
   )
-/*++
-
-Routine Description:
-
-  Get memory address and value
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  Address         - Memory Address
-  Value           - Memory Value
-
-Returns:
-
-  EFI_SUCCESS           - memory address and value are got
-  EFI_INVALID_PARAMETER - something wrong
-
---*/
 {
   CHAR16       *CommandStr;
   UINTN        MemAddress;
   EFI_STATUS   Status;
 
@@ -358,31 +319,25 @@ Returns:
   // Done
   //
   return EFI_SUCCESS;
 }
 
+/**
+
+  Display memory.
+
+  @param  CommandArg      - The argument for this command
+  @param  Width           - Memory Width
+
+  @retval EFI_DEBUG_RETURN   - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerMemoryDisplay (
   IN     CHAR16                    *CommandArg,
   IN     EDB_DATA_WIDTH            Width
   )
-/*++
-
-Routine Description:
-
-  Display memory
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  Width           - Memory Width
-
-Returns:
-
-  EFI_DEBUG_RETURN   - formal return value
-
---*/
 {
   EFI_STATUS Status;
   UINTN      Address;
   UINTN      Count;
 
@@ -403,31 +358,25 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  Enter memory.
+
+  @param  CommandArg      - The argument for this command
+  @param  Width           - Memory Width
+
+  @retval EFI_DEBUG_RETURN   - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerMemoryEnter (
   IN     CHAR16                    *CommandArg,
   IN     EDB_DATA_WIDTH            Width
   )
-/*++
-
-Routine Description:
-
-  Enter memory
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  Width           - Memory Width
-
-Returns:
-
-  EFI_DEBUG_RETURN   - formal return value
-
---*/
 {
   EFI_STATUS Status;
   UINTN      Address;
   UINT64     Value;
 
@@ -448,236 +397,188 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - DB.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_RETURN   - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerMemoryDB (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - DB
+{
+  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint8);
+}
 
-Arguments:
+/**
 
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
+  DebuggerCommand - DW.
 
-Returns:
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
 
-  EFI_DEBUG_RETURN   - formal return value
-
---*/
-{
-  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint8);
-}
+  @retval EFI_DEBUG_RETURN   - formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerMemoryDW (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - DW
+{
+  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint16);
+}
 
-Arguments:
+/**
 
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
+  DebuggerCommand - DD.
 
-Returns:
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
 
-  EFI_DEBUG_RETURN   - formal return value
-
---*/
-{
-  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint16);
-}
+  @retval EFI_DEBUG_RETURN   - formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerMemoryDD (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - DD
-
-Arguments:
+{
+  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint32);
+}
 
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
+/**
 
-Returns:
+  DebuggerCommand - DQ.
 
-  EFI_DEBUG_RETURN   - formal return value
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
 
---*/
-{
-  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint32);
-}
+  @retval EFI_DEBUG_RETURN   - formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerMemoryDQ (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - DQ
-
-Arguments:
+{
+  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint64);
+}
 
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
+/**
 
-Returns:
+  DebuggerCommand - EB.
 
-  EFI_DEBUG_RETURN   - formal return value
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
 
---*/
-{
-  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint64);
-}
+  @retval EFI_DEBUG_RETURN   - formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerMemoryEB (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - EB
+{
+  return DebuggerMemoryEnter (CommandArg, EdbWidthUint8);
+}
 
-Arguments:
+/**
 
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
+  DebuggerCommand - EW.
 
-Returns:
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Interrupt type.
+  @param  SystemContext   - EBC system context.
 
-  EFI_DEBUG_RETURN   - formal return value
-
---*/
-{
-  return DebuggerMemoryEnter (CommandArg, EdbWidthUint8);
-}
+  @retval EFI_DEBUG_RETURN   - formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerMemoryEW (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - EW
+{
+  return DebuggerMemoryEnter (CommandArg, EdbWidthUint16);
+}
 
-Arguments:
+/**
 
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
+  DebuggerCommand - ED.
 
-Returns:
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
 
-  EFI_DEBUG_RETURN   - formal return value
-
---*/
-{
-  return DebuggerMemoryEnter (CommandArg, EdbWidthUint16);
-}
+  @retval EFI_DEBUG_RETURN   - formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerMemoryED (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - ED
-
-Arguments:
+{
+  return DebuggerMemoryEnter (CommandArg, EdbWidthUint32);
+}
 
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
+/**
 
-Returns:
+  DebuggerCommand - EQ.
 
-  EFI_DEBUG_RETURN   - formal return value
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
 
---*/
-{
-  return DebuggerMemoryEnter (CommandArg, EdbWidthUint32);
-}
+  @retval EFI_DEBUG_RETURN   - formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerMemoryEQ (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - EQ
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_RETURN   - formal return value
-
---*/
 {
   return DebuggerMemoryEnter (CommandArg, EdbWidthUint64);
 }
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdQuit.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdQuit.c
index d3a7a6d..fa53eb8 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdQuit.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdQuit.c
@@ -1,9 +1,9 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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,
@@ -14,37 +14,31 @@ Module Name:
   EdbCmdQuit.c
 
 Abstract:
 
 
---*/
+**/
 
 #include "Edb.h"
 
+/**
+
+  DebuggerCommand - Quit
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_RETURN   - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerQuit (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - Quit
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_RETURN   - formal return value
-
---*/
 {
   return EFI_DEBUG_RETURN;
 }
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdRegister.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdRegister.c
index 3d9fdae..7755024 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdRegister.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdRegister.c
@@ -1,52 +1,40 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCmdRegister.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
 
---*/
+  DebuggerCommand - Register.
 
-#include "Edb.h"
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerRegister (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - Register
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   CHAR16  *RegName;
   CHAR16  *RegValStr;
   UINT64  RegVal;
 
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdScope.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdScope.c
index 9b62c52..49a21bd 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdScope.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdScope.c
@@ -1,52 +1,40 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCmdScope.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
 
---*/
+  DebuggerCommand - Scope.
 
-#include "Edb.h"
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
 
+**/
 EFI_DEBUG_STATUS
 DebuggerScope (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - Scope
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EFI_STATUS   Status;
   UINTN        Address;
 
   if (CommandArg == NULL) {
@@ -77,35 +65,29 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - List.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerList (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - List
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   if (CommandArg == NULL) {
     EdbShowDisasm (DebuggerPrivate, SystemContext);
   } else {
     //
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdStep.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdStep.c
index 186c88d..f4ecf5d 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdStep.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdStep.c
@@ -1,47 +1,35 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCmdStep.c
+**/
 
-Abstract:
+#include "Edb.h"
+
+/**
 
+  Check whether current IP is EBC CALL instruction (NOTE: CALLEX is exclusive)
 
---*/
+  @param  Address   - EBC IP address.
 
-#include "Edb.h"
+  @retval TRUE  - Current IP is EBC CALL instruction
+  @retval FALSE - Current IP is not EBC CALL instruction
 
+**/
 BOOLEAN
 IsEBCCALL (
   IN UINTN            Address
   )
-/*++
-
-Routine Description:
-
-  Check whether current IP is EBC CALL instruction (NOTE: CALLEX is exclusive)
-
-Arguments:
-
-  Address   - EBC IP address.
-
-Returns:
-
-  TRUE  - Current IP is EBC CALL instruction
-  FALSE - Current IP is not EBC CALL instruction
-
---*/
 {
   if (GET_OPCODE(Address) != OPCODE_CALL) {
     return FALSE;
   }
 
@@ -50,30 +38,24 @@ Returns:
   } else {
     return TRUE;
   }
 }
 
-BOOLEAN
-IsEBCRET (
-  IN UINTN            Address
-  )
-/*++
-
-Routine Description:
-
-  Check whether current IP is EBC RET instruction
+/**
 
-Arguments:
+  Check whether current IP is EBC RET instruction.
 
-  Address   - EBC IP address.
+  @param  Address   - EBC IP address.
 
-Returns:
+  @retval TRUE  - Current IP is EBC RET instruction
+  @retval FALSE - Current IP is not EBC RET instruction
 
-  TRUE  - Current IP is EBC RET instruction
-  FALSE - Current IP is not EBC RET instruction
-
---*/
+**/
+BOOLEAN
+IsEBCRET (
+  IN UINTN            Address
+  )
 {
   if (GET_OPCODE(Address) != OPCODE_RET) {
     return FALSE;
   }
 
@@ -82,66 +64,54 @@ Returns:
   } else {
     return TRUE;
   }
 }
 
+/**
+
+  DebuggerCommand - StepInto.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerStepInto (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - StepInto
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   SystemContext.SystemContextEbc->Flags |= VMFLAGS_STEP;
 
   return EFI_DEBUG_BREAK;
 }
 
+/**
+
+  DebuggerCommand - StepOver.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerStepOver (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - StepOver
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   if (IsEBCCALL((UINTN)SystemContext.SystemContextEbc->Ip)) {
     //
     // Check CALL (NOTE: CALLEX is exclusive)
     //
@@ -154,35 +124,29 @@ Returns:
   }
 
   return EFI_DEBUG_BREAK;
 }
 
+/**
+
+  DebuggerCommand - StepOut.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerStepOut (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - StepOut
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   if (IsEBCRET((UINTN)SystemContext.SystemContextEbc->Ip)) {
     //
     // Check RET
     //
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdSymbol.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdSymbol.c
index 8a418d5..9c5707e 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdSymbol.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdSymbol.c
@@ -1,46 +1,34 @@
-/*++
+/** @file
 
-Copyright (c) 2007 - 2016, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007 - 2016, 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.
 
-Module Name:
 
-  EdbCmdSymbol.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
 
---*/
+  Get file name from full path.
 
-#include "Edb.h"
+  @param  FullPath        - full file path
+
+  @return  file name
 
+**/
 CHAR16 *
 GetFileNameFromFullPath (
   IN CHAR16   *FullPath
   )
-/*++
-
-Routine Description:
-
-  Get file name from full path
-
-Arguments:
-
-  FullPath        - full file path
-
-Returns:
-
-  file name
-
---*/
 {
   CHAR16   *FileName;
   CHAR16   *TempFileName;
 
   FileName = FullPath;
@@ -53,29 +41,23 @@ Returns:
   }
 
   return FileName;
 }
 
-CHAR16 *
-GetDirNameFromFullPath (
-  IN CHAR16   *FullPath
-  )
-/*++
+/**
 
-Routine Description:
+  Get dir name from full path.
 
-  Get dir name from full path
+  @param  FullPath        - full file path
 
-Arguments:
+  @return dir name
 
-  FullPath        - full file path
-
-Returns:
-
-  dir name
-
---*/
+**/
+CHAR16 *
+GetDirNameFromFullPath (
+  IN CHAR16   *FullPath
+  )
 {
   CHAR16   *FileName;
 
   FileName = GetFileNameFromFullPath (FullPath);
   if (FileName != FullPath) {
@@ -84,33 +66,27 @@ Returns:
   }
 
   return L"";
 }
 
+/**
+
+  Construct full path accroding to dir and file path.
+
+  @param  DirPath         - dir path
+  @param  FilePath        - file path
+  @param  Size            - dir max size
+
+  @return Full file name
+
+**/
 CHAR16 *
 ConstructFullPath (
   IN CHAR16   *DirPath,
   IN CHAR16   *FilePath,
   IN UINTN    Size
   )
-/*++
-
-Routine Description:
-
-  Construct full path accroding to dir and file path
-
-Arguments:
-
-  DirPath         - dir path
-  FilePath        - file path
-  Size            - dir max size
-
-Returns:
-
-  Full file name
-
---*/
 {
   UINTN DirPathSize;
 
   DirPathSize = StrLen(DirPath);
   *(DirPath + DirPathSize) = L'\\';
@@ -126,58 +102,46 @@ CHAR16 *mSymbolTypeStr[] = {
   L"(SF)",
   L"(GV)",
   L"(SV)",
 };
 
-CHAR16 *
-EdbSymbolTypeToStr (
-  IN EFI_DEBUGGER_SYMBOL_TYPE  Type
-  )
-/*++
-
-Routine Description:
-
-  Comvert Symbol Type to string
-
-Arguments:
+/**
 
-  Type            - Symbol Type
+  Comvert Symbol Type to string.
 
-Returns:
+  @param  Type            - Symbol Type
 
-  String
+  @return String
 
---*/
+**/
+CHAR16 *
+EdbSymbolTypeToStr (
+  IN EFI_DEBUGGER_SYMBOL_TYPE  Type
+  )
 {
   if (Type < 0 || Type >= EfiDebuggerSymbolTypeMax) {
     return L"(?)";
   }
 
   return mSymbolTypeStr [Type];
 }
 
+/**
+
+  Find the symbol accroding to address and display symbol.
+
+  @param  Address         - SymbolAddress
+  @param  DebuggerPrivate - EBC Debugger private data structure
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerDisplaySymbolAccrodingToAddress (
   IN     UINTN                      Address,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate
   )
-/*++
-
-Routine Description:
-
-  Find the symbol accroding to address and display symbol
-
-Arguments:
-
-  Address         - SymbolAddress
-  DebuggerPrivate - EBC Debugger private data structure
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EFI_DEBUGGER_SYMBOL_OBJECT *Object;
   EFI_DEBUGGER_SYMBOL_ENTRY  *Entry;
   UINTN                      CandidateAddress;
 
@@ -222,33 +186,27 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  Find the symbol accroding to name and display symbol.
+
+  @param  SymbolFileName  - The Symbol File Name, NULL means for all
+  @param  SymbolName      - The Symbol Name, NULL means for all
+  @param  DebuggerPrivate - EBC Debugger private data structure
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerDisplaySymbolAccrodingToName (
   IN     CHAR16                     *SymbolFileName,
   IN     CHAR16                     *SymbolName,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate
   )
-/*++
-
-Routine Description:
-
-  Find the symbol accroding to name and display symbol
-
-Arguments:
-
-  SymbolFileName  - The Symbol File Name, NULL means for all
-  SymbolName      - The Symbol Name, NULL means for all
-  DebuggerPrivate - EBC Debugger private data structure
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   UINTN                      Index;
   UINTN                      SubIndex;
   EFI_DEBUGGER_SYMBOL_OBJECT *Object;
   EFI_DEBUGGER_SYMBOL_ENTRY  *Entry;
@@ -336,35 +294,29 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - ListSymbol.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerListSymbol (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - ListSymbol
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   CHAR16                     *SymbolFileName;
   CHAR16                     *SymbolName;
   CHAR16                     *CommandStr;
   UINTN                      Address;
@@ -423,35 +375,29 @@ Returns:
   // display symbol according to name
   //
   return DebuggerDisplaySymbolAccrodingToName (SymbolFileName, SymbolName, DebuggerPrivate);
 }
 
+/**
+
+  DebuggerCommand - LoadSymbol.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerLoadSymbol (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - LoadSymbol
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   UINTN      BufferSize;
   VOID       *Buffer;
   EFI_STATUS Status;
   CHAR16     *FileName;
@@ -588,35 +534,29 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - UnloadSymbol
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerUnloadSymbol (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - UnloadSymbol
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   EFI_STATUS Status;
   CHAR16     *FileName;
   CHAR16     *DirName;
   CHAR16     CodFile[EFI_DEBUGGER_SYMBOL_NAME_MAX];
@@ -694,35 +634,29 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - DisplaySymbol.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerDisplaySymbol (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - DisplaySymbol
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   if (CommandArg == NULL) {
     DebuggerPrivate->DebuggerSymbolContext.DisplaySymbol = !DebuggerPrivate->DebuggerSymbolContext.DisplaySymbol;
     EdbShowDisasm (DebuggerPrivate, SystemContext);
   } else if (StriCmp (CommandArg, L"on") == 0) {
@@ -736,35 +670,29 @@ Returns:
   }
 
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - LoadCode.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerLoadCode (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - LoadCode
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   UINTN      BufferSize;
   VOID       *Buffer;
   EFI_STATUS Status;
   CHAR16     *CommandArg2;
@@ -836,35 +764,29 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - UnloadCode.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerUnloadCode (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - UnloadCode
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   CHAR16     *CommandArg2;
   CHAR16     *FileName;
   CHAR16     *MapFileName;
   EFI_STATUS Status;
@@ -907,35 +829,29 @@ Returns:
   // Done
   //
   return EFI_DEBUG_CONTINUE;
 }
 
+/**
+
+  DebuggerCommand - DisplayCode.
+
+  @param  CommandArg      - The argument for this command
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  ExceptionType   - Exception type.
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_DEBUG_CONTINUE - formal return value
+
+**/
 EFI_DEBUG_STATUS
 DebuggerDisplayCode (
   IN     CHAR16                    *CommandArg,
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_EXCEPTION_TYPE        ExceptionType,
   IN OUT EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  DebuggerCommand - DisplayCode
-
-Arguments:
-
-  CommandArg      - The argument for this command
-  DebuggerPrivate - EBC Debugger private data structure
-  InterruptType   - Interrupt type.
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_DEBUG_CONTINUE - formal return value
-
---*/
 {
   if (CommandArg == NULL) {
     DebuggerPrivate->DebuggerSymbolContext.DisplayCodeOnly = !DebuggerPrivate->DebuggerSymbolContext.DisplayCodeOnly;
     EdbShowDisasm (DebuggerPrivate, SystemContext);
   } else if (StriCmp (CommandArg, L"on") == 0) {
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommand.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommand.c
index b72e2bf..a59b256 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommand.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommand.c
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCommand.c
-
-Abstract:
-
-
---*/
+**/
 
 #include "Edb.h"
 
 //
 // Debugger Command Table
@@ -576,32 +570,26 @@ EFI_DEBUGGER_COMMAND_SET  mDebuggerCommandSet[] = {
     {SCAN_NULL, CHAR_NULL},
     NULL
   },
 };
 
+/**
+
+  Find the command according to name.
+
+  @param  CommandName   - Command Name
+  @param  CommandArg    - Command Argument
+
+  @return Not NULL        - The DebuggerCommand is found successfully
+  @return NULL            - not found
+
+**/
 EFI_DEBUGGER_COMMAND
 MatchDebuggerCommand (
   IN CHAR16    *CommandName,
   IN CHAR16    **CommandArg
   )
-/*++
-
-Routine Description:
-
-  Find the command according to name
-
-Arguments:
-
-  CommandName   - Command Name
-  CommandArg    - Command Argument
-
-Returns:
-
-  Not NULL        - The DebuggerCommand is found successfully
-  NULL            - not found
-
---*/
 {
   UINTN  Index;
   CHAR16 *Temp;
 
   //
@@ -635,30 +623,24 @@ Returns:
   // Not found
   //
   return NULL;
 }
 
-CHAR16 *
-GetCommandNameByKey (
-  IN EFI_INPUT_KEY CommandKey
-  )
-/*++
-
-Routine Description:
+/**
 
-  Find the command name according to the function key
+  Find the command name according to the function key.
 
-Arguments:
+  @param  CommandKey    - Command Function Key
 
-  CommandKey    - Command Function Key
+  @return Not NULL        - The DebuggerName is found successfully
+  @return NULL            - not found
 
-Returns:
-
-  Not NULL        - The DebuggerName is found successfully
-  NULL            - not found
-
---*/
+**/
+CHAR16 *
+GetCommandNameByKey (
+  IN EFI_INPUT_KEY CommandKey
+  )
 {
   UINTN  Index;
 
   //
   // Go through each command, check the CommandKey
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommand.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommand.h
index 7acf4de..141879f 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommand.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommand.h
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbCommand.h
-
-Abstract:
-
-
---*/
+**/
 
 #ifndef _EFI_EDB_COMMAND_H_
 #define _EFI_EDB_COMMAND_H_
 
 typedef enum {
@@ -27,16 +21,37 @@ typedef enum {
   EdbWidthUint32,
   EdbWidthUint64,
   EdbWidthMax
 } EDB_DATA_WIDTH;
 
+/**
+
+  Find the command according to name.
+
+  @param  CommandName   - Command Name
+  @param  CommandArg    - Command Argument
+
+  @return Not NULL        - The DebuggerCommand is found successfully
+  @return NULL            - not found
+
+**/
 EFI_DEBUGGER_COMMAND
 MatchDebuggerCommand (
   IN CHAR16    *CommandName,
   IN CHAR16    **CommandArg
   );
 
+/**
+
+  Find the command name according to the function key.
+
+  @param  CommandKey    - Command Function Key
+
+  @return Not NULL        - The DebuggerName is found successfully
+  @return NULL            - not found
+
+**/
 CHAR16 *
 GetCommandNameByKey (
   IN EFI_INPUT_KEY CommandKey
   );
 
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommon.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommon.h
index 616c369..2a54be1 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommon.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommon.h
@@ -1,24 +1,17 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
-
-  EdbCommon.h
-
-Abstract:
-
-
---*/
+**/
 
 #ifndef _EFI_EDB_COMMON_H_
 #define _EFI_EDB_COMMON_H_
 
 #include <Uefi.h>
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.c
index 52800f7..dab53a0 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.c
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbDisasm.c
-
-Abstract:
-
-
---*/
+**/
 
 #include "Edb.h"
 
 //
 // Debugger Disasm definition
@@ -115,33 +109,27 @@ EDB_DISASM_INSTRUCTION mEdbDisasmInstructionTable[] = {
   EdbDisasmMOVI,              // opcode 0x37 MOVI
   EdbDisasmMOVIn,             // opcode 0x38 MOVIN
   EdbDisasmMOVREL,            // opcode 0x39 MOVREL
 };
 
+/**
+
+  Disasm instruction - BREAK.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmBREAK (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - BREAK
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_BREAK);
 
   if (*(UINT8 *)(UINTN)(InstructionAddress + 1) > 6) {
     return 0;
@@ -162,33 +150,27 @@ Returns:
   return 2;
 }
 
 extern CONST UINT8                    mJMPLen[];
 
+/**
+
+  Disasm instruction - JMP.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmJMP (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - JMP
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8   Modifiers;
   UINT8   Operands;
   UINTN   Size;
   UINT32  Data32;
@@ -246,33 +228,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - JMP8.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmJMP8 (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - JMP8
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8   Modifiers;
 
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_JMP8);
   Modifiers  = GET_MODIFIERS (InstructionAddress);
@@ -298,33 +274,27 @@ Returns:
   }
 
   return 2;
 }
 
+/**
+
+  Disasm instruction - CALL.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmCALL (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - CALL
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8   Modifiers;
   UINT8   Operands;
   UINTN   Size;
   UINT32  Data32;
@@ -408,33 +378,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - RET.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmRET (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - RET
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_RET);
 
   if (*(UINT8 *)(UINTN)(InstructionAddress + 1) != 0) {
     return 0;
@@ -452,33 +416,27 @@ Returns:
   }
 
   return 2;
 }
 
+/**
+
+  Disasm instruction - CMP.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmCMP (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - CMP
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Opcode;
   UINT8  Modifiers;
   UINT8  Operands;
   UINT16 Data16;
@@ -550,33 +508,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - Unsigned Data Manipulate.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmUnsignedDataManip (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - Unsigned Data Manipulate
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Opcode;
   UINT8  Operands;
   UINTN  Size;
@@ -674,33 +626,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - Signed Data Manipulate,
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmSignedDataManip (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - Signed Data Manipulate
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Opcode;
   UINT8  Operands;
   UINTN  Size;
@@ -778,33 +724,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - MOVxx.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmMOVxx (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - MOVxx
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8   Modifiers;
   UINT8   Opcode;
   UINT8   Operands;
   UINTN   Size;
@@ -937,33 +877,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - MOVsnw.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmMOVsnw (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - MOVsnw
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Operands;
   UINTN  Size;
   UINT16 Data16;
@@ -1013,33 +947,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - MOVsnd.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmMOVsnd (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - MOVsnd
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Operands;
   UINTN  Size;
   UINT32 Data32;
@@ -1089,33 +1017,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - LOADSP.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmLOADSP (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - LOADSP
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Operands;
 
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_LOADSP);
 
@@ -1137,33 +1059,27 @@ Returns:
   }
 
   return 2;
 }
 
+/**
+
+  Disasm instruction - STORESP.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmSTORESP (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - STORESP
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Operands;
 
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_STORESP);
 
@@ -1185,33 +1101,28 @@ Returns:
   }
 
   return 2;
 }
 
+
+/**
+
+  Disasm instruction - PUSH.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmPUSH (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - PUSH
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Operands;
   UINTN  Size;
   UINT16 Data16;
@@ -1255,33 +1166,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - POP.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmPOP (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - POP
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Operands;
   UINTN  Size;
   UINT16 Data16;
@@ -1325,33 +1230,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - CMPI.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmCMPI (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - CMPI
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Opcode;
   UINT8  Operands;
   UINT16 Data16;
@@ -1442,33 +1341,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - PUSHn.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmPUSHn (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - PUSHn
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Operands;
   UINTN  Size;
   UINT16 Data16;
@@ -1507,33 +1400,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - POPn.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmPOPn (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - POPn
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Operands;
   UINTN  Size;
   UINT16 Data16;
@@ -1572,33 +1459,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - MOVI.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmMOVI (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - MOVI
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Operands;
   UINTN  Size;
   UINT16 Data16;
@@ -1686,33 +1567,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - MOVIn.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmMOVIn (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - MOVIn
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8  Modifiers;
   UINT8  Operands;
   UINTN  Size;
   UINT16 Data16;
@@ -1786,33 +1661,27 @@ Returns:
   }
 
   return Size;
 }
 
+/**
+
+  Disasm instruction - MOVREL.
+
+  @param  InstructionAddress - The instruction address
+  @param  SystemContext      - EBC system context.
+  @param  DisasmString       - The instruction string
+
+  @return Instruction length
+
+**/
 UINTN
 EdbDisasmMOVREL (
   IN     EFI_PHYSICAL_ADDRESS      InstructionAddress,
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   OUT    CHAR16                    **DisasmString
   )
-/*++
-
-Routine Description:
-
-  Disasm instruction - MOVREL
-
-Arguments:
-
-  InstructionAddress - The instruction address
-  SystemContext      - EBC system context.
-  DisasmString       - The instruction string
-
-Returns:
-
-  Instruction length
-
---*/
 {
   UINT8   Modifiers;
   UINT8   Operands;
   UINTN   Size;
   UINT16  Data16;
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.h
index 1897e1c..911b0f9 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.h
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbDisasm.h
-
-Abstract:
-
-
---*/
+**/
 
 #ifndef _EFI_EDB_DISASM_H_
 #define _EFI_EDB_DISASM_H_
 
 #include <Uefi.h>
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.c
index 81e970e..0108870 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.c
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbDisasmSupport.c
-
-Abstract:
-
-
---*/
+**/
 
 #include "Edb.h"
 
 extern EDB_DISASM_INSTRUCTION mEdbDisasmInstructionTable[];
 
@@ -30,84 +24,60 @@ typedef struct {
 
 EDB_INSTRUCTION_STRING mInstructionString;
 UINTN                  mInstructionNameOffset;
 UINTN                  mInstructionContentOffset;
 
+/**
+
+  Set offset for Instruction name and content.
+
+  @param  InstructionNameOffset     - Instruction name offset
+  @param  InstructionContentOffset  - Instruction content offset
+
+**/
 VOID
 EdbSetOffset (
   IN UINTN InstructionNameOffset,
   IN UINTN InstructionContentOffset
   )
-/*++
-
-Routine Description:
-
-  Set offset for Instruction name and content
-
-Arguments:
-
-  InstructionNameOffset     - Instruction name offset
-  InstructionContentOffset  - Instruction content offset
-
-Returns:
-
-  None
-
---*/
 {
   mInstructionNameOffset = InstructionNameOffset;
   mInstructionContentOffset = InstructionContentOffset;
 
   return ;
 }
 
+/**
+
+  Pre instruction string construction.
+
+  @return Instruction string
+
+**/
 CHAR16 *
 EdbPreInstructionString (
   VOID
   )
-/*++
-
-Routine Description:
-
-  Pre instruction string construction
-
-Arguments:
-
-  None
-
-Returns:
-
-  Instruction string
-
---*/
 {
   ZeroMem (&mInstructionString, sizeof(mInstructionString));
   mInstructionNameOffset    = 0;
   mInstructionContentOffset = 0;
 
   return (CHAR16 *)&mInstructionString;
 }
 
+/**
+
+  Post instruction string construction.
+
+  @return Instruction string
+
+**/
 CHAR16 *
 EdbPostInstructionString (
   VOID
   )
-/*++
-
-Routine Description:
-
-  Post instruction string construction
-
-Arguments:
-
-  None
-
-Returns:
-
-  Instruction string
-
---*/
 {
   CHAR16 *Char;
 
   for (Char = (CHAR16 *)&mInstructionString; Char < &mInstructionString.Tail; Char++) {
     if (*Char == 0) {
@@ -120,33 +90,27 @@ Returns:
   mInstructionContentOffset = 0;
 
   return (CHAR16 *)&mInstructionString;
 }
 
+/**
+
+  Get Sign, NaturalUnits, and ConstantUnits of the WORD data.
+
+  @param  Data16        - WORD data
+  @param  NaturalUnits  - Natural Units of the WORD
+  @param  ConstantUnits - Constant Units of the WORD
+
+  @return Sign value of WORD
+
+**/
 BOOLEAN
 EdbGetNaturalIndex16 (
   IN  UINT16  Data16,
   OUT UINTN   *NaturalUnits,
   OUT UINTN   *ConstantUnits
   )
-/*++
-
-Routine Description:
-
-  Get Sign, NaturalUnits, and ConstantUnits of the WORD data
-
-Arguments:
-
-  Data16        - WORD data
-  NaturalUnits  - Natural Units of the WORD
-  ConstantUnits - Constant Units of the WORD
-
-Returns:
-
-  Sign value of WORD
-
---*/
 {
   BOOLEAN Sign;
   UINTN   NaturalUnitBit;
 
   Sign = (BOOLEAN)(Data16 >> 15);
@@ -157,33 +121,27 @@ Returns:
   *ConstantUnits = (UINTN)((Data16 >> NaturalUnitBit) & ((1 << (12 - NaturalUnitBit)) - 1));
 
   return Sign;
 }
 
+/**
+
+  Get Sign, NaturalUnits, and ConstantUnits of the DWORD data.
+
+  @param  Data32        - DWORD data
+  @param  NaturalUnits  - Natural Units of the DWORD
+  @param  ConstantUnits - Constant Units of the DWORD
+
+  @return Sign value of DWORD
+
+**/
 BOOLEAN
 EdbGetNaturalIndex32 (
   IN  UINT32  Data32,
   OUT UINTN   *NaturalUnits,
   OUT UINTN   *ConstantUnits
   )
-/*++
-
-Routine Description:
-
-  Get Sign, NaturalUnits, and ConstantUnits of the DWORD data
-
-Arguments:
-
-  Data32        - DWORD data
-  NaturalUnits  - Natural Units of the DWORD
-  ConstantUnits - Constant Units of the DWORD
-
-Returns:
-
-  Sign value of DWORD
-
---*/
 {
   BOOLEAN Sign;
   UINTN   NaturalUnitBit;
 
   Sign = (BOOLEAN)(Data32 >> 31);
@@ -194,33 +152,27 @@ Returns:
   *ConstantUnits = (UINTN)((Data32 >> NaturalUnitBit) & ((1 << (28 - NaturalUnitBit)) - 1));
 
   return Sign;
 }
 
+/**
+
+  Get Sign, NaturalUnits, and ConstantUnits of the QWORD data.
+
+  @param  Data64        - QWORD data
+  @param  NaturalUnits  - Natural Units of the QWORD
+  @param  ConstantUnits - Constant Units of the QWORD
+
+  @return Sign value of QWORD
+
+**/
 BOOLEAN
 EdbGetNaturalIndex64 (
   IN  UINT64  Data64,
   OUT UINT64  *NaturalUnits,
   OUT UINT64  *ConstantUnits
   )
-/*++
-
-Routine Description:
-
-  Get Sign, NaturalUnits, and ConstantUnits of the QWORD data
-
-Arguments:
-
-  Data64        - QWORD data
-  NaturalUnits  - Natural Units of the QWORD
-  ConstantUnits - Constant Units of the QWORD
-
-Returns:
-
-  Sign value of QWORD
-
---*/
 {
   BOOLEAN Sign;
   UINTN   NaturalUnitBit;
 
   Sign = (BOOLEAN)RShiftU64 (Data64, 63);
@@ -231,29 +183,23 @@ Returns:
   *ConstantUnits = (UINT64)(RShiftU64 (Data64, NaturalUnitBit) & (LShiftU64 (1, (60 - NaturalUnitBit)) - 1));
 
   return Sign;
 }
 
-UINT8
-EdbGetBitWidth (
-  IN UINT64  Value
-  )
-/*++
-
-Routine Description:
-
-  Get Bit Width of the value
+/**
 
-Arguments:
+  Get Bit Width of the value.
 
-  Value - data
+  @param  Value - data
 
-Returns:
+  @return Bit width
 
-  Bit width
-
---*/
+**/
+UINT8
+EdbGetBitWidth (
+  IN UINT64  Value
+  )
 {
   if (Value >= 10000000000000) {
     return 14;
   } else if (Value >= 1000000000000) {
     return 13;
@@ -282,29 +228,23 @@ Returns:
   } else {
     return 1;
   }
 }
 
-UINTN
-EdbPrintInstructionName (
-  IN CHAR16                 *Name
-  )
-/*++
-
-Routine Description:
+/**
 
-  Print the instruction name
+  Print the instruction name.
 
-Arguments:
+  @param  Name - instruction name
 
-  Name - instruction name
+  @return Instruction name offset
 
-Returns:
-
-  Instruction name offset
-
---*/
+**/
+UINTN
+EdbPrintInstructionName (
+  IN CHAR16                 *Name
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Name,
     EDB_INSTRUCTION_NAME_MAX_SIZE,
     mInstructionNameOffset,
@@ -314,29 +254,23 @@ Returns:
   mInstructionNameOffset += StrLen (Name);
 
   return mInstructionNameOffset;
 }
 
-UINTN
-EdbPrintRegister1 (
-  IN UINT8                  Operands
-  )
-/*++
-
-Routine Description:
-
-  Print register 1 in operands
-
-Arguments:
+/**
 
-  Operands - instruction operands
+  Print register 1 in operands.
 
-Returns:
+  @param  Operands - instruction operands
 
-  Instruction content offset
+  @return Instruction content offset
 
---*/
+**/
+UINTN
+EdbPrintRegister1 (
+  IN UINT8                  Operands
+  )
 {
   if (Operands & OPERAND_M_INDIRECT1) {
     EDBSPrintWithOffset (
       mInstructionString.Content,
       EDB_INSTRUCTION_CONTENT_MAX_SIZE,
@@ -355,29 +289,23 @@ Returns:
   mInstructionContentOffset += 2;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintRegister2 (
-  IN UINT8                  Operands
-  )
-/*++
-
-Routine Description:
+/**
 
-  Print register 2 in operands
+  Print register 2 in operands.
 
-Arguments:
+  @param  Operands - instruction operands
 
-  Operands - instruction operands
+  @return Instruction content offset
 
-Returns:
-
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintRegister2 (
+  IN UINT8                  Operands
+  )
 {
   if (Operands & OPERAND_M_INDIRECT2) {
     EDBSPrintWithOffset (
       mInstructionString.Content,
       EDB_INSTRUCTION_CONTENT_MAX_SIZE,
@@ -396,29 +324,23 @@ Returns:
   mInstructionContentOffset += 2;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintDedicatedRegister1 (
-  IN UINT8                  Operands
-  )
-/*++
-
-Routine Description:
-
-  Print dedicated register 1 in operands
-
-Arguments:
+/**
 
-  Operands - instruction operands
+  Print dedicated register 1 in operands.
 
-Returns:
+  @param Operands - instruction operands
 
-  Instruction content offset
+  @return Instruction content offset
 
---*/
+**/
+UINTN
+EdbPrintDedicatedRegister1 (
+  IN UINT8                  Operands
+  )
 {
   switch (Operands & OPERAND_M_OP1) {
   case 0:
     EDBSPrintWithOffset (
       mInstructionString.Content,
@@ -440,29 +362,23 @@ Returns:
   }
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintDedicatedRegister2 (
-  IN UINT8                  Operands
-  )
-/*++
-
-Routine Description:
-
-  Print dedicated register 2 in operands
+/**
 
-Arguments:
+  Print dedicated register 2 in operands.
 
-  Operands - instruction operands
+  @param  Operands - instruction operands
 
-Returns:
+  @return Instruction content offset
 
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintDedicatedRegister2 (
+  IN UINT8                  Operands
+  )
 {
   switch ((Operands & OPERAND_M_OP2) >> 4) {
   case 0:
     EDBSPrintWithOffset (
       mInstructionString.Content,
@@ -484,33 +400,27 @@ Returns:
   }
 
   return mInstructionContentOffset;
 }
 
+/**
+
+  Print the hexical UINTN index data to instruction content.
+
+  @param  Sign          - Signed bit of UINTN data
+  @param  NaturalUnits  - natural units of UINTN data
+  @param  ConstantUnits - natural units of UINTN data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintIndexData (
   IN BOOLEAN                Sign,
   IN UINTN                  NaturalUnits,
   IN UINTN                  ConstantUnits
   )
-/*++
-
-Routine Description:
-
-  Print the hexical UINTN index data to instruction content
-
-Arguments:
-
-  Sign          - Signed bit of UINTN data
-  NaturalUnits  - natural units of UINTN data
-  ConstantUnits - natural units of UINTN data
-
-Returns:
-
-  Instruction content offset
-
---*/
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -523,33 +433,27 @@ Returns:
   mInstructionContentOffset  = mInstructionContentOffset + 5 + EdbGetBitWidth (NaturalUnits) + EdbGetBitWidth (ConstantUnits);
 
   return mInstructionContentOffset;
 }
 
+/**
+
+  Print the hexical QWORD index data to instruction content.
+
+  @param  Sign          - Signed bit of QWORD data
+  @param  NaturalUnits  - natural units of QWORD data
+  @param  ConstantUnits - natural units of QWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintIndexData64 (
   IN BOOLEAN                Sign,
   IN UINT64                 NaturalUnits,
   IN UINT64                 ConstantUnits
   )
-/*++
-
-Routine Description:
-
-  Print the hexical QWORD index data to instruction content
-
-Arguments:
-
-  Sign          - Signed bit of QWORD data
-  NaturalUnits  - natural units of QWORD data
-  ConstantUnits - natural units of QWORD data
-
-Returns:
-
-  Instruction content offset
-
---*/
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -562,29 +466,23 @@ Returns:
   mInstructionContentOffset  = mInstructionContentOffset + 5 + EdbGetBitWidth (NaturalUnits) + EdbGetBitWidth (ConstantUnits);
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintRawIndexData16 (
-  IN UINT16                 Data16
-  )
-/*++
-
-Routine Description:
-
-  Print the hexical WORD raw index data to instruction content
+/**
 
-Arguments:
+  Print the hexical WORD raw index data to instruction content.
 
-  Data16 - WORD data
+  @param  Data16 - WORD data
 
-Returns:
+  @return Instruction content offset
 
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintRawIndexData16 (
+  IN UINT16                 Data16
+  )
 {
   BOOLEAN Sign;
   UINTN   NaturalUnits;
   UINTN   ConstantUnits;
   UINTN   Offset;
@@ -593,29 +491,23 @@ Returns:
   Offset = EdbPrintIndexData (Sign, NaturalUnits, ConstantUnits);
 
   return Offset;
 }
 
-UINTN
-EdbPrintRawIndexData32 (
-  IN UINT32                 Data32
-  )
-/*++
-
-Routine Description:
-
-  Print the hexical DWORD raw index data to instruction content
+/**
 
-Arguments:
+  Print the hexical DWORD raw index data to instruction content.
 
-  Data32 - DWORD data
+  @param  Data32 - DWORD data
 
-Returns:
+  @return Instruction content offset
 
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintRawIndexData32 (
+  IN UINT32                 Data32
+  )
 {
   BOOLEAN Sign;
   UINTN   NaturalUnits;
   UINTN   ConstantUnits;
   UINTN   Offset;
@@ -624,29 +516,23 @@ Returns:
   Offset = EdbPrintIndexData (Sign, NaturalUnits, ConstantUnits);
 
   return Offset;
 }
 
-UINTN
-EdbPrintRawIndexData64 (
-  IN UINT64                 Data64
-  )
-/*++
-
-Routine Description:
-
-  Print the hexical QWORD raw index data to instruction content
+/**
 
-Arguments:
+  Print the hexical QWORD raw index data to instruction content.
 
-  Data64 - QWORD data
+  @param  Data64 - QWORD data
 
-Returns:
+  @return Instruction content offset
 
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintRawIndexData64 (
+  IN UINT64                 Data64
+  )
 {
   BOOLEAN Sign;
   UINT64  NaturalUnits;
   UINT64  ConstantUnits;
   UINTN   Offset;
@@ -655,29 +541,23 @@ Returns:
   Offset = EdbPrintIndexData64 (Sign, NaturalUnits, ConstantUnits);
 
   return Offset;
 }
 
-UINTN
-EdbPrintImmData8 (
-  IN UINT8                  Data
-  )
-/*++
-
-Routine Description:
+/**
 
-  Print the hexical BYTE immediate data to instruction content
+  Print the hexical BYTE immediate data to instruction content.
 
-Arguments:
+  @param  Data - BYTE data
 
-  Data - BYTE data
+  @return Instruction content offset
 
-Returns:
-
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintImmData8 (
+  IN UINT8                  Data
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -687,29 +567,23 @@ Returns:
   mInstructionContentOffset  += 6;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintImmData16 (
-  IN UINT16                 Data
-  )
-/*++
+/**
 
-Routine Description:
+  Print the hexical WORD immediate data to instruction content.
 
-  Print the hexical WORD immediate data to instruction content
+  @param  Data - WORD data
 
-Arguments:
+  @return Instruction content offset
 
-  Data - WORD data
-
-Returns:
-
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintImmData16 (
+  IN UINT16                 Data
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -719,29 +593,23 @@ Returns:
   mInstructionContentOffset  += 8;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintImmData32 (
-  IN UINT32                 Data
-  )
-/*++
-
-Routine Description:
-
-  Print the hexical DWORD immediate data to instruction content
+/**
 
-Arguments:
+  Print the hexical DWORD immediate data to instruction content.
 
-  Data - DWORD data
+  @param  Data - DWORD data
 
-Returns:
+  @return Instruction content offset
 
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintImmData32 (
+  IN UINT32                 Data
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -751,29 +619,23 @@ Returns:
   mInstructionContentOffset  += 12;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintImmData64 (
-  IN UINT64                 Data
-  )
-/*++
-
-Routine Description:
+/**
 
-  Print the hexical QWORD immediate data to instruction content
+  Print the hexical QWORD immediate data to instruction content.
 
-Arguments:
+  @param  Data - QWORD data
 
-  Data - QWORD data
+  @return Instruction content offset
 
-Returns:
-
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintImmData64 (
+  IN UINT64                 Data
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -783,29 +645,23 @@ Returns:
   mInstructionContentOffset  += 20;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintImmDatan (
-  IN UINTN                  Data
-  )
-/*++
-
-Routine Description:
-
-  Print the decimal UINTN immediate data to instruction content
-
-Arguments:
+/**
 
-  Data - UINTN data
+  Print the decimal UINTN immediate data to instruction content.
 
-Returns:
+  @param  Data - UINTN data
 
-  Instruction content offset
+  @return Instruction content offset
 
---*/
+**/
+UINTN
+EdbPrintImmDatan (
+  IN UINTN                  Data
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -815,29 +671,23 @@ Returns:
   mInstructionContentOffset  = mInstructionContentOffset + 2 + EdbGetBitWidth (Data);
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintImmData64n (
-  IN UINT64                 Data64
-  )
-/*++
-
-Routine Description:
+/**
 
-  Print the decimal QWORD immediate data to instruction content
+  Print the decimal QWORD immediate data to instruction content.
 
-Arguments:
+  @param  Data64 - QWORD data
 
-  Data64 - QWORD data
+  @return Instruction content offset
 
-Returns:
-
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintImmData64n (
+  IN UINT64                 Data64
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -847,29 +697,23 @@ Returns:
   mInstructionContentOffset  = mInstructionContentOffset + 2 + EdbGetBitWidth (Data64);
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintData8 (
-  IN UINT8                  Data8
-  )
-/*++
-
-Routine Description:
-
-  Print the hexical BYTE to instruction content
-
-Arguments:
+/**
 
-  Data8 - BYTE data
+  Print the hexical BYTE to instruction content.
 
-Returns:
+  @param  Data8 - BYTE data
 
-  Instruction content offset
+  @return Instruction content offset
 
---*/
+**/
+UINTN
+EdbPrintData8 (
+  IN UINT8                  Data8
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -879,29 +723,23 @@ Returns:
   mInstructionContentOffset += 4;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintData16 (
-  IN UINT16                 Data16
-  )
-/*++
-
-Routine Description:
-
-  Print the hexical WORD to instruction content
+/**
 
-Arguments:
+  Print the hexical WORD to instruction content.
 
-  Data16 - WORD data
+  @param  Data16 - WORD data
 
-Returns:
+  @return Instruction content offset
 
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintData16 (
+  IN UINT16                 Data16
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -911,29 +749,23 @@ Returns:
   mInstructionContentOffset += 6;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintData32 (
-  IN UINT32                 Data32
-  )
-/*++
-
-Routine Description:
+/**
 
-  Print the hexical DWORD to instruction content
+  Print the hexical DWORD to instruction content.
 
-Arguments:
+  @param  Data32 - DWORD data
 
-  Data32 - DWORD data
+  @return Instruction content offset
 
-Returns:
-
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintData32 (
+  IN UINT32                 Data32
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -943,29 +775,23 @@ Returns:
   mInstructionContentOffset += 10;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintData64 (
-  IN UINT64                 Data64
-  )
-/*++
-
-Routine Description:
-
-  Print the hexical QWORD to instruction content
-
-Arguments:
+/**
 
-  Data64 - QWORD data
+  Print the hexical QWORD to instruction content.
 
-Returns:
+  @param  Data64 - QWORD data
 
-  Instruction content offset
+  @return Instruction content offset
 
---*/
+**/
+UINTN
+EdbPrintData64 (
+  IN UINT64                 Data64
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -975,29 +801,23 @@ Returns:
   mInstructionContentOffset += 18;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintDatan (
-  IN UINTN                  Data
-  )
-/*++
-
-Routine Description:
-
-  Print the decimal unsigned UINTN to instruction content
+/**
 
-Arguments:
+  Print the decimal unsigned UINTN to instruction content.
 
-  Data - unsigned UINTN data
+  @param  Data - unsigned UINTN data
 
-Returns:
+  @return Instruction content offset
 
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintDatan (
+  IN UINTN                  Data
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -1007,29 +827,23 @@ Returns:
   mInstructionContentOffset = mInstructionContentOffset + EdbGetBitWidth (Data);
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintData64n (
-  IN UINT64                 Data64
-  )
-/*++
-
-Routine Description:
-
-  Print the decimal unsigned QWORD to instruction content
+/**
 
-Arguments:
+  Print the decimal unsigned QWORD to instruction content.
 
-  Data64 - unsigned QWORD data
+  @param  Data64 - unsigned QWORD data
 
-Returns:
+  @return Instruction content offset
 
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintData64n (
+  IN UINT64                 Data64
+  )
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -1039,29 +853,23 @@ Returns:
   mInstructionContentOffset = mInstructionContentOffset + EdbGetBitWidth (Data64);
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintData8s (
-  IN UINT8                  Data8
-  )
-/*++
-
-Routine Description:
-
-  Print the decimal signed BYTE to instruction content
+/**
 
-Arguments:
+  Print the decimal signed BYTE to instruction content.
 
-  Data8 - signed BYTE data
+  @param  Data8 - signed BYTE data
 
-Returns:
+  @return Instruction content offset
 
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintData8s (
+  IN UINT8                  Data8
+  )
 {
   BOOLEAN Sign;
 
   Sign = (BOOLEAN)(Data8 >> 7);
 
@@ -1076,29 +884,23 @@ Returns:
   mInstructionContentOffset = mInstructionContentOffset + 1 + EdbGetBitWidth (Data8 & 0x7F);
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintData16s (
-  IN UINT16                 Data16
-  )
-/*++
-
-Routine Description:
+/**
 
-  Print the decimal signed WORD to instruction content
+  Print the decimal signed WORD to instruction content.
 
-Arguments:
+  @param  Data16 - signed WORD data
 
-  Data16 - signed WORD data
+  @return Instruction content offset
 
-Returns:
-
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintData16s (
+  IN UINT16                 Data16
+  )
 {
   BOOLEAN Sign;
 
   Sign = (BOOLEAN)(Data16 >> 15);
 
@@ -1113,29 +915,23 @@ Returns:
   mInstructionContentOffset = mInstructionContentOffset + 1 + EdbGetBitWidth (Data16 & 0x7FFF);
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintData32s (
-  IN UINT32                 Data32
-  )
-/*++
+/**
 
-Routine Description:
+  Print the decimal signed DWORD to instruction content.
 
-  Print the decimal signed DWORD to instruction content
+  @param  Data32 - signed DWORD data
 
-Arguments:
+  @return Instruction content offset
 
-  Data32 - signed DWORD data
-
-Returns:
-
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintData32s (
+  IN UINT32                 Data32
+  )
 {
   BOOLEAN Sign;
 
   Sign = (BOOLEAN)(Data32 >> 31);
 
@@ -1150,29 +946,23 @@ Returns:
   mInstructionContentOffset = mInstructionContentOffset + 1 + EdbGetBitWidth (Data32 & 0x7FFFFFFF);
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbPrintData64s (
-  IN UINT64                 Data64
-  )
-/*++
-
-Routine Description:
-
-  Print the decimal signed QWORD to instruction content
+/**
 
-Arguments:
+  Print the decimal signed QWORD to instruction content.
 
-  Data64 - signed QWORD data
+  @param  Data64 - signed QWORD data
 
-Returns:
+  @return Instruction content offset
 
-  Instruction content offset
-
---*/
+**/
+UINTN
+EdbPrintData64s (
+  IN UINT64                 Data64
+  )
 {
   BOOLEAN Sign;
   INT64   Data64s;
 
   Sign = (BOOLEAN)RShiftU64 (Data64, 63);
@@ -1189,29 +979,21 @@ Returns:
   mInstructionContentOffset = mInstructionContentOffset + 1 + EdbGetBitWidth (Data64s);
 
   return mInstructionContentOffset;
 }
 
+/**
+
+  Print the comma to instruction content.
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintComma (
   VOID
   )
-/*++
-
-Routine Description:
-
-  Print the comma to instruction content
-
-Arguments:
-
-  None
-
-Returns:
-
-  Instruction content offset
-
---*/
 {
   EDBSPrintWithOffset (
     mInstructionString.Content,
     EDB_INSTRUCTION_CONTENT_MAX_SIZE,
     mInstructionContentOffset,
@@ -1220,30 +1002,24 @@ Returns:
   mInstructionContentOffset += 2;
 
   return mInstructionContentOffset;
 }
 
-UINTN
-EdbFindAndPrintSymbol (
-  IN UINTN                  Address
-  )
-/*++
-
-Routine Description:
-
-  Find the symbol string according to address, then print it
+/**
 
-Arguments:
+  Find the symbol string according to address, then print it.
 
-  Address - instruction address
+  @param  Address - instruction address
 
-Returns:
+  @retval 1 - symbol string is found and printed
+  @retval 0 - symbol string not found
 
-  1 - symbol string is found and printed
-  0 - symbol string not found
-
---*/
+**/
+UINTN
+EdbFindAndPrintSymbol (
+  IN UINTN                  Address
+  )
 {
   CHAR8 *SymbolStr;
 
   SymbolStr = FindSymbolStr (Address);
   if (SymbolStr != NULL) {
@@ -1258,31 +1034,23 @@ Returns:
   }
 
   return 0;
 }
 
+/**
+
+  Print the EBC byte code.
+
+  @param  InstructionAddress - instruction address
+  @param  InstructionNumber  - instruction number
+
+**/
 VOID
 EdbPrintRaw (
   IN EFI_PHYSICAL_ADDRESS   InstructionAddress,
   IN UINTN                  InstructionNumber
   )
-/*++
-
-Routine Description:
-
-  Print the EBC byte code
-
-Arguments:
-
-  InstructionAddress - instruction address
-  InstructionNumber  - instruction number
-
-Returns:
-
-  None
-
---*/
 {
   UINTN  LineNumber;
   UINTN  ByteNumber;
   UINTN  LineIndex;
   UINTN  ByteIndex;
@@ -1326,31 +1094,25 @@ Returns:
   }
 
   return ;
 }
 
+/**
+
+  Print the EBC asm code.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_SUCCESS - show disasm successfully
+
+**/
 EFI_STATUS
 EdbShowDisasm (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_SYSTEM_CONTEXT        SystemContext
   )
-/*++
-
-Routine Description:
-
-  Print the EBC asm code
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  SystemContext   - EBC system context.
-
-Returns:
-
-  EFI_SUCCESS - show disasm successfully
-
---*/
 {
   EFI_PHYSICAL_ADDRESS    InstructionAddress;
   UINTN                   InstructionNumber;
   UINTN                   InstructionLength;
   UINT8                   Opcode;
@@ -1412,31 +1174,25 @@ Returns:
   }
 
   return EFI_SUCCESS;
 }
 
+/**
+
+  Get register value accroding to the system context, and register index.
+
+  @param  SystemContext   - EBC system context.
+  @param  Index           - EBC register index
+
+  @return register value
+
+**/
 UINT64
 GetRegisterValue (
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   IN     UINT8                     Index
   )
-/*++
-
-Routine Description:
-
-  Get register value accroding to the system context, and register index
-
-Arguments:
-
-  SystemContext   - EBC system context.
-  Index           - EBC register index
-
-Returns:
-
-  register value
-
---*/
 {
   switch (Index) {
   case 0:
     return SystemContext.SystemContextEbc->R0;
   case 1:
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.h
index f66261b..702673b 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.h
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbDisasmSupport.h
-
-Abstract:
-
-
---*/
+**/
 
 #ifndef _EFI_EDB_DISASM_SUPPORT_H_
 #define _EFI_EDB_DISASM_SUPPORT_H_
 
 #include <Uefi.h>
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.c
index 64c5ed8..322dd25 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.c
@@ -1,50 +1,34 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbHook.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
 
---*/
+  Check the Hook flag, and trigger exception if match.
 
-#include "Edb.h"
+  @param  VmPtr        - EbcDebuggerCheckHookFlag
+  @param  Flag         - Feature flag
 
-//
-// Hook support function
-//
+**/
 VOID
 EbcDebuggerCheckHookFlag (
   IN VM_CONTEXT *VmPtr,
   IN UINT32     Flag
   )
-/*++
-
-Routine Description:
-
-  Check the Hook flag, and trigger exception if match.
-
-Arguments:
-
-  VmPtr        - EbcDebuggerCheckHookFlag
-  Flag         - Feature flag
-
-Returns:
-  None
-
---*/
 {
   if ((mDebuggerPrivate.FeatureFlags & Flag) == Flag) {
     mDebuggerPrivate.StatusFlags = Flag;
     EbcDebugSignalException (
       EXCEPT_EBC_BREAKPOINT,
@@ -53,30 +37,23 @@ Returns:
       );
   }
   return ;
 }
 
+/**
+
+  It will record soruce address for Callstack entry.
+
+  @param  SourceEntry  - Source address
+  @param  Type         - Branch type
+
+**/
 VOID
 EbcDebuggerPushCallstackSource (
   IN UINT64                   SourceEntry,
   IN EFI_DEBUGGER_BRANCH_TYPE Type
   )
-/*++
-
-Routine Description:
-
-  It will record soruce address for Callstack entry.
-
-Arguments:
-
-  SourceEntry  - Source address
-  Type         - Branch type
-
-Returns:
-  None
-
---*/
 {
   if (mDebuggerPrivate.CallStackEntryCount > EFI_DEBUGGER_CALLSTACK_MAX) {
     ASSERT (FALSE);
     mDebuggerPrivate.CallStackEntryCount = EFI_DEBUGGER_CALLSTACK_MAX;
   }
@@ -91,30 +68,23 @@ Returns:
   //
 
   return ;
 }
 
+/**
+
+  It will record parameter for Callstack entry.
+
+  @param  ParameterAddress - The address for the parameter
+  @param  Type             - Branch type
+
+**/
 VOID
 EbcDebuggerPushCallstackParameter (
   IN UINT64                   ParameterAddress,
   IN EFI_DEBUGGER_BRANCH_TYPE Type
   )
-/*++
-
-Routine Description:
-
-  It will record parameter for Callstack entry.
-
-Arguments:
-
-  ParameterAddress - The address for the parameter
-  Type             - Branch type
-
-Returns:
-  None
-
---*/
 {
   if (mDebuggerPrivate.CallStackEntryCount > EFI_DEBUGGER_CALLSTACK_MAX) {
     ASSERT (FALSE);
     mDebuggerPrivate.CallStackEntryCount = EFI_DEBUGGER_CALLSTACK_MAX;
   }
@@ -133,30 +103,23 @@ Returns:
   //
 
   return ;
 }
 
+/**
+
+  It will record source address for callstack entry.
+
+  @param  DestEntry    - Source address
+  @param  Type         - Branch type
+
+**/
 VOID
 EbcDebuggerPushCallstackDest (
   IN UINT64                   DestEntry,
   IN EFI_DEBUGGER_BRANCH_TYPE Type
   )
-/*++
-
-Routine Description:
-
-  It will record source address for callstack entry.
-
-Arguments:
-
-  DestEntry    - Source address
-  Type         - Branch type
-
-Returns:
-  None
-
---*/
 {
   UINTN Index;
 
   if (mDebuggerPrivate.CallStackEntryCount < EFI_DEBUGGER_CALLSTACK_MAX) {
     //
@@ -178,28 +141,19 @@ Returns:
   }
 
   return ;
 }
 
+/**
+
+  It will throw the newest Callstack entry.
+
+**/
 VOID
 EbcDebuggerPopCallstack (
   VOID
   )
-/*++
-
-Routine Description:
-
-  It will throw the newest Callstack entry.
-
-Arguments:
-
-  None
-
-Returns:
-  None
-
---*/
 {
   if ((mDebuggerPrivate.CallStackEntryCount > 0) &&
       (mDebuggerPrivate.CallStackEntryCount <= EFI_DEBUGGER_CALLSTACK_MAX)) {
     //
     // Throw the newest one
@@ -217,30 +171,23 @@ Returns:
   }
 
   return ;
 }
 
+/**
+
+  It will record source address for trace entry.
+
+  @param  SourceEntry  - Source address
+  @param  Type         - Branch type
+
+**/
 VOID
 EbcDebuggerPushTraceSourceEntry (
   IN UINT64                   SourceEntry,
   IN EFI_DEBUGGER_BRANCH_TYPE Type
   )
-/*++
-
-Routine Description:
-
-  It will record source address for trace entry.
-
-Arguments:
-
-  SourceEntry  - Source address
-  Type         - Branch type
-
-Returns:
-  None
-
---*/
 {
   if (mDebuggerPrivate.TraceEntryCount > EFI_DEBUGGER_TRACE_MAX) {
     ASSERT (FALSE);
     mDebuggerPrivate.TraceEntryCount = EFI_DEBUGGER_TRACE_MAX;
   }
@@ -255,30 +202,23 @@ Returns:
   //
 
   return ;
 }
 
+/**
+
+  It will record destination address for trace entry.
+
+  @param  DestEntry    - Destination address
+  @param  Type         - Branch type
+
+**/
 VOID
 EbcDebuggerPushTraceDestEntry (
   IN UINT64                   DestEntry,
   IN EFI_DEBUGGER_BRANCH_TYPE Type
   )
-/*++
-
-Routine Description:
-
-  It will record destination address for trace entry.
-
-Arguments:
-
-  DestEntry    - Destination address
-  Type         - Branch type
-
-Returns:
-  None
-
---*/
 {
   UINTN Index;
 
   if (mDebuggerPrivate.TraceEntryCount < EFI_DEBUGGER_TRACE_MAX) {
     //
@@ -300,32 +240,25 @@ Returns:
   }
 
   return ;
 }
 
+/**
+
+  It will record address for StepEntry, if STEPOVER or STEPOUT is enabled.
+
+  @param  Entry    - Break Address
+  @param  FramePtr - Break Frame pointer
+  @param  Flag     - for STEPOVER or STEPOUT
+
+**/
 VOID
 EbcDebuggerPushStepEntry (
   IN UINT64                   Entry,
   IN UINT64                   FramePtr,
   IN UINT32                   Flag
   )
-/*++
-
-Routine Description:
-
-  It will record address for StepEntry, if STEPOVER or STEPOUT is enabled.
-
-Arguments:
-
-  Entry    - Break Address
-  FramePtr - Break Frame pointer
-  Flag     - for STEPOVER or STEPOUT
-
-Returns:
-  None
-
---*/
 {
   //
   // Check StepOver
   //
   if ((Flag == EFI_DEBUG_FLAG_EBC_STEPOVER) &&
@@ -362,34 +295,24 @@ EbcDebuggerBreakEventFunc (
   if (Status == EFI_SUCCESS) {
     mDebuggerPrivate.StatusFlags = EFI_DEBUG_FLAG_EBC_BOK;
   }
 }
 
-//
-// Hook function implementation
-//
-VOID
-EbcDebuggerHookInit (
-  IN EFI_HANDLE                  Handle,
-  IN EFI_DEBUG_SUPPORT_PROTOCOL  *EbcDebugProtocol
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in InitializeEbcDriver.
   It will init the EbcDebuggerPrivate data structure.
 
-Arguments:
-
-  Handle           - The EbcDebugProtocol handle.
-  EbcDebugProtocol - The EbcDebugProtocol interface.
+  @param Handle           - The EbcDebugProtocol handle.
+  @param EbcDebugProtocol - The EbcDebugProtocol interface.
 
-Returns:
-  None
-
---*/
+**/
+VOID
+EbcDebuggerHookInit (
+  IN EFI_HANDLE                  Handle,
+  IN EFI_DEBUG_SUPPORT_PROTOCOL  *EbcDebugProtocol
+  )
 {
   EFI_STATUS                 Status;
   UINTN                      Index;
   EFI_DEBUGGER_SYMBOL_OBJECT *Object;
   EFI_DEBUGGER_SYMBOL_ENTRY  *Entry;
@@ -477,29 +400,20 @@ Returns:
   }
 
   return ;
 }
 
-VOID
-EbcDebuggerHookUnload (
-  VOID
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in UnloadImage for EBC Interpreter.
   It clean up the environment.
 
-Arguments:
-
-  None
-
-Returns:
-  None
-
---*/
+**/
+VOID
+EbcDebuggerHookUnload (
+  VOID
+  )
 {
   UINTN                      Index;
   UINTN                      SubIndex;
   EFI_DEBUGGER_SYMBOL_OBJECT *Object;
 
@@ -543,108 +457,82 @@ Returns:
   // Done
   //
   return ;
 }
 
-VOID
-EbcDebuggerHookEbcUnloadImage (
-  IN EFI_HANDLE                  Handle
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in EbcUnloadImage.
   Currently do nothing here.
 
-Arguments:
+  @param  Handle           - The EbcImage handle.
 
-  Handle           - The EbcImage handle.
+**/
 
-Returns:
-  None
-
---*/
+VOID
+EbcDebuggerHookEbcUnloadImage (
+  IN EFI_HANDLE                  Handle
+  )
 {
   return ;
 }
 
-VOID
-EbcDebuggerHookExecuteEbcImageEntryPoint (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteEbcImageEntryPoint.
   It will record the call-stack entry. (-1 means EbcImageEntryPoint call)
   and trigger Exception if BOE enabled.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
 
-Returns:
-  None
+  @param  VmPtr - pointer to VM context.
 
---*/
+**/
+VOID
+EbcDebuggerHookExecuteEbcImageEntryPoint (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EbcDebuggerPushCallstackSource ((UINT64)(UINTN)-1, EfiDebuggerBranchTypeEbcCall);
   EbcDebuggerPushCallstackParameter ((UINT64)(UINTN)VmPtr->Gpr[0], EfiDebuggerBranchTypeEbcCall);
   EbcDebuggerPushCallstackDest ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcCall);
   EbcDebuggerCheckHookFlag (VmPtr, EFI_DEBUG_FLAG_EBC_BOE);
   return ;
 }
 
-VOID
-EbcDebuggerHookEbcInterpret (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteEbcImageEntryPoint.
   It will record the call-stack entry. (-2 means EbcInterpret call)
   and trigger Exception if BOT enabled.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
+  @param  VmPtr - pointer to VM context.
 
-Returns:
-  None
-
---*/
+**/
+VOID
+EbcDebuggerHookEbcInterpret (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EbcDebuggerPushCallstackSource ((UINT64)(UINTN)-2, EfiDebuggerBranchTypeEbcCall);
   EbcDebuggerPushCallstackParameter ((UINT64)(UINTN)VmPtr->Gpr[0], EfiDebuggerBranchTypeEbcCall);
   EbcDebuggerPushCallstackDest ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcCall);
   EbcDebuggerCheckHookFlag (VmPtr, EFI_DEBUG_FLAG_EBC_BOT);
   return ;
 }
 
-VOID
-EbcDebuggerHookExecuteStart (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in EbcExecute, before ExecuteFunction.
   It will trigger Exception if GoTil, StepOver, or StepOut hit.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
-
-Returns:
-  None
+  @param  VmPtr - pointer to VM context.
 
---*/
+**/
+VOID
+EbcDebuggerHookExecuteStart (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EFI_TPL   CurrentTpl;
 
   //
   // Check Ip for GoTil
@@ -708,29 +596,22 @@ Returns:
     }
   }
   return ;
 }
 
-VOID
-EbcDebuggerHookExecuteEnd (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in EbcExecute, after ExecuteFunction.
   It will record StepOut Entry if need.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
-
-Returns:
-  None
+  @param  VmPtr - pointer to VM context.
 
---*/
+**/
+VOID
+EbcDebuggerHookExecuteEnd (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   UINTN  Address;
 
   //
   // Use FramePtr as checkpoint for StepOut
@@ -739,58 +620,44 @@ Returns:
   EbcDebuggerPushStepEntry (Address, (UINT64)(UINTN)VmPtr->FramePtr, EFI_DEBUG_FLAG_EBC_STEPOUT);
 
   return ;
 }
 
-VOID
-EbcDebuggerHookCALLStart (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteCALL, before move IP.
   It will trigger Exception if BOC enabled,
   and record Callstack, and trace information.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
+  @param  VmPtr - pointer to VM context.
 
-Returns:
-  None
-
---*/
+**/
+VOID
+EbcDebuggerHookCALLStart (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EbcDebuggerCheckHookFlag (VmPtr, EFI_DEBUG_FLAG_EBC_BOC);
   EbcDebuggerPushCallstackSource ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcCall);
   EbcDebuggerPushCallstackParameter ((UINT64)(UINTN)VmPtr->Gpr[0], EfiDebuggerBranchTypeEbcCall);
   EbcDebuggerPushTraceSourceEntry ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcCall);
   return ;
 }
 
-VOID
-EbcDebuggerHookCALLEnd (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteCALL, after move IP.
   It will record Callstack, trace information
   and record StepOver/StepOut Entry if need.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
+  @param  VmPtr - pointer to VM context.
 
-Returns:
-  None
-
---*/
+**/
+VOID
+EbcDebuggerHookCALLEnd (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   UINT64  Address;
   UINTN   FramePtr;
 
   EbcDebuggerPushCallstackDest ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcCall);
@@ -815,204 +682,148 @@ Returns:
   EbcDebuggerPushStepEntry (Address, FramePtr, EFI_DEBUG_FLAG_EBC_STEPOUT);
 
   return ;
 }
 
-VOID
-EbcDebuggerHookCALLEXStart (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteCALL, before call EbcLLCALLEX.
   It will trigger Exception if BOCX enabled,
   and record Callstack information.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
+  @param  VmPtr - pointer to VM context.
 
-Returns:
-  None
-
---*/
+**/
+VOID
+EbcDebuggerHookCALLEXStart (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EbcDebuggerCheckHookFlag (VmPtr, EFI_DEBUG_FLAG_EBC_BOCX);
 //  EbcDebuggerPushCallstackSource ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcCallEx);
 //  EbcDebuggerPushCallstackParameter ((UINT64)(UINTN)VmPtr->R[0], EfiDebuggerBranchTypeEbcCallEx);
   EbcDebuggerPushTraceSourceEntry ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcCallEx);
   return ;
 }
 
-VOID
-EbcDebuggerHookCALLEXEnd (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteCALL, after call EbcLLCALLEX.
   It will record trace information.
 
-Arguments:
+  @param  VmPtr - pointer to VM context.
 
-  VmPtr - pointer to VM context.
-
-Returns:
-  None
-
---*/
+**/
+VOID
+EbcDebuggerHookCALLEXEnd (
+  IN VM_CONTEXT *VmPtr
+  )
 {
 //  EbcDebuggerPushCallstackDest ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcCallEx);
   EbcDebuggerPushTraceDestEntry ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcCallEx);
   return ;
 }
 
-VOID
-EbcDebuggerHookRETStart (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteRET, before move IP.
   It will trigger Exception if BOR enabled,
   and record Callstack, and trace information.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
-
-Returns:
-  None
+  @param  VmPtr - pointer to VM context.
 
---*/
+**/
+VOID
+EbcDebuggerHookRETStart (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EbcDebuggerCheckHookFlag (VmPtr, EFI_DEBUG_FLAG_EBC_BOR);
   EbcDebuggerPopCallstack ();
   EbcDebuggerPushTraceSourceEntry ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcRet);
   return ;
 }
 
-VOID
-EbcDebuggerHookRETEnd (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteRET, after move IP.
   It will record trace information.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
-
-Returns:
-  None
+  @param  VmPtr - pointer to VM context.
 
---*/
+**/
+VOID
+EbcDebuggerHookRETEnd (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EbcDebuggerPushTraceDestEntry ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcRet);
   return ;
 }
 
-VOID
-EbcDebuggerHookJMPStart (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteJMP, before move IP.
   It will record trace information.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
+  @param  VmPtr - pointer to VM context.
 
-Returns:
-  None
-
---*/
+**/
+VOID
+EbcDebuggerHookJMPStart (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EbcDebuggerPushTraceSourceEntry ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcJmp);
   return ;
 }
 
-VOID
-EbcDebuggerHookJMPEnd (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteJMP, after move IP.
   It will record trace information.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
+  @param  VmPtr - pointer to VM context.
 
-Returns:
-  None
-
---*/
+**/
+VOID
+EbcDebuggerHookJMPEnd (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EbcDebuggerPushTraceDestEntry ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcJmp);
   return ;
 }
 
-VOID
-EbcDebuggerHookJMP8Start (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteJMP8, before move IP.
   It will record trace information.
 
-Arguments:
+  @param  VmPtr - pointer to VM context.
 
-  VmPtr - pointer to VM context.
-
-Returns:
-  None
-
---*/
+**/
+VOID
+EbcDebuggerHookJMP8Start (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EbcDebuggerPushTraceSourceEntry ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcJmp8);
   return ;
 }
 
-VOID
-EbcDebuggerHookJMP8End (
-  IN VM_CONTEXT *VmPtr
-  )
-/*++
-
-Routine Description:
+/**
 
   The hook in ExecuteJMP8, after move IP.
   It will record trace information.
 
-Arguments:
-
-  VmPtr - pointer to VM context.
-
-Returns:
-  None
+  @param  VmPtr - pointer to VM context.
 
---*/
+**/
+VOID
+EbcDebuggerHookJMP8End (
+  IN VM_CONTEXT *VmPtr
+  )
 {
   EbcDebuggerPushTraceDestEntry ((UINT64)(UINTN)VmPtr->Ip, EfiDebuggerBranchTypeEbcJmp8);
   return ;
 }
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.h
index 7cddd50..fd5e430 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.h
@@ -1,24 +1,17 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
-
-  EdbHook.h
-
-Abstract:
-
-
---*/
+**/
 
 #ifndef _EFI_EDB_HOOKER_H_
 #define _EFI_EDB_HOOKER_H_
 
 #include <Uefi.h>
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h
index 7ad5860..ed1abe6 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbSupport.h
-
-Abstract:
-
-
---*/
+**/
 
 #ifndef _EFI_EDB_SUPPORT_H_
 #define _EFI_EDB_SUPPORT_H_
 
 #include <Uefi.h>
@@ -173,13 +167,13 @@ EFIAPI
 PatchForAsciiStrTokenBefore (
   IN CHAR8    *Buffer,
   IN CHAR8    Patch
   );
 
-//
-// Shell Library
-//
+/**
+Shell Library.
+**/
 VOID
 EFIAPI
 Input (
   IN CHAR16    *Prompt OPTIONAL,
   OUT CHAR16   *InStr,
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportFile.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportFile.c
index 617a5a8..6ef7b23 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportFile.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportFile.c
@@ -1,54 +1,41 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbSupportFile.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
+  Read a file.
 
---*/
+  @param  Vol             - File System Volume
+  @param  FileName        - The file to be read.
+  @param  BufferSize      - The file buffer size
+  @param  Buffer          - The file buffer
 
-#include "Edb.h"
+  @retval EFI_SUCCESS    - read file successfully
+  @retval EFI_NOT_FOUND  - file not found
 
+**/
 EFI_STATUS
 EFIAPI
 ReadFileFromVol (
   IN  EFI_SIMPLE_FILE_SYSTEM_PROTOCOL   *Vol,
   IN  CHAR16                      *FileName,
   OUT UINTN                       *BufferSize,
   OUT VOID                        **Buffer
   )
-/*++
-
-Routine Description:
-
-  Read a file.
-
-Arguments:
-
-  Vol             - File System Volume
-  FileName        - The file to be read.
-  BufferSize      - The file buffer size
-  Buffer          - The file buffer
-
-Returns:
-
-  EFI_SUCCESS    - read file successfully
-  EFI_NOT_FOUND  - file not found
-
---*/
 {
   EFI_STATUS                        Status;
   EFI_FILE_HANDLE                   RootDir;
   EFI_FILE_HANDLE                   Handle;
   UINTN                             FileInfoSize;
@@ -136,44 +123,38 @@ Returns:
   *BufferSize = TempBufferSize;
   *Buffer     = TempBuffer;
   return EFI_SUCCESS;
 }
 
+/**
+
+  Read a file.
+  If ScanFs is FLASE, it will use DebuggerPrivate->Vol as default Fs.
+  If ScanFs is TRUE, it will scan all FS and check the file.
+  If there is only one file match the name, it will be read.
+  If there is more than one file match the name, it will return Error.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  FileName        - The file to be read.
+  @param  BufferSize      - The file buffer size
+  @param  Buffer          - The file buffer
+  @param  ScanFs          - Need Scan all FS
+
+  @retval EFI_SUCCESS    - read file successfully
+  @retval EFI_NOT_FOUND  - file not found
+  @retval EFI_NO_MAPPING - there is duplicated files found
+
+**/
 EFI_STATUS
 EFIAPI
 ReadFileToBuffer (
   IN  EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN  CHAR16                      *FileName,
   OUT UINTN                       *BufferSize,
   OUT VOID                        **Buffer,
   IN  BOOLEAN                     ScanFs
   )
-/*++
-
-Routine Description:
-
-  Read a file.
-  If ScanFs is FLASE, it will use DebuggerPrivate->Vol as default Fs.
-  If ScanFs is TRUE, it will scan all FS and check the file.
-    If there is only one file match the name, it will be read.
-    If there is more than one file match the name, it will return Error.
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  FileName        - The file to be read.
-  BufferSize      - The file buffer size
-  Buffer          - The file buffer
-  ScanFs          - Need Scan all FS
-
-Returns:
-
-  EFI_SUCCESS    - read file successfully
-  EFI_NOT_FOUND  - file not found
-  EFI_NO_MAPPING - there is duplicated files found
-
---*/
 {
   EFI_STATUS                        Status;
   EFI_SIMPLE_FILE_SYSTEM_PROTOCOL   *Vol;
   UINTN                             TempBufferSize;
   VOID                              *TempBuffer;
@@ -270,36 +251,30 @@ Returns:
   // Done
   //
   return EFI_SUCCESS;
 }
 
+/**
+
+  Get file name under this dir with index
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  DirName         - The dir to be read.
+  @param  FileName        - The file name pattern under this dir
+  @param  Index           - The file index under this dir
+
+  @return File Name which match the pattern and index.
+
+**/
 CHAR16 *
 EFIAPI
 GetFileNameUnderDir (
   IN  EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN  CHAR16                      *DirName,
   IN  CHAR16                      *FileName,
   IN OUT UINTN                    *Index
   )
-/*++
-
-Routine Description:
-
-  Get file name under this dir with index
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  DirName         - The dir to be read.
-  FileName        - The file name pattern under this dir
-  Index           - The file index under this dir
-
-Returns:
-
-  File Name which match the pattern and index.
-
---*/
 {
   EFI_STATUS                        Status;
   EFI_FILE_HANDLE                   RootDir;
   EFI_FILE_HANDLE                   Handle;
   UINTN                             FileInfoSize;
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
index 555ee96..f564124 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
@@ -1,45 +1,33 @@
-/*++
+/** @file
 
-Copyright (c) 2007 - 2016, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007 - 2016, 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.
 
-Module Name:
 
-  EdbSupportString.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
 
---*/
+  Convert hex string to uint.
 
-#include "Edb.h"
+  @param  str  -  The string
 
+**/
 UINTN
 EFIAPI
 Xtoi (
   CHAR16  *str
   )
-/*++
-
-Routine Description:
-
-  Convert hex string to uint
-
-Arguments:
-
-  Str  -  The string
-
-Returns:
-
---*/
 {
   UINTN   u;
   CHAR16  c;
   UINTN   m;
 
@@ -88,28 +76,23 @@ Returns:
   }
 
   return u;
 }
 
+/**
+
+  Convert hex string to uint.
+
+  @param  str  -  The string
+
+**/
+
 UINT64
 EFIAPI
 LXtoi (
   CHAR16  *str
   )
-/*++
-
-Routine Description:
-
-  Convert hex string to uint
-
-Arguments:
-
-  Str  -  The string
-
-Returns:
-
---*/
 {
   UINT64  u;
   CHAR16  c;
   UINT64  m;
 
@@ -159,28 +142,22 @@ Returns:
   }
 
   return u;
 }
 
+/**
+
+  Convert hex string to uint.
+
+  @param str  -  The string
+
+**/
 UINTN
 EFIAPI
 Atoi (
   CHAR16  *str
   )
-/*++
-
-Routine Description:
-
-  Convert hex string to uint
-
-Arguments:
-
-  Str  -  The string
-
-Returns:
-
---*/
 {
   UINTN   u;
   CHAR16  c;
   UINTN   m;
   UINTN   n;
@@ -215,28 +192,22 @@ Returns:
   }
 
   return u;
 }
 
+/**
+
+  Convert hex string to uint.
+
+  @param  str  -  The string
+
+**/
 UINTN
 EFIAPI
 AsciiXtoi (
   CHAR8  *str
   )
-/*++
-
-Routine Description:
-
-  Convert hex string to uint
-
-Arguments:
-
-  Str  -  The string
-
-Returns:
-
---*/
 {
   UINTN   u;
   CHAR8   c;
   UINTN   m;
 
@@ -285,28 +256,22 @@ Returns:
   }
 
   return u;
 }
 
+/**
+
+  Convert hex string to uint.
+
+  @param str  -  The string
+
+**/
 UINTN
 EFIAPI
 AsciiAtoi (
   CHAR8  *str
   )
-/*++
-
-Routine Description:
-
-  Convert hex string to uint
-
-Arguments:
-
-  Str  -  The string
-
-Returns:
-
---*/
 {
   UINTN   u;
   CHAR8   c;
   UINTN   m;
   UINTN   n;
@@ -359,32 +324,28 @@ AsciiToUpper (
   )
 {
   return (Chr >= 'a' && Chr <= 'z') ? Chr - ('a' - 'A') : Chr;
 }
 
-INTN
-EFIAPI
-StrCmpUnicodeAndAscii (
-  IN CHAR16   *String,
-  IN CHAR8    *String2
-  )
-/*++
-
-Routine Description:
+/**
   Compare the Unicode and Ascii string pointed by String to the string pointed by String2.
 
-Arguments:
-  String - Unicode String to process
+  @param String - Unicode String to process
 
-  String2 - Ascii string to process
+  @param String2 - Ascii string to process
 
-Returns:
-  Return a positive integer if String is lexicall greater than String2; Zero if
+  @return Return a positive integer if String is lexicall greater than String2; Zero if
   the two strings are identical; and a negative interger if String is lexically
   less than String2.
 
---*/
+**/
+INTN
+EFIAPI
+StrCmpUnicodeAndAscii (
+  IN CHAR16   *String,
+  IN CHAR8    *String2
+  )
 {
   while (*String) {
     if (*String != (CHAR16)*String2) {
       break;
     }
@@ -394,86 +355,80 @@ Returns:
   }
 
   return (*String - (CHAR16)*String2);
 }
 
-INTN
-EFIAPI
-StriCmp (
-  IN CHAR16   *String,
-  IN CHAR16   *String2
-  )
-/*++
+/**
 
-Routine Description:
   Compare the Unicode string pointed by String to the string pointed by String2.
 
-Arguments:
-  String - Unicode String to process
-  String2 - Unicode string to process
+  @param  String - Unicode String to process
+  @param  String2 - Unicode string to process
 
-Returns:
-  Return a positive integer if String is lexically greater than String2; Zero if
+  @return Return a positive integer if String is lexically greater than String2; Zero if
   the two strings are identical; and a negative integer if String is lexically
   less than String2.
 
---*/
+**/
+INTN
+EFIAPI
+StriCmp (
+  IN CHAR16   *String,
+  IN CHAR16   *String2
+  )
 {
   while ((*String != L'\0') &&
          (UnicodeToUpper (*String) == UnicodeToUpper (*String2))) {
     String++;
     String2++;
   }
 
   return UnicodeToUpper (*String) - UnicodeToUpper (*String2);
 }
 
-INTN
-EFIAPI
-StriCmpUnicodeAndAscii (
-  IN CHAR16   *String,
-  IN CHAR8    *String2
-  )
-/*++
+/**
 
-Routine Description:
   Compare the Unicode and Ascii string pointed by String to the string pointed by String2.
 
-Arguments:
-  String - Unicode String to process
-
-  String2 - Ascii string to process
+  @param  String - Unicode String to process
+  @param  String2 - Ascii string to process
 
-Returns:
-  Return a positive integer if String is lexically greater than String2; Zero if
+  @return Return a positive integer if String is lexically greater than String2; Zero if
   the two strings are identical; and a negative integer if String is lexically
   less than String2.
 
---*/
+**/
+INTN
+EFIAPI
+StriCmpUnicodeAndAscii (
+  IN CHAR16   *String,
+  IN CHAR8    *String2
+  )
 {
   while ((*String != L'\0') &&
          (UnicodeToUpper (*String) == (CHAR16)AsciiToUpper (*String2))) {
     String++;
     String2++;
   }
 
   return UnicodeToUpper (*String) - (CHAR16)AsciiToUpper (*String2);
 }
 
+/**
+
+  Verify if the string is end with the sub string.
+
+  @param  Str - The string where to search the sub string
+  @param  SubStr - The substring.
+
+**/
 BOOLEAN
 EFIAPI
 StrEndWith (
   IN CHAR16                       *Str,
   IN CHAR16                       *SubStr
   )
-/*++
-
-Routine Description:
-
-  Verify if the string is end with the sub string.
-
---*/
 {
   CHAR16  *Temp;
 
   if ((Str == NULL) || (SubStr == NULL) || (StrLen(Str) < StrLen(SubStr))) {
     return FALSE;
@@ -489,16 +444,21 @@ Routine Description:
   } else {
     return FALSE;
   }
 }
 
+/**
+  Duplicate a string.
+
+  @param  Src  The string to be duplicated.
+
+**/
 CHAR16 *
 EFIAPI
 StrDuplicate (
   IN CHAR16   *Src
   )
-// duplicate a string
 {
   CHAR16      *Dest;
   UINTN       Size;
 
   Size = (StrLen(Src) + 1) * sizeof(CHAR16);
@@ -511,23 +471,24 @@ StrDuplicate (
 
 
 CHAR16  *mLineBuffer          = NULL;
 CHAR16  *mFieldBuffer         = NULL;
 
+/**
+
+  Find the first substring.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 UINTN
 EFIAPI
 StrSpn (
   IN CHAR16                       *String,
   IN CHAR16                       *CharSet
   )
-/*++
-
-Routine Description:
-
-  Find the first substring.
-
---*/
 {
   UINTN   Count;
   CHAR16  *Str1;
   CHAR16  *Str2;
 
@@ -548,25 +509,26 @@ Routine Description:
   }
 
   return Count;
 }
 
+/**
+
+  Searches a string for the first occurrence of a character contained in a
+  specified buffer.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 
 CHAR16 *
 EFIAPI
 StrBrk (
   IN CHAR16                       *String,
   IN CHAR16                       *CharSet
   )
-/*++
-
-Routine Description:
-
-  Searches a string for the first occurrence of a character contained in a
-  specified buffer.
-
---*/
 {
   CHAR16  *Str1;
   CHAR16  *Str2;
 
   for (Str1 = String; *Str1 != L'\0'; Str1 ++) {
@@ -578,23 +540,24 @@ Routine Description:
   }
 
   return NULL;
 }
 
+/**
+
+  Find the next token after one or more specified characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR16 *
 EFIAPI
 StrTokenLine (
   IN CHAR16                       *String OPTIONAL,
   IN CHAR16                       *CharSet
   )
-/*++
-
-Routine Description:
-
-  Find the next token after one or more specified characters.
-
---*/
 {
   CHAR16  *Begin;
   CHAR16  *End;
 
   Begin = (String == NULL) ? mLineBuffer : String;
@@ -616,24 +579,25 @@ Routine Description:
 
   mLineBuffer = End;
   return Begin;
 }
 
+/**
+
+  Find the next token after one specificed characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 
 CHAR16 *
 EFIAPI
 StrTokenField (
   IN CHAR16                       *String OPTIONAL,
   IN CHAR16                       *CharSet
   )
-/*++
-
-Routine Description:
-
-  Find the next token after one specificed characters.
-
---*/
 {
   CHAR16  *Begin;
   CHAR16  *End;
 
 
@@ -751,23 +715,24 @@ PatchForStrTokenBefore (
 }
 
 CHAR8  *mAsciiLineBuffer          = NULL;
 CHAR8  *mAsciiFieldBuffer         = NULL;
 
+/**
+
+  Find the first substring.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 UINTN
 EFIAPI
 AsciiStrSpn (
   IN CHAR8                       *String,
   IN CHAR8                       *CharSet
   )
-/*++
-
-Routine Description:
-
-  Find the first substring.
-
---*/
 {
   UINTN   Count;
   CHAR8  *Str1;
   CHAR8  *Str2;
 
@@ -788,25 +753,24 @@ Routine Description:
   }
 
   return Count;
 }
 
+/**
+  Searches a string for the first occurrence of a character contained in a
+  specified buffer.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
 
+**/
 CHAR8 *
 EFIAPI
 AsciiStrBrk (
   IN CHAR8                       *String,
   IN CHAR8                       *CharSet
   )
-/*++
-
-Routine Description:
-
-  Searches a string for the first occurrence of a character contained in a
-  specified buffer.
-
---*/
 {
   CHAR8  *Str1;
   CHAR8  *Str2;
 
   for (Str1 = String; *Str1 != '\0'; Str1 ++) {
@@ -818,23 +782,24 @@ Routine Description:
   }
 
   return NULL;
 }
 
+/**
+
+  Find the next token after one or more specified characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR8 *
 EFIAPI
 AsciiStrTokenLine (
   IN CHAR8                       *String OPTIONAL,
   IN CHAR8                       *CharSet
   )
-/*++
-
-Routine Description:
-
-  Find the next token after one or more specified characters.
-
---*/
 {
   CHAR8  *Begin;
   CHAR8  *End;
 
   Begin = (String == NULL) ? mAsciiLineBuffer : String;
@@ -856,24 +821,25 @@ Routine Description:
 
   mAsciiLineBuffer = End;
   return Begin;
 }
 
+/**
+
+  Find the next token after one specificed characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 
 CHAR8 *
 EFIAPI
 AsciiStrTokenField (
   IN CHAR8                       *String OPTIONAL,
   IN CHAR8                       *CharSet
   )
-/*++
-
-Routine Description:
-
-  Find the next token after one specificed characters.
-
---*/
 {
   CHAR8  *Begin;
   CHAR8  *End;
 
 
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c
index 265e6c1..42d8086 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbSupportUI.c
-
-Abstract:
-
-
---*/
+**/
 
 #include "Edb.h"
 
 VOID
 EFIAPI
@@ -31,32 +25,27 @@ SetCursorPosition (
   IN  CHAR16                          *Str,
   IN  UINTN                           StrPos,
   IN  UINTN                           Len
   );
 
+/**
+
+  Function waits for a given event to fire, or for an optional timeout to expire.
+
+  @param  Event            - The event to wait for
+  @param  Timeout          - An optional timeout value in 100 ns units.
+
+  @retval EFI_SUCCESS       - Event fired before Timeout expired.
+  @retval EFI_TIME_OUT     - Timout expired before Event fired..
+
+**/
 EFI_STATUS
 EFIAPI
 WaitForSingleEvent (
   IN EFI_EVENT                  Event,
   IN UINT64                     Timeout OPTIONAL
   )
-/*++
-
-Routine Description:
-  Function waits for a given event to fire, or for an optional timeout to expire.
-
-Arguments:
-  Event            - The event to wait for
-
-  Timeout          - An optional timeout value in 100 ns units.
-
-Returns:
-
-  EFI_SUCCESS       - Event fired before Timeout expired.
-  EFI_TIME_OUT     - Timout expired before Event fired..
-
---*/
 {
   EFI_STATUS  Status;
   UINTN       Index;
   EFI_EVENT   TimerEvent;
   EFI_EVENT   WaitList[2];
@@ -101,30 +90,26 @@ Returns:
   }
 
   return Status;
 }
 
+/**
+
+  Move the cursor position one character backward.
+
+  @param  LineLength       Length of a line. Get it by calling QueryMode
+  @param  Column           Current column of the cursor position
+  @param  Row              Current row of the cursor position
+
+**/
 VOID
 EFIAPI
 ConMoveCursorBackward (
   IN     UINTN                   LineLength,
   IN OUT UINTN                   *Column,
   IN OUT UINTN                   *Row
   )
-/*++
-
-Routine Description:
-  Move the cursor position one character backward.
-
-Arguments:
-  LineLength       Length of a line. Get it by calling QueryMode
-  Column           Current column of the cursor position
-  Row              Current row of the cursor position
-
-Returns:
-
---*/
 {
   ASSERT (Column != NULL);
   ASSERT (Row != NULL);
   //
   // If current column is 0, move to the last column of the previous line,
@@ -142,32 +127,28 @@ Returns:
   } else {
     (*Column)--;
   }
 }
 
+/**
+
+  Move the cursor position one character backward.
+
+  @param  LineLength       Length of a line. Get it by calling QueryMode
+  @param  TotalRow         Total row of a screen, get by calling QueryMode
+  @param  Column           Current column of the cursor position
+  @param  Row              Current row of the cursor position
+
+**/
 VOID
 EFIAPI
 ConMoveCursorForward (
   IN     UINTN                   LineLength,
   IN     UINTN                   TotalRow,
   IN OUT UINTN                   *Column,
   IN OUT UINTN                   *Row
   )
-/*++
-
-Routine Description:
-  Move the cursor position one character backward.
-
-Arguments:
-  LineLength       Length of a line. Get it by calling QueryMode
-  TotalRow         Total row of a screen, get by calling QueryMode
-  Column           Current column of the cursor position
-  Row              Current row of the cursor position
-
-Returns:
-
---*/
 {
   ASSERT (Column != NULL);
   ASSERT (Row != NULL);
   //
   // If current column is at line end, move to the first column of the nest
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.c
index 5794502..9ae0141 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.c
@@ -1,54 +1,42 @@
-/*++
+/** @file
 
-Copyright (c) 2007 - 2016, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007 - 2016, Intel Corporatio. 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.
 
-Module Name:
 
-  EdbSymbol.c
+**/
 
-Abstract:
+#include "Edb.h"
 
+/**
 
---*/
+  Load single symbol entry.
 
-#include "Edb.h"
+  @param  Object          - Symbol file object
+  @param  Name            - Symbol name
+  @param  ObjName         - Object name
+  @param  Address         - Symbol address
+  @param  Type            - Symbol type
+
+  @retval EFI_SUCCESS - add single symbol entry successfully
 
+**/
 EFI_STATUS
 EdbLoadSymbolSingleEntry (
   IN EFI_DEBUGGER_SYMBOL_OBJECT  *Object,
   IN CHAR8                       *Name,
   IN CHAR8                       *ObjName,
   IN UINTN                       Address,
   IN EFI_DEBUGGER_SYMBOL_TYPE    Type
   )
-/*++
-
-Routine Description:
-
-  Load single symbol entry
-
-Arguments:
-
-  Object          - Symbol file object
-  Name            - Symbol name
-  ObjName         - Object name
-  Address         - Symbol address
-  Type            - Symbol type
-
-Returns:
-
-  EFI_SUCCESS - add single symbol entry successfully
-
---*/
 {
   EFI_DEBUGGER_SYMBOL_ENTRY  *Entry;
 
   //
   // Check Count VS MaxCount
@@ -112,11 +100,11 @@ typedef enum {
   EdbEbcSymbolParseStateReadyForType,
   EdbEbcSymbolParseStateReadyForObject,
   EdbEbcSymbolParseStateMax,
 } EDB_EBC_SYMBOL_PARSE_STATE;
 
-/*++
+/**
 
   The following code depends on the MAP file generated by IEC compiler (actually Microsoft linker).
 
   Sample as follows: EbcTest.map
 ===============================================================================
@@ -163,35 +151,29 @@ typedef enum {
  Static symbols
 
  0001:00000000       TestSubRoutine2            10000400 f   EbcTest.obj
 ===============================================================================
 
---*/
+**/
+
+/**
+
+  Load symbol entry by Iec.
+
+  @param  Object          - Symbol file object
+  @param  BufferSize      - Symbol file buffer size
+  @param  Buffer          - Symbol file buffer
+
+  @retval EFI_SUCCESS - add symbol entry successfully
+
+**/
 EFI_STATUS
 EdbLoadSymbolEntryByIec (
   IN EFI_DEBUGGER_SYMBOL_OBJECT  *Object,
   IN UINTN                       BufferSize,
   IN VOID                        *Buffer
   )
-/*++
-
-Routine Description:
-
-  Load symbol entry by Iec
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  Object          - Symbol file object
-  BufferSize      - Symbol file buffer size
-  Buffer          - Symbol file buffer
-
-Returns:
-
-  EFI_SUCCESS - add symbol entry successfully
-
---*/
 {
   CHAR8                      *LineBuffer;
   CHAR8                      *FieldBuffer;
   EDB_EBC_MAP_PARSE_STATE    MapParseState;
   EDB_EBC_SYMBOL_PARSE_STATE SymbolParseState;
@@ -405,66 +387,54 @@ ExitFieldParse:
   // Done
   //
   return EFI_SUCCESS;
 }
 
+/**
+
+  Load symbol entry.
+
+  @param  Object          - Symbol file object
+  @param  BufferSize      - Symbol file buffer size
+  @param  Buffer          - Symbol file buffer
+
+  @retval EFI_SUCCESS - add symbol entry successfully
+
+**/
 EFI_STATUS
 EdbLoadSymbolEntry (
   IN EFI_DEBUGGER_SYMBOL_OBJECT  *Object,
   IN UINTN                       BufferSize,
   IN VOID                        *Buffer
   )
-/*++
-
-Routine Description:
-
-  Load symbol entry
-
-Arguments:
-
-  Object          - Symbol file object
-  BufferSize      - Symbol file buffer size
-  Buffer          - Symbol file buffer
-
-Returns:
-
-  EFI_SUCCESS - add symbol entry successfully
-
---*/
 {
   //
   // MAP file format depends on the compiler (actually linker).
   //
   // It is possible to check the different MAP file format in this routine.
   // Now only IEC is supported.
   //
   return EdbLoadSymbolEntryByIec (Object, BufferSize, Buffer);
 }
 
+/**
+
+  Find symbol file by name.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  FileName        - Symbol file name
+  @param  Index           - Symbol file index
+
+  @return Object
+
+**/
 EFI_DEBUGGER_SYMBOL_OBJECT *
 EdbFindSymbolFile (
   IN EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN CHAR16                      *FileName,
   IN OUT UINTN                   *Index OPTIONAL
   )
-/*++
-
-Routine Description:
-
-  Find symbol file by name
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  FileName        - Symbol file name
-  Index           - Symbol file index
-
-Returns:
-
-  Object
-
---*/
 {
   UINTN ObjectIndex;
 
   //
   // Check each Object
@@ -485,35 +455,29 @@ Returns:
   // Not found
   //
   return NULL;
 }
 
+/**
+
+  Find symbol by address.
+
+  @param  Address         - Symbol address
+  @param  Type            - Search type
+  @param  RetObject       - Symbol object
+  @param  RetEntry        - Symbol entry
+
+  @return Nearest symbol address
+
+**/
 UINTN
 EbdFindSymbolAddress (
   IN UINTN                       Address,
   IN EDB_MATCH_SYMBOL_TYPE       Type,
   OUT EFI_DEBUGGER_SYMBOL_OBJECT **RetObject,
   OUT EFI_DEBUGGER_SYMBOL_ENTRY  **RetEntry
   )
-/*++
-
-Routine Description:
-
-  Find symbol by address
-
-Arguments:
-
-  Address         - Symbol address
-  Type            - Search type
-  RetObject       - Symbol object
-  RetEntry        - Symbol entry
-
-Returns:
-
-  Nearest symbol address
-
---*/
 {
   UINTN                      Index;
   UINTN                      SubIndex;
   UINTN                      CandidateLowerAddress;
   UINTN                      CandidateUpperAddress;
@@ -625,31 +589,25 @@ Returns:
   // No match and nearest one, return NULL
   //
   return 0;
 }
 
+/**
+
+  Unload symbol file by name.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  FileName        - Symbol file name
+
+  @retval EFI_SUCCESS - unload symbol successfully
+
+**/
 EFI_STATUS
 EdbUnloadSymbol (
   IN EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN CHAR16                      *FileName
   )
-/*++
-
-Routine Description:
-
-  Unload symbol file by name
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  FileName        - Symbol file name
-
-Returns:
-
-  EFI_SUCCESS - unload symbol successfully
-
---*/
 {
   EFI_DEBUGGER_SYMBOL_OBJECT *Object;
   UINTN                      ObjectIndex;
   UINTN                      Index;
   EFI_DEBUGGER_SYMBOL_ENTRY  *OldEntry;
@@ -707,35 +665,29 @@ Returns:
   }
 
   return EFI_SUCCESS;
 }
 
+/**
+
+  Load symbol file by name.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  FileName        - Symbol file name
+  @param  BufferSize      - Symbol file buffer size
+  @param  Buffer          - Symbol file buffer
+
+  @retval EFI_SUCCESS - load symbol successfully
+
+**/
 EFI_STATUS
 EdbLoadSymbol (
   IN EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN CHAR16                      *FileName,
   IN UINTN                       BufferSize,
   IN VOID                        *Buffer
   )
-/*++
-
-Routine Description:
-
-  Load symbol file by name
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  FileName        - Symbol file name
-  BufferSize      - Symbol file buffer size
-  Buffer          - Symbol file buffer
-
-Returns:
-
-  EFI_SUCCESS - load symbol successfully
-
---*/
 {
   EFI_DEBUGGER_SYMBOL_OBJECT *Object;
   EFI_STATUS                 Status;
 
   //
@@ -791,30 +743,24 @@ Returns:
   DebuggerPrivate->DebuggerSymbolContext.ObjectCount ++;
 
   return EFI_SUCCESS;
 }
 
-CHAR8 *
-GetPdbPath (
-  VOID *ImageBase
-  )
-/*++
-
-Routine Description:
-
-  Located PDB path name in PE image
-
-Arguments:
+/**
 
-  ImageBase - base of PE to search
+  Located PDB path name in PE image.
 
-Returns:
+  @param  ImageBase - base of PE to search
 
-  Pointer into image at offset of PDB file name if PDB file name is found,
+  @return Pointer into image at offset of PDB file name if PDB file name is found,
   Otherwise a pointer to an empty string.
 
---*/
+**/
+CHAR8 *
+GetPdbPath (
+  VOID *ImageBase
+  )
 {
   CHAR8                           *PdbPath;
   UINT32                          DirCount;
   EFI_IMAGE_DOS_HEADER            *DosHdr;
   EFI_IMAGE_OPTIONAL_HEADER_UNION *NtHdr;
@@ -894,32 +840,26 @@ Returns:
   // Done successfully
   //
   return PdbPath;
 }
 
+/**
+
+  Check whether PDB file and MAP file have same name.
+
+  @param  PdbFileName - PDB file name
+  @param  MapFileName - MAP file name
+
+  @retval TRUE  - PDB and MAP file name match
+  @retval FALSE - PDB and MAP file name not match
+
+**/
 BOOLEAN
 MatchPdbAndMap (
   IN CHAR8   *PdbFileName,
   IN CHAR16  *MapFileName
   )
-/*++
-
-Routine Description:
-
-  Check whether PDB file and MAP file have same name
-
-Arguments:
-
-  PdbFileName - PDB file name
-  MapFileName - MAP file name
-
-Returns:
-
-  TRUE  - PDB and MAP file name match
-  FALSE - PDB and MAP file name not match
-
---*/
 {
   UINTN   PdbNameSize;
   UINTN   MapNameSize;
   CHAR8   *PurePdbFileName;
   UINTN   Index;
@@ -966,15 +906,11 @@ typedef struct {
   UINT32                TableSize;
 } EFI_DEBUG_IMAGE_INFO_TABLE_HEADER_OLD;
 
 EFI_DEBUG_IMAGE_INFO_TABLE_HEADER  mDebugImageInfoTableHeader;
 
-VOID
-EdbFixDebugImageInfoTable (
-  IN OUT EFI_DEBUG_IMAGE_INFO_TABLE_HEADER **DebugImageInfoTableHeader
-  )
-/*
+/**
 For compatibility consideration, we handle 2 cases:
 
 1) IA32:
   Old:                          New:
   +------------------------+    +------------------------+
@@ -995,11 +931,17 @@ For compatibility consideration, we handle 2 cases:
   | UpdateStatus           |    | EfiDebugImageInfoTable |
   +------------------------+    |                        |
   | TableSize              |    |                        |
   +------------------------+    +------------------------+
 
-*/
+  @param DebugImageInfoTableHeader  Point to the EFI_DEBUG_IMAGE_INFO_TABLE_HEADER structure.
+
+**/
+VOID
+EdbFixDebugImageInfoTable (
+  IN OUT EFI_DEBUG_IMAGE_INFO_TABLE_HEADER **DebugImageInfoTableHeader
+  )
 {
   mDebugImageInfoTableHeader.EfiDebugImageInfoTable = ((EFI_DEBUG_IMAGE_INFO_TABLE_HEADER_OLD *)(*DebugImageInfoTableHeader))->EfiDebugImageInfoTable;
   mDebugImageInfoTableHeader.UpdateStatus           = ((EFI_DEBUG_IMAGE_INFO_TABLE_HEADER_OLD *)(*DebugImageInfoTableHeader))->UpdateStatus;
   mDebugImageInfoTableHeader.TableSize              = ((EFI_DEBUG_IMAGE_INFO_TABLE_HEADER_OLD *)(*DebugImageInfoTableHeader))->TableSize;
 
@@ -1017,34 +959,28 @@ For compatibility consideration, we handle 2 cases:
 }
 //
 // BUGBUG: work-around end
 //
 
+/**
+
+  Patch symbol RVA.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  FileName        - Symbol file name
+  @param  SearchType      - Search type for Object
+
+  @retval EFI_SUCCESS   - Patch symbol RVA successfully
+  @retval EFI_NOT_FOUND - Symbol RVA base not found
+
+**/
 EFI_STATUS
 EdbPatchSymbolRVA (
   IN EFI_DEBUGGER_PRIVATE_DATA     *DebuggerPrivate,
   IN CHAR16                        *FileName,
   IN EDB_EBC_IMAGE_RVA_SEARCH_TYPE SearchType
   )
-/*++
-
-Routine Description:
-
-  Patch symbol RVA
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  FileName        - Symbol file name
-  SearchType      - Search type for Object
-
-Returns:
-
-  EFI_SUCCESS   - Patch symbol RVA successfully
-  EFI_NOT_FOUND - Symbol RVA base not found
-
---*/
 {
   EFI_STATUS            Status;
   UINTN                 ImageNumber;
   EFI_DEBUG_IMAGE_INFO  *ImageTable;
   CHAR8                 *PdbPath;
@@ -1147,32 +1083,26 @@ Returns:
   // No match
   //
   return EFI_NOT_FOUND;
 }
 
+/**
+
+  Check whether OBJ file and COD file have same name.
+
+  @param  ObjFileName - OBJ file name
+  @param  CodFileName - COD file name
+
+  @retval TRUE  - OBJ and COD file name match
+  @retval FALSE - OBJ and COD file name not match
+
+**/
 BOOLEAN
 MatchObjAndCod (
   IN CHAR8   *ObjFileName,
   IN CHAR16  *CodFileName
   )
-/*++
-
-Routine Description:
-
-  Check whether OBJ file and COD file have same name
-
-Arguments:
-
-  ObjFileName - OBJ file name
-  CodFileName - COD file name
-
-Returns:
-
-  TRUE  - OBJ and COD file name match
-  FALSE - OBJ and COD file name not match
-
---*/
 {
   UINTN   ObjNameSize;
   UINTN   CodNameSize;
   CHAR8   *PureObjFileName;
   UINTN   Index;
@@ -1217,314 +1147,37 @@ typedef enum {
   EdbEbcCodParseStateSymbolStart,
   EdbEbcCodParseStateSymbolEnd,
   EdbEbcCodParseStateMax,
 } EDB_EBC_COD_PARSE_STATE;
 
-/*++
+/**
 
   The following code depends on the COD file generated by IEC compiler.
 
-  Sample as follows: EbcTest.cod
-===============================================================================
-; -- Machine type EFI
-; mark_description "Intel(R) C Compiler for EFI Byte Code, Version 1.2 Build 20040123";
-; mark_description "XXX";
-;ident "Intel(R) C Compiler for EFI Byte Code, Version 1.2 Build 20040123"
-;ident "XXX"
-    .686P
-    .387
-_TEXT   SEGMENT PARA PUBLIC USE32 'CODE'
-_TEXT   ENDS
-_DATA   SEGMENT PARA PUBLIC USE32 'DATA'
-    ALIGN 010H
-_DATA   ENDS
-_BSS    SEGMENT PARA PUBLIC USE32 'BSS'
-    ALIGN 010H
-_BSS    ENDS
-_VARBSS SEGMENT PARA PUBLIC USE32 'BSS'
-    ALIGN 010H
-_VARBSS ENDS
-    ASSUME  CS:FLAT,DS:FLAT,SS:FLAT
-_DATA   SEGMENT PARA PUBLIC USE32 'DATA'
-TestVariable2   DD 000000003H,000000000H    ; u64
-_DATA   ENDS
-_DATA   SEGMENT PARA PUBLIC USE32 'DATA'
-_DATA   ENDS
-_TEXT   SEGMENT PARA PUBLIC USE32 'CODE'
-; -- Begin  EfiMain
-; mark_begin;
-    PUBLIC   EfiMain
-EfiMain  PROC NEAR
-$B3$1:; 11a
-$LN45:
-
-;117 ; {
-
-  0011a 60 00 70 80         MOVqw     R0, R0(+0,-112)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:117
-$LN46:
-
-;118 ;   UINT16 test = 0x1234;
-
-  0011e 77 58 58 00 34
-        12                  MOVIww    @R0(+0,+88), +4660      ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:118
-$LN47:
-
-;121 ;   EFI_STATUS  Status;
-;121 ;
-;121 ;   SystemTable->ConOut->OutputString (
-
-  00124 72 87 01 12         MOVnw     R7, @R0(+1,+128)        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:121
-  00128 72 f7 85 21         MOVnw     R7, @R7(+5,+24)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:121
-$LN48:
-
-;122 ;                          SystemTable->ConOut,
-
-  0012c 72 84 01 12         MOVnw     R4, @R0(+1,+128)        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:122
-  00130 72 c8 85 21         MOVnw     @R0, @R4(+5,+24)        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:122
-  00134 b9 34 00 00 00
-        00                  MOVreld   R4, __STRING$1          ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:122
-  0013a b2 48 01 10         MOVnw     @R0(+1,+0), R4          ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:122
-  0013e 83 2f 01 00 00
-        10                  CALLEX    @R7(+1,+0)              ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:122
-$B3$2:; 144
-$LN49:
-
-;125 ;                          L"Hello EBC Test!\n\r"
-;125 ;                          );
-;125 ;   EFI_BREAKPOINT ();
-
-  00144 00 03               BREAK     3                       ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:125
-$B3$3:; 146
-$LN50:
-
-;126 ;   TestVariable1 = 6;
-
-  00146 b9 37 00 00 00
-        00                  MOVreld   R7, TestVariable1       ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:126
-  0014c 78 0f 06 00         MOVInw    @R7, (0,6)              ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:126
-$LN51:
-
-;127 ;   TestSubRoutineSub (1, 5);
-
-  00150 78 08 01 00         MOVInw    @R0, (0,1)              ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:127
-  00154 78 48 01 10 05
-        00                  MOVInw    @R0(1,0), (0,5)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:127
-  0015a 83 10 00 00 00
-        00                  CALL      TestSubRoutineSub       ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:127
-$B3$4:; 160
-$LN52:
-
-;129 ;
-;129 ;   SystemTable->ConOut->OutputString (
-
-  00160 72 87 01 12         MOVnw     R7, @R0(+1,+128)        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:129
-  00164 72 f7 85 21         MOVnw     R7, @R7(+5,+24)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:129
-$LN53:
-
-;130 ;                          SystemTable->ConOut,
-
-  00168 72 84 01 12         MOVnw     R4, @R0(+1,+128)        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:130
-  0016c 72 c8 85 21         MOVnw     @R0, @R4(+5,+24)        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:130
-$LN54:
-
-;131 ;                          TestStr
-
-  00170 b9 34 00 00 00
-        00                  MOVreld   R4, TestStr             ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:131
-  00176 b2 c8 01 10         MOVnw     @R0(+1, +0), @R4        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:131
-  0017a 83 2f 01 00 00
-        10                  CALLEX    @R7(+1,+0)              ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:131
-$B3$5:; 180
-$LN55:
-
-;134 ;                          );
-;134 ;
-;134 ;   test = test & 0xFF;
-
-  00180 de 88 58 00 58
-        00                  MOVww     @R0(+0,+88), @R0(+0,+88) ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:134
-$LN56:
-
-;139 ;   if (test != 0x34) {
-;139 ; //    EFI_BREAKPOINT ();
-;139 ;   }
-;139 ;
-;139 ;   Status = TestSubRoutine (1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
-
-  00186 78 08 01 00         MOVInw    @R0, (0,1)              ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-  0018a 78 48 01 10 02
-        00                  MOVInw    @R0(1,0), (0,2)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-  00190 78 48 02 10 03
-        00                  MOVInw    @R0(2,0), (0,3)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-  00196 78 48 03 10 04
-        00                  MOVInw    @R0(3,0), (0,4)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-  0019c 78 48 04 20 05
-        00                  MOVInw    @R0(4,0), (0,5)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-  001a2 78 48 05 20 06
-        00                  MOVInw    @R0(5,0), (0,6)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-  001a8 78 48 06 20 07
-        00                  MOVInw    @R0(6,0), (0,7)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-  001ae 78 48 07 20 08
-        00                  MOVInw    @R0(7,0), (0,8)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-  001b4 78 48 08 20 09
-        00                  MOVInw    @R0(8,0), (0,9)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-  001ba 78 48 09 20 0a
-        00                  MOVInw    @R0(9,0), (0,10)        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-  001c0 83 10 00 00 00
-        00                  CALL      TestSubRoutine          ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-$B3$10:; 1c6
-  001c6 b2 78 60 00         MOVnw     @R0(+0,+96), R7         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-$B3$6:; 1ca
-$LN57:
-  001ca f2 88 50 00 60
-        00                  MOVnw     @R0(+0,+80), @R0(+0,+96) ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:139
-$LN58:
-
-;141 ;
-;141 ;   SystemTable->ConOut->OutputString (
-
-  001d0 72 87 01 12         MOVnw     R7, @R0(+1,+128)        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:141
-  001d4 72 f7 85 21         MOVnw     R7, @R7(+5,+24)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:141
-$LN59:
-
-;142 ;                          SystemTable->ConOut,
-
-  001d8 72 84 01 12         MOVnw     R4, @R0(+1,+128)        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:142
-  001dc 72 c8 85 21         MOVnw     @R0, @R4(+5,+24)        ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:142
-  001e0 b9 34 00 00 00
-        00                  MOVreld   R4, __STRING$2          ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:142
-  001e6 b2 48 01 10         MOVnw     @R0(+1,+0), R4          ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:142
-  001ea 83 2f 01 00 00
-        10                  CALLEX    @R7(+1,+0)              ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:142
-$B3$7:; 1f0
-$LN60:
-
-;146 ;                          L"Goodbye EBC Test!\n\r"
-;146 ;                          );
-;146 ;
-;146 ;   return Status;
-
-  001f0 72 87 50 00         MOVnw     R7, @R0(+0,+80)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:146
-  001f4 60 00 70 00         MOVqw     R0, R0(+0,+112)         ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:146
-  001f8 04 00               RET                               ;C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest.c:146
-; mark_end;
-EfiMain ENDP
-_TEXT   ENDS
-_DATA   SEGMENT PARA PUBLIC USE32 'DATA'
-    DB 3 DUP (0)    ; pad
-__STRING$2  DW 71   ; u16
-    DW 111  ; u16
-    DW 111  ; u16
-    DW 100  ; u16
-    DW 98   ; u16
-    DW 121  ; u16
-    DW 101  ; u16
-    DW 32   ; u16
-    DW 69   ; u16
-    DW 66   ; u16
-    DW 67   ; u16
-    DW 32   ; u16
-    DW 84   ; u16
-    DW 101  ; u16
-    DW 115  ; u16
-    DW 116  ; u16
-    DW 33   ; u16
-    DW 10   ; u16
-    DW 13   ; u16
-    DW 0    ; u16
-__STRING$1  DW 72   ; u16
-    DW 101  ; u16
-    DW 108  ; u16
-    DW 108  ; u16
-    DW 111  ; u16
-    DW 32   ; u16
-    DW 69   ; u16
-    DW 66   ; u16
-    DW 67   ; u16
-    DW 32   ; u16
-    DW 84   ; u16
-    DW 101  ; u16
-    DW 115  ; u16
-    DW 116  ; u16
-    DW 33   ; u16
-    DW 10   ; u16
-    DW 13   ; u16
-    DW 0    ; u16
-_DATA   ENDS
-_DATA   SEGMENT PARA PUBLIC USE32 'DATA'
-_DATA   ENDS
-; -- End  EfiMain
-_DATA   SEGMENT PARA PUBLIC USE32 'DATA'
-__STRING$0  DW 55   ; u16
-    DW 56   ; u16
-    DW 57   ; u16
-    DW 52   ; u16
-    DW 53   ; u16
-    DW 54   ; u16
-    DW 49   ; u16
-    DW 50   ; u16
-    DW 51   ; u16
-    DW 13   ; u16
-    DW 10   ; u16
-    DW 0    ; u16
-_DATA   ENDS
-_VARBSS SEGMENT PARA PUBLIC USE32 'BSS'
-    PUBLIC TestStr
-TestStr DD 2 DUP (?)    ; pad
-    PUBLIC TestVariable1
-TestVariable1   DD 2 DUP (?)    ; pad
-_VARBSS ENDS
-_VARBSS_INIT    SEGMENT DWORD PUBLIC USE32 'CODE'
-; -- Begin varbss_init_C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest$c45b815d2
-    PUBLIC    varbss_init_C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest$c45b815d2
-varbss_init_C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest$c45b815d2 PROC NEAR
-  00000 b9 34 00 00 00
-        00                  MOVreld   R4, TestStr
-  00006 b9 35 00 00 00
-        00                  MOVreld   R5, __STRING$0
-  0000c 33 5c               MOVnd     @R4, R5
-  0000e b9 34 00 00 00
-        00                  MOVreld   R4, TestVariable1
-  00014 78 0c 04 00         MOVInw    @R4, (0,4)
-  00018 04 00               RET
-; -- End varbss_init_C:\efi_src\TIANO\Edk\Sample\Universal\Ebc\Dxe\EbcTest\EbcTest$c45b815d2
-_VARBSS_INIT    ENDS
-_DATA   SEGMENT PARA PUBLIC USE32 'DATA'
-_DATA   ENDS
-EXTRN   TestSubRoutineSub:PROC
-    END
+**/
 
-===============================================================================
+/**
+
+  Load code by symbol by Iec.
+
+  @param  Name            - Symbol file name
+  @param  Buffer          - Symbol file buffer
+  @param  BufferSize      - Symbol file buffer size
+  @param  CodeBufferSize  - Code buffer size
+  @param  FuncOffset      - Code funcion offset
 
---*/
+  @return CodeBuffer
+
+**/
 CHAR8 *
 EdbLoadCodBySymbolByIec (
   IN CHAR8                       *Name,
   IN VOID                        *Buffer,
   IN UINTN                       BufferSize,
   OUT UINTN                      *CodeBufferSize,
   OUT UINTN                      *FuncOffset
   )
-/*++
-
-Routine Description:
-
-  Load code by symbol by Iec
-
-Arguments:
-
-  Name            - Symbol file name
-  BufferSize      - Symbol file buffer size
-  Buffer          - Symbol file buffer
-  CodeBufferSize  - Code buffer size
-  FuncOffset      - Code funcion offset
-
-Returns:
-
-  CodeBuffer
-
---*/
 {
   CHAR8                      *LineBuffer;
   CHAR8                      *FieldBuffer;
   VOID                       *BufferStart;
   VOID                       *BufferEnd;
@@ -1644,69 +1297,56 @@ Returns:
   // no function found
   //
   return NULL;
 }
 
+/**
+
+  Load code by symbol.
+
+  @param  Name            - Symbol file name
+  @param  Buffer          - Symbol file buffer
+  @param  BufferSize      - Symbol file buffer size
+  @param  CodeBufferSize  - Code buffer size
+  @param  FuncOffset      - Code funcion offset
+
+  @return CodeBuffer
+
+**/
 CHAR8 *
 EdbLoadCodBySymbol (
   IN CHAR8                       *Name,
   IN VOID                        *Buffer,
   IN UINTN                       BufferSize,
   OUT UINTN                      *CodeBufferSize,
   OUT UINTN                      *FuncOffset
   )
-/*++
-
-Routine Description:
-
-  Load code by symbol
-
-Arguments:
-
-  Name            - Symbol file name
-  BufferSize      - Symbol file buffer size
-  Buffer          - Symbol file buffer
-  CodeBufferSize  - Code buffer size
-  FuncOffset      - Code funcion offset
-
-Returns:
-
-  CodeBuffer
-
---*/
 {
   //
   // COD file format depends on the compiler.
   //
   // It is possible to check the different COD file format in this routine.
   // Now only IEC is supported.
   //
   return EdbLoadCodBySymbolByIec (Name, Buffer, BufferSize, CodeBufferSize, FuncOffset);
 }
 
+/**
+
+  Find code from object.
+
+  @param  DebuggerPrivate    EBC Debugger private data structure
+  @param  Object          - Symbol object
+  @param  FileName        - File name
+
+**/
 VOID *
 EdbFindCodeFromObject (
   IN EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN EFI_DEBUGGER_SYMBOL_OBJECT  *Object,
   IN CHAR16                      *FileName
   )
-/*++
-
-Routine Description:
-
-  Find code from object
-
-Arguments:
-
-  Object          - Symbol object
-  FileName        - File name
-
-Returns:
-
-  CodeBuffer
-
---*/
 {
   UINTN                      EntryIndex;
 
   //
   // Go througn each Entry in this Object
@@ -1743,37 +1383,31 @@ Returns:
   // not found
   //
   return NULL;
 }
 
+/**
+
+  Load code.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  MapFileName     - Symbol file name
+  @param  FileName        - Code file name
+  @param  BufferSize      - Code file buffer size
+  @param  Buffer          - Code file buffer
+
+  @retval EFI_SUCCESS - Code loaded successfully
+
+**/
 EFI_STATUS
 EdbLoadCode (
   IN EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN CHAR16                      *MapFileName,
   IN CHAR16                      *FileName,
   IN UINTN                       BufferSize,
   IN VOID                        *Buffer
   )
-/*++
-
-Routine Description:
-
-  Load code
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  MapFileName     - Symbol file name
-  FileName        - Code file name
-  BufferSize      - Code file buffer size
-  Buffer          - Code file buffer
-
-Returns:
-
-  EFI_SUCCESS - Code loaded successfully
-
---*/
 {
   EFI_DEBUGGER_SYMBOL_OBJECT *Object;
   UINTN                      ObjectIndex;
   UINTN                      EntryIndex;
   VOID                       *SourceBuffer;
@@ -1861,35 +1495,29 @@ Returns:
   // Done
   //
   return EFI_SUCCESS;
 }
 
+/**
+
+  Unload code.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  MapFileName     - Symbol file name
+  @param  FileName        - Code file name
+  @param  Buffer          - Code file buffer
+
+  @retval EFI_SUCCESS - Code unloaded successfully
+
+**/
 EFI_STATUS
 EdbUnloadCode (
   IN EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN CHAR16                      *MapFileName,
   IN CHAR16                      *FileName,
   OUT VOID                       **Buffer
   )
-/*++
-
-Routine Description:
-
-  Unload code
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  MapFileName     - Symbol file name
-  FileName        - Code file name
-  Buffer          - Code file buffer
-
-Returns:
-
-  EFI_SUCCESS - Code unloaded successfully
-
---*/
 {
   EFI_DEBUGGER_SYMBOL_OBJECT *Object;
   UINTN                      ObjectIndex;
   UINTN                      EntryIndex;
 
@@ -1938,37 +1566,31 @@ Returns:
   // Done
   //
   return EFI_SUCCESS;
 }
 
+/**
+
+  Add code buffer.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  MapFileName     - Symbol file name
+  @param  CodeFileName    - Code file name
+  @param  SourceBufferSize- Code buffer size
+  @param  SourceBuffer    - Code buffer
+
+  @retval EFI_SUCCESS - CodeBuffer added successfully
+
+**/
 EFI_STATUS
 EdbAddCodeBuffer (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     CHAR16                    *MapFileName,
   IN     CHAR16                    *CodeFileName,
   IN     UINTN                     SourceBufferSize,
   IN     VOID                      *SourceBuffer
   )
-/*++
-
-Routine Description:
-
-  Add code buffer
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  MapFileName     - Symbol file name
-  CodeFileName    - Code file name
-  SourceBufferSize- Code buffer size
-  SourceBuffer    - Code buffer
-
-Returns:
-
-  EFI_SUCCESS - CodeBuffer added successfully
-
---*/
 {
   UINTN                      Index;
   EFI_DEBUGGER_SYMBOL_OBJECT *Object;
 
   //
@@ -1989,35 +1611,29 @@ Returns:
   Object->SourceBuffer[Index] = SourceBuffer;
 
   return EFI_SUCCESS;
 }
 
+/**
+
+  Delete code buffer.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  MapFileName     - Symbol file name
+  @param  CodeFileName    - Code file name
+  @param  SourceBuffer    - Code buffer
+
+  @retval EFI_SUCCESS - CodeBuffer deleted successfully
+
+**/
 EFI_STATUS
 EdbDeleteCodeBuffer (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     CHAR16                    *MapFileName,
   IN     CHAR16                    *CodeFileName,
   IN     VOID                      *SourceBuffer
   )
-/*++
-
-Routine Description:
-
-  Delete code buffer
-
-Arguments:
-
-  DebuggerPrivate - EBC Debugger private data structure
-  MapFileName     - Symbol file name
-  CodeFileName    - Code file name
-  SourceBuffer    - Code buffer
-
-Returns:
-
-  EFI_SUCCESS - CodeBuffer deleted successfully
-
---*/
 {
   UINTN                      Index;
   EFI_DEBUGGER_SYMBOL_OBJECT *Object;
 
   //
@@ -2056,29 +1672,23 @@ Returns:
   Object->SourceBuffer[Index - 1] = NULL;
 
   return EFI_SUCCESS;
 }
 
-CHAR8 *
-FindSymbolStr (
-  IN UINTN Address
-  )
-/*++
-
-Routine Description:
+/**
 
-  Find the symbol string according to address
+  Find the symbol string according to address.
 
-Arguments:
+  @param  Address         - Symbol address
 
-  Address         - Symbol address
+  @return Symbol string
 
-Returns:
-
-  Symbol string
-
---*/
+**/
+CHAR8 *
+FindSymbolStr (
+  IN UINTN Address
+  )
 {
   UINTN                       ObjectIndex;
   EFI_DEBUGGER_SYMBOL_OBJECT  *Object;
   UINTN                       EntryIndex;
   EFI_DEBUGGER_SYMBOL_ENTRY   *Entry;
@@ -2110,31 +1720,25 @@ Returns:
   // not found
   //
   return NULL;
 }
 
+/**
+
+  Get line number and offset from this line in code file.
+
+  @param  Line            - Line buffer in code file
+  @param  Offset          - Offset to functin entry
+
+  @return Line number
+
+**/
 UINTN
 EdbGetLineNumberAndOffsetFromThisLine (
   IN VOID     *Line,
   OUT UINTN   *Offset
   )
-/*++
-
-Routine Description:
-
-  Get line number and offset from this line in code file
-
-Arguments:
-
-  Line            - Line buffer in code file
-  Offset          - Offset to functin entry
-
-Returns:
-
-  Line number
-
---*/
 {
   UINTN  LineNumber;
   CHAR8  *LineBuffer;
   CHAR8  *FieldBuffer;
 
@@ -2209,33 +1813,27 @@ typedef enum {
   EdbEbcLineSearchTypeFirst,
   EdbEbcLineSearchTypeLast,
   EdbEbcLineSearchTypeMax,
 } EDB_EBC_LINE_SEARCH_TYPE;
 
+/**
+
+  Get line number from this code file.
+
+  @param  Entry           - Symbol entry
+  @param  FuncOffset      - Offset to functin entry
+  @param  SearchType      - Search type for the code
+
+  @return Line number
+
+**/
 UINTN
 EdbGetLineNumberFromCode (
   IN EFI_DEBUGGER_SYMBOL_ENTRY  *Entry,
   IN UINTN                      FuncOffset,
   IN EDB_EBC_LINE_SEARCH_TYPE   SearchType
   )
-/*++
-
-Routine Description:
-
-  Get line number from this code file
-
-Arguments:
-
-  Entry           - Symbol entry
-  FuncOffset      - Offset to functin entry
-  SearchType      - Search type for the code
-
-Returns:
-
-  Line number
-
---*/
 {
   CHAR8  *LineBuffer;
   UINTN  LineNumber;
   UINTN  Offset;
   UINTN  CandidateLineNumber;
@@ -2326,33 +1924,27 @@ Returns:
   }
 
   return (UINTN)-1;
 }
 
+/**
+
+  Get the source string from this code file by line.
+
+  @param  Entry           - Symbol entry
+  @param  LineNumber      - line number
+  @param  FuncEnd         - Function end
+
+  @return Funtion start
+
+**/
 VOID *
 EdbGetSourceStrFromCodeByLine (
   IN EFI_DEBUGGER_SYMBOL_ENTRY  *Entry,
   IN UINTN                      LineNumber,
   IN VOID                       **FuncEnd
   )
-/*++
-
-Routine Description:
-
-  Get the source string from this code file by line
-
-Arguments:
-
-  Entry           - Symbol entry
-  LineNumber      - line number
-  FuncEnd         - Function end
-
-Returns:
-
-  Funtion start
-
---*/
 {
   CHAR8  *LineBuffer;
   CHAR8  *FieldBuffer;
   VOID   *FuncStart;
   UINTN  Number;
@@ -2398,33 +1990,27 @@ Returns:
   }
 
   return NULL;
 }
 
+/**
+
+  Get source string from this code file.
+
+  @param  Entry           - Symbol entry
+  @param  FuncOffset      - Offset to functin entry
+  @param  FuncEnd         - Function end
+
+  @retval Funtion start
+
+**/
 VOID *
 EdbGetSourceStrFromCode (
   IN EFI_DEBUGGER_SYMBOL_ENTRY  *Entry,
   IN UINTN                      FuncOffset,
   IN VOID                       **FuncEnd
   )
-/*++
-
-Routine Description:
-
-  Get source string from this code file
-
-Arguments:
-
-  Entry           - Symbol entry
-  FuncOffset      - Offset to functin entry
-  FuncEnd         - Function end
-
-Returns:
-
-  Funtion start
-
---*/
 {
   UINTN  LineNumber;
 
   //
   // Only search the last line, then display
@@ -2435,32 +2021,26 @@ Returns:
   }
 
   return EdbGetSourceStrFromCodeByLine (Entry, LineNumber, FuncEnd);
 }
 
+/**
+
+  Print source.
+
+  @param  Address         - Instruction address
+  @param  IsPrint         - Whether need to print
+
+  @retval 1 - find the source
+  @retval 0 - not find the source
+
+**/
 UINTN
 EdbPrintSource (
   IN UINTN     Address,
   IN BOOLEAN   IsPrint
   )
-/*++
-
-Routine Description:
-
-  Print source
-
-Arguments:
-
-  Address         - Instruction address
-  IsPrint         - Whether need to print
-
-Returns:
-
-  1 - find the source
-  0 - not find the source
-
---*/
 {
   UINTN                      SymbolAddress;
   EFI_DEBUGGER_SYMBOL_OBJECT *RetObject;
   EFI_DEBUGGER_SYMBOL_ENTRY  *RetEntry;
   UINTN                      FuncOffset;
@@ -2538,33 +2118,25 @@ Returns:
   *(UINT8 *)FuncEnd = '\n';
 
   return 1 ;
 }
 
+/**
+
+  Get Mapfile and SymbolName from one symbol format: [MapFileName:]SymbolName.
+
+  @param  Symbol          - whole Symbol name
+  @param  MapfileName     - the mapfile name in the symbol
+  @param  SymbolName      - the symbol name in the symbol
+
+**/
 VOID
 GetMapfileAndSymbol (
   IN CHAR16   *Symbol,
   OUT CHAR16  **MapfileName,
   OUT CHAR16  **SymbolName
   )
-/*++
-
-Routine Description:
-
-  Get Mapfile and SymbolName from one symbol format: [MapFileName:]SymbolName
-
-Arguments:
-
-  Symbol          - whole Symbol name
-  MapfileName     - the mapfile name in the symbol
-  SymbolName      - the symbol name in the symbol
-
-Returns:
-
-  None
-
---*/
 {
   CHAR16  *Ch;
 
   *MapfileName = NULL;
   *SymbolName = Symbol;
@@ -2582,33 +2154,27 @@ Returns:
   }
 
   return ;
 }
 
+/**
+
+  Convert a symbol to an address.
+
+  @param  Symbol          - Symbol name
+  @param  Address         - Symbol address
+
+  @retval EFI_SUCCESS    - symbol found and address returned.
+  @retval EFI_NOT_FOUND  - symbol not found
+  @retval EFI_NO_MAPPING - duplicated symbol not found
+
+**/
 EFI_STATUS
 Symboltoi (
   IN CHAR16   *Symbol,
   OUT UINTN   *Address
   )
-/*++
-
-Routine Description:
-
-  Convert a symbol to an address
-
-Arguments:
-
-  Symbol          - Symbol name
-  Address         - Symbol address
-
-Returns:
-
-  EFI_SUCCESS    - symbol found and address returned.
-  EFI_NOT_FOUND  - symbol not found
-  EFI_NO_MAPPING - duplicated symbol not found
-
---*/
 {
   UINTN                       ObjectIndex;
   EFI_DEBUGGER_SYMBOL_OBJECT  *Object;
   UINTN                       EntryIndex;
   EFI_DEBUGGER_SYMBOL_ENTRY   *Entry;
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.h
index a9d49d2..c4c2858 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.h
@@ -1,24 +1,18 @@
-/*++
+/** @file
 
-Copyright (c) 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
+Copyright (c) 2007, 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.
 
-Module Name:
 
-  EdbSymbol.h
-
-Abstract:
-
-
---*/
+**/
 
 #ifndef _EFI_EDB_SYMBOL_H_
 #define _EFI_EDB_SYMBOL_H_
 
 #include <Uefi.h>
-- 
1.9.5.msysgit.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [patch 2/5] MdeModulePkg/EbcDxe: Initialize variable after declaration
  2016-12-05  5:27 [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues Dandan Bi
  2016-12-05  5:27 ` [patch 1/5] MdeModulePkg/EbcDxe: Make the comments align with EDKII coding style Dandan Bi
@ 2016-12-05  5:27 ` Dandan Bi
  2016-12-05  5:27 ` [patch 3/5] MdeModulePkg/EbcDxe: Make the variable name follow rules Dandan Bi
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Dandan Bi @ 2016-12-05  5:27 UTC (permalink / raw)
  To: edk2-devel; +Cc: Jiewen Yao, Pete Batard

Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Pete Batard <pete@akeo.ie>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
---
 MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c       | 4 +++-
 MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.c | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c
index 6953f16..c002d65 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c
@@ -485,11 +485,13 @@ EdbExceptionHandler (
 {
   CHAR16                  InputBuffer[EFI_DEBUG_INPUS_BUFFER_SIZE];
   CHAR16                  *CommandArg;
   EFI_DEBUGGER_COMMAND    DebuggerCommand;
   EFI_DEBUG_STATUS        DebugStatus;
-  STATIC BOOLEAN          mInitialized = FALSE;
+  STATIC BOOLEAN          mInitialized;
+
+  mInitialized = FALSE;
 
   DEBUG ((DEBUG_ERROR, "Hello EBC Debugger!\n"));
 
   if (!mInitialized) {
     //
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.c
index 9ae0141..f03a322 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.c
@@ -1181,15 +1181,17 @@ EdbLoadCodBySymbolByIec (
   CHAR8                      *FieldBuffer;
   VOID                       *BufferStart;
   VOID                       *BufferEnd;
   UINTN                      Offset;
   EDB_EBC_COD_PARSE_STATE    CodParseState;
-  CHAR8                      Char[2] = {9, 0};
+  CHAR8                      Char[2];
 
   //
   // Init
   //
+  Char[0] = 9;
+  Char[1] = 0;
   LineBuffer = AsciiStrGetNewTokenLine (Buffer, "\n\r");
   Offset = (UINTN)-1;
   BufferStart = NULL;
   BufferEnd = NULL;
   CodParseState = EdbEbcCodParseStateUninitialized;
-- 
1.9.5.msysgit.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [patch 3/5] MdeModulePkg/EbcDxe: Make the variable name follow rules
  2016-12-05  5:27 [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues Dandan Bi
  2016-12-05  5:27 ` [patch 1/5] MdeModulePkg/EbcDxe: Make the comments align with EDKII coding style Dandan Bi
  2016-12-05  5:27 ` [patch 2/5] MdeModulePkg/EbcDxe: Initialize variable after declaration Dandan Bi
@ 2016-12-05  5:27 ` Dandan Bi
  2016-12-05  5:27 ` [patch 4/5] MdeModulePkg/EbcDxe: Avoid Non-Boolean type used as Boolean Dandan Bi
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Dandan Bi @ 2016-12-05  5:27 UTC (permalink / raw)
  To: edk2-devel; +Cc: Jiewen Yao, Pete Batard

Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Pete Batard <pete@akeo.ie>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
---
 .../Universal/EbcDxe/EbcDebugger/EdbSupport.h      |  10 +-
 .../EbcDxe/EbcDebugger/EdbSupportString.c          | 216 ++++++++++-----------
 2 files changed, 113 insertions(+), 113 deletions(-)

diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h
index ed1abe6..8908718 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h
@@ -26,35 +26,35 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define EFI_DEBUG_MAX_PRINT_BUFFER   (80 * 4)
 
 UINTN
 EFIAPI
 Xtoi (
-  CHAR16  *str
+  CHAR16  *Str
   );
 
 UINT64
 EFIAPI
 LXtoi (
-  CHAR16  *str
+  CHAR16  *Str
   );
 
 UINTN
 EFIAPI
 Atoi (
-  CHAR16  *str
+  CHAR16  *Str
   );
 
 UINTN
 EFIAPI
 AsciiXtoi (
-  CHAR8  *str
+  CHAR8  *Str
   );
 
 UINTN
 EFIAPI
 AsciiAtoi (
-  CHAR8  *str
+  CHAR8  *Str
   );
 
 INTN
 EFIAPI
 StrCmpUnicodeAndAscii (
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
index f564124..1a396a4 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
@@ -16,298 +16,298 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 
 /**
 
   Convert hex string to uint.
 
-  @param  str  -  The string
+  @param  Str  -  The string
 
 **/
 UINTN
 EFIAPI
 Xtoi (
-  CHAR16  *str
+  CHAR16  *Str
   )
 {
-  UINTN   u;
-  CHAR16  c;
-  UINTN   m;
+  UINTN   RetVal;
+  CHAR16  TempChar;
+  UINTN   MaxVal;
 
-  ASSERT (str != NULL);
+  ASSERT (Str != NULL);
 
-  m = (UINTN) -1 >> 4;
+  MaxVal = (UINTN) -1 >> 4;
   //
   // skip preceeding white space
   //
-  while (*str && *str == ' ') {
-    str += 1;
+  while (*Str && *Str == ' ') {
+    Str += 1;
   }
   //
   // skip preceeding zeros
   //
-  while (*str && *str == '0') {
-    str += 1;
+  while (*Str && *Str == '0') {
+    Str += 1;
   }
   //
   // skip preceeding white space
   //
-  if (*str && (*str == 'x' || *str == 'X')) {
-    str += 1;
+  if (*Str && (*Str == 'x' || *Str == 'X')) {
+    Str += 1;
   }
   //
   // convert hex digits
   //
-  u = 0;
-  c = *(str++);
-  while (c) {
-    if (c >= 'a' && c <= 'f') {
-      c -= 'a' - 'A';
+  RetVal = 0;
+  TempChar = *(Str++);
+  while (TempChar) {
+    if (TempChar >= 'a' && TempChar <= 'f') {
+      TempChar -= 'a' - 'A';
     }
 
-    if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'F')) {
-      if (u > m) {
+    if ((TempChar >= '0' && TempChar <= '9') || (TempChar >= 'A' && TempChar <= 'F')) {
+      if (RetVal > MaxVal) {
         return (UINTN) -1;
       }
 
-      u = (u << 4) | (c - (c >= 'A' ? 'A' - 10 : '0'));
+      RetVal = (RetVal << 4) | (TempChar - (TempChar >= 'A' ? 'A' - 10 : '0'));
     } else {
       break;
     }
 
-    c = *(str++);
+    TempChar = *(Str++);
   }
 
-  return u;
+  return RetVal;
 }
 
 /**
 
   Convert hex string to uint.
 
-  @param  str  -  The string
+  @param  Str  -  The string
 
 **/
 
 UINT64
 EFIAPI
 LXtoi (
-  CHAR16  *str
+  CHAR16  *Str
   )
 {
-  UINT64  u;
-  CHAR16  c;
-  UINT64  m;
+  UINT64  RetVal;
+  CHAR16  TempChar;
+  UINT64  MaxVal;
 
-  ASSERT (str != NULL);
+  ASSERT (Str != NULL);
 
-  m = RShiftU64 ((UINT64) -1, 4);
+  MaxVal = RShiftU64 ((UINT64) -1, 4);
   //
   // skip preceeding white space
   //
-  while (*str && *str == ' ') {
-    str += 1;
+  while (*Str && *Str == ' ') {
+    Str += 1;
   }
   //
   // skip preceeding zeros
   //
-  while (*str && *str == '0') {
-    str += 1;
+  while (*Str && *Str == '0') {
+    Str += 1;
   }
   //
   // skip preceeding white space
   //
-  if (*str && (*str == 'x' || *str == 'X')) {
-    str += 1;
+  if (*Str && (*Str == 'x' || *Str == 'X')) {
+    Str += 1;
   }
   //
   // convert hex digits
   //
-  u = 0;
-  c = *(str++);
-  while (c) {
-    if (c >= 'a' && c <= 'f') {
-      c -= 'a' - 'A';
+  RetVal = 0;
+  TempChar = *(Str++);
+  while (TempChar) {
+    if (TempChar >= 'a' && TempChar <= 'f') {
+      TempChar -= 'a' - 'A';
     }
 
-    if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'F')) {
-      if (u > m) {
+    if ((TempChar >= '0' && TempChar <= '9') || (TempChar >= 'A' && TempChar <= 'F')) {
+      if (RetVal > MaxVal) {
         return (UINT64) -1;
       }
 
-      u = LShiftU64 (u, 4);
-      u = u + (c - (c >= 'A' ? 'A' - 10 : '0'));
+      RetVal = LShiftU64 (RetVal, 4);
+      RetVal = RetVal + (TempChar - (TempChar >= 'A' ? 'A' - 10 : '0'));
     } else {
       break;
     }
 
-    c = *(str++);
+    TempChar = *(Str++);
   }
 
-  return u;
+  return RetVal;
 }
 
 /**
 
   Convert hex string to uint.
 
-  @param str  -  The string
+  @param Str  -  The string
 
 **/
 UINTN
 EFIAPI
 Atoi (
-  CHAR16  *str
+  CHAR16  *Str
   )
 {
-  UINTN   u;
-  CHAR16  c;
-  UINTN   m;
-  UINTN   n;
+  UINTN   RetVal;
+  CHAR16  TempChar;
+  UINTN   MaxVal;
+  UINTN   ResteVal;
 
-  ASSERT (str != NULL);
+  ASSERT (Str != NULL);
 
-  m = (UINTN) -1 / 10;
-  n = (UINTN) -1 % 10;
+  MaxVal = (UINTN) -1 / 10;
+  ResteVal = (UINTN) -1 % 10;
   //
   // skip preceeding white space
   //
-  while (*str && *str == ' ') {
-    str += 1;
+  while (*Str && *Str == ' ') {
+    Str += 1;
   }
   //
   // convert digits
   //
-  u = 0;
-  c = *(str++);
-  while (c) {
-    if (c >= '0' && c <= '9') {
-      if (u > m || (u == m && c - '0' > (INTN) n)) {
+  RetVal = 0;
+  TempChar = *(Str++);
+  while (TempChar) {
+    if (TempChar >= '0' && TempChar <= '9') {
+      if (RetVal > MaxVal || (RetVal == MaxVal && TempChar - '0' > (INTN) ResteVal)) {
         return (UINTN) -1;
       }
 
-      u = (u * 10) + c - '0';
+      RetVal = (RetVal * 10) + TempChar - '0';
     } else {
       break;
     }
 
-    c = *(str++);
+    TempChar = *(Str++);
   }
 
-  return u;
+  return RetVal;
 }
 
 /**
 
   Convert hex string to uint.
 
-  @param  str  -  The string
+  @param  Str  -  The string
 
 **/
 UINTN
 EFIAPI
 AsciiXtoi (
-  CHAR8  *str
+  CHAR8  *Str
   )
 {
-  UINTN   u;
-  CHAR8   c;
-  UINTN   m;
+  UINTN   RetVal;
+  CHAR8   TempChar;
+  UINTN   MaxVal;
 
-  ASSERT (str != NULL);
+  ASSERT (Str != NULL);
 
-  m = (UINTN) -1 >> 4;
+  MaxVal = (UINTN) -1 >> 4;
   //
   // skip preceeding white space
   //
-  while (*str && *str == ' ') {
-    str += 1;
+  while (*Str && *Str == ' ') {
+    Str += 1;
   }
   //
   // skip preceeding zeros
   //
-  while (*str && *str == '0') {
-    str += 1;
+  while (*Str && *Str == '0') {
+    Str += 1;
   }
   //
   // skip preceeding white space
   //
-  if (*str && (*str == 'x' || *str == 'X')) {
-    str += 1;
+  if (*Str && (*Str == 'x' || *Str == 'X')) {
+    Str += 1;
   }
   //
   // convert hex digits
   //
-  u = 0;
-  c = *(str++);
-  while (c) {
-    if (c >= 'a' && c <= 'f') {
-      c -= 'a' - 'A';
+  RetVal = 0;
+  TempChar = *(Str++);
+  while (TempChar) {
+    if (TempChar >= 'a' && TempChar <= 'f') {
+      TempChar -= 'a' - 'A';
     }
 
-    if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'F')) {
-      if (u > m) {
+    if ((TempChar >= '0' && TempChar <= '9') || (TempChar >= 'A' && TempChar <= 'F')) {
+      if (RetVal > MaxVal) {
         return (UINTN) -1;
       }
 
-      u = (u << 4) | (c - (c >= 'A' ? 'A' - 10 : '0'));
+      RetVal = (RetVal << 4) | (TempChar - (TempChar >= 'A' ? 'A' - 10 : '0'));
     } else {
       break;
     }
 
-    c = *(str++);
+    TempChar = *(Str++);
   }
 
-  return u;
+  return RetVal;
 }
 
 /**
 
   Convert hex string to uint.
 
-  @param str  -  The string
+  @param Str  -  The string
 
 **/
 UINTN
 EFIAPI
 AsciiAtoi (
-  CHAR8  *str
+  CHAR8  *Str
   )
 {
-  UINTN   u;
-  CHAR8   c;
-  UINTN   m;
-  UINTN   n;
+  UINTN   RetVal;
+  CHAR8   TempChar;
+  UINTN   MaxVal;
+  UINTN   ResteVal;
 
-  ASSERT (str != NULL);
+  ASSERT (Str != NULL);
 
-  m = (UINTN) -1 / 10;
-  n = (UINTN) -1 % 10;
+  MaxVal = (UINTN) -1 / 10;
+  ResteVal = (UINTN) -1 % 10;
   //
   // skip preceeding white space
   //
-  while (*str && *str == ' ') {
-    str += 1;
+  while (*Str && *Str == ' ') {
+    Str += 1;
   }
   //
   // convert digits
   //
-  u = 0;
-  c = *(str++);
-  while (c) {
-    if (c >= '0' && c <= '9') {
-      if (u > m || (u == m && c - '0' > (INTN) n)) {
+  RetVal = 0;
+  TempChar = *(Str++);
+  while (TempChar) {
+    if (TempChar >= '0' && TempChar <= '9') {
+      if (RetVal > MaxVal || (RetVal == MaxVal && TempChar - '0' > (INTN) ResteVal)) {
         return (UINTN) -1;
       }
 
-      u = (u * 10) + c - '0';
+      RetVal = (RetVal * 10) + TempChar - '0';
     } else {
       break;
     }
 
-    c = *(str++);
+    TempChar = *(Str++);
   }
 
-  return u;
+  return RetVal;
 }
 
 STATIC
 CHAR16
 UnicodeToUpper (
-- 
1.9.5.msysgit.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [patch 4/5] MdeModulePkg/EbcDxe: Avoid Non-Boolean type used as Boolean
  2016-12-05  5:27 [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues Dandan Bi
                   ` (2 preceding siblings ...)
  2016-12-05  5:27 ` [patch 3/5] MdeModulePkg/EbcDxe: Make the variable name follow rules Dandan Bi
@ 2016-12-05  5:27 ` Dandan Bi
  2016-12-05  5:27 ` [patch 5/5] MdeModulePkg/EbcDxe: Add comments for functions Dandan Bi
  2016-12-05 12:45 ` [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues Yao, Jiewen
  5 siblings, 0 replies; 7+ messages in thread
From: Dandan Bi @ 2016-12-05  5:27 UTC (permalink / raw)
  To: edk2-devel; +Cc: Jiewen Yao, Pete Batard

Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Pete Batard <pete@akeo.ie>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
---
 .../Universal/EbcDxe/EbcDebugger/EdbDisasm.c       | 130 ++++++++++-----------
 .../EbcDxe/EbcDebugger/EdbDisasmSupport.c          |   4 +-
 .../EbcDxe/EbcDebugger/EdbSupportString.c          |  44 +++----
 .../Universal/EbcDxe/EbcDebugger/EdbSupportUI.c    |  12 +-
 MdeModulePkg/Universal/EbcDxe/EbcExecute.c         |   4 +-
 5 files changed, 97 insertions(+), 97 deletions(-)

diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.c
index dab53a0..dddf782 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasm.c
@@ -192,22 +192,22 @@ EdbDisasmJMP (
 //    if (Modifiers & OPCODE_M_IMMDATA64) {
 //      EdbPrintInstructionName (L"64");
 //    } else {
 //      EdbPrintInstructionName (L"32");
 //    }
-    if (Modifiers & CONDITION_M_CONDITIONAL) {
-      if (Modifiers & JMP_M_CS) {
+    if ((Modifiers & CONDITION_M_CONDITIONAL) != 0) {
+      if ((Modifiers & JMP_M_CS) != 0) {
         EdbPrintInstructionName (L"cs");
       } else {
         EdbPrintInstructionName (L"cc");
       }
     }
 
     InstructionAddress += 2;
-    if (Modifiers & OPCODE_M_IMMDATA64) {
+    if ((Modifiers & OPCODE_M_IMMDATA64) != 0) {
       CopyMem (&Data64, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT64));
-      if (Modifiers & OPCODE_M_IMMDATA) {
+      if ((Modifiers & OPCODE_M_IMMDATA) != 0) {
         EdbPrintData64 (Data64);
       } else {
         return 0;
       }
     } else {
@@ -258,12 +258,12 @@ EdbDisasmJMP8 (
   //
   if (DisasmString != NULL) {
     *DisasmString = EdbPreInstructionString ();
 
     EdbPrintInstructionName (L"JMP8");
-    if (Modifiers & CONDITION_M_CONDITIONAL) {
-      if (Modifiers & JMP_M_CS) {
+    if ((Modifiers & CONDITION_M_CONDITIONAL) != 0) {
+      if ((Modifiers & JMP_M_CS) != 0) {
         EdbPrintInstructionName (L"cs");
       } else {
         EdbPrintInstructionName (L"cc");
       }
     }
@@ -320,31 +320,31 @@ EdbDisasmCALL (
 //    if (Modifiers & OPCODE_M_IMMDATA64) {
 //      EdbPrintInstructionName (L"64");
 //    } else {
 //      EdbPrintInstructionName (L"32");
 //    }
-    if (Operands & OPERAND_M_NATIVE_CALL) {
+    if ((Operands & OPERAND_M_NATIVE_CALL) != 0) {
       EdbPrintInstructionName (L"EX");
     }
 //    if ((Operands & OPERAND_M_RELATIVE_ADDR) == 0) {
 //      EdbPrintInstructionName (L"a");
 //    }
 
     InstructionAddress += 2;
-    if (Modifiers & OPCODE_M_IMMDATA64) {
+    if ((Modifiers & OPCODE_M_IMMDATA64) != 0) {
       CopyMem (&Data64, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT64));
       Ip = Data64;
-      if (Modifiers & OPCODE_M_IMMDATA) {
+      if ((Modifiers & OPCODE_M_IMMDATA) != 0) {
         Result = EdbFindAndPrintSymbol ((UINTN)Ip);
         if (Result == 0) {
           EdbPrintData64 (Data64);
         }
       } else {
         return 0;
       }
     } else {
-      if (Modifiers & OPCODE_M_IMMDATA) {
+      if ((Modifiers & OPCODE_M_IMMDATA) != 0) {
         CopyMem (&Data32, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT32));
       } else {
         Data32 = 0;
       }
 
@@ -353,24 +353,24 @@ EdbDisasmCALL (
       } else {
         Ip = GetRegisterValue (SystemContext, (Operands & OPERAND_M_OP1));
       }
 
       if ((Operands & OPERAND_M_INDIRECT1) == 0) {
-        if (Operands & OPERAND_M_RELATIVE_ADDR) {
+        if ((Operands & OPERAND_M_RELATIVE_ADDR) != 0) {
           Result = EdbFindAndPrintSymbol ((UINTN)(SavedInstructionAddress + Ip + Size));
         } else {
           Result = EdbFindAndPrintSymbol ((UINTN)Ip);
         }
         if (Result == 0) {
           EdbPrintRegister1 (Operands);
-          if (Modifiers & OPCODE_M_IMMDATA) {
+          if ((Modifiers & OPCODE_M_IMMDATA) != 0) {
             EdbPrintImmData32 (Data32);
           }
         }
       } else {
         EdbPrintRegister1 (Operands);
-        if (Modifiers & OPCODE_M_IMMDATA) {
+        if ((Modifiers & OPCODE_M_IMMDATA) != 0) {
           EdbPrintRawIndexData32 (Data32);
         }
       }
     }
 
@@ -451,11 +451,11 @@ EdbDisasmCMP (
     );
 
   Opcode     = GET_OPCODE (InstructionAddress);
   Modifiers  = GET_MODIFIERS (InstructionAddress);
   Operands   = GET_OPERANDS (InstructionAddress);
-  if (Modifiers & OPCODE_M_IMMDATA) {
+  if ((Modifiers & OPCODE_M_IMMDATA) != 0) {
     Size = 4;
   } else {
     Size = 2;
   }
 
@@ -493,13 +493,13 @@ EdbDisasmCMP (
     InstructionAddress += 2;
 
     EdbPrintComma ();
     EdbPrintRegister2 (Operands);
 
-    if (Modifiers & OPCODE_M_IMMDATA) {
+    if ((Modifiers & OPCODE_M_IMMDATA) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
-      if (Operands & OPERAND_M_INDIRECT2) {
+      if ((Operands & OPERAND_M_INDIRECT2) != 0) {
         EdbPrintRawIndexData16 (Data16);
       } else {
         EdbPrintImmDatan (Data16);
       }
     }
@@ -550,11 +550,11 @@ EdbDisasmUnsignedDataManip (
     );
 
   Opcode     = GET_OPCODE (InstructionAddress);
   Operands   = GET_OPERANDS (InstructionAddress);
   Modifiers  = GET_MODIFIERS (InstructionAddress);
-  if (Modifiers & DATAMANIP_M_IMMDATA) {
+  if ((Modifiers & DATAMANIP_M_IMMDATA) != 0) {
     Size = 4;
   } else {
     Size = 2;
   }
 
@@ -611,13 +611,13 @@ EdbDisasmUnsignedDataManip (
     EdbPrintRegister1 (Operands);
     EdbPrintComma ();
     EdbPrintRegister2 (Operands);
 
     InstructionAddress += 2;
-    if (Modifiers & DATAMANIP_M_IMMDATA) {
+    if ((Modifiers & DATAMANIP_M_IMMDATA) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
-      if (Operands & OPERAND_M_INDIRECT2) {
+      if ((Operands & OPERAND_M_INDIRECT2) != 0) {
         EdbPrintRawIndexData16 (Data16);
       } else {
         EdbPrintImmDatan (Data16);
       }
     }
@@ -663,11 +663,11 @@ EdbDisasmSignedDataManip (
     );
 
   Opcode     = GET_OPCODE (InstructionAddress);
   Operands   = GET_OPERANDS (InstructionAddress);
   Modifiers  = GET_MODIFIERS (InstructionAddress);
-  if (Modifiers & DATAMANIP_M_IMMDATA) {
+  if ((Modifiers & DATAMANIP_M_IMMDATA) != 0) {
     Size = 4;
   } else {
     Size = 2;
   }
 
@@ -709,13 +709,13 @@ EdbDisasmSignedDataManip (
     EdbPrintRegister1 (Operands);
     EdbPrintComma ();
     EdbPrintRegister2 (Operands);
 
     InstructionAddress += 2;
-    if (Modifiers & DATAMANIP_M_IMMDATA) {
+    if ((Modifiers & DATAMANIP_M_IMMDATA) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
-      if (Operands & OPERAND_M_INDIRECT2) {
+      if ((Operands & OPERAND_M_INDIRECT2) != 0) {
         EdbPrintRawIndexData16 (Data16);
       } else {
         EdbPrintImmDatan (Data16);
       }
     }
@@ -768,30 +768,30 @@ EdbDisasmMOVxx (
 
   Opcode     = GET_OPCODE (InstructionAddress);
   Modifiers  = GET_MODIFIERS (InstructionAddress);
   Operands   = GET_OPERANDS (InstructionAddress);
   Size = 2;
-  if (Modifiers & (OPCODE_M_IMMED_OP1 | OPCODE_M_IMMED_OP2)) {
+  if ((Modifiers & (OPCODE_M_IMMED_OP1 | OPCODE_M_IMMED_OP2)) != 0) {
     if ((Opcode <= OPCODE_MOVQW) || (Opcode == OPCODE_MOVNW)) {
-      if (Modifiers & OPCODE_M_IMMED_OP1) {
+      if ((Modifiers & OPCODE_M_IMMED_OP1) != 0) {
         Size += 2;
       }
-      if (Modifiers & OPCODE_M_IMMED_OP2) {
+      if ((Modifiers & OPCODE_M_IMMED_OP2) != 0) {
         Size += 2;
       }
-    } else if ((Opcode <= OPCODE_MOVQD) || (Opcode == OPCODE_MOVND)) {
-      if (Modifiers & OPCODE_M_IMMED_OP1) {
+    } else if (((Opcode <= OPCODE_MOVQD) || (Opcode == OPCODE_MOVND)) != 0) {
+      if ((Modifiers & OPCODE_M_IMMED_OP1) != 0) {
         Size += 4;
       }
-      if (Modifiers & OPCODE_M_IMMED_OP2) {
+      if ((Modifiers & OPCODE_M_IMMED_OP2) != 0) {
         Size += 4;
       }
     } else if (Opcode == OPCODE_MOVQQ) {
-      if (Modifiers & OPCODE_M_IMMED_OP1) {
+      if ((Modifiers & OPCODE_M_IMMED_OP1) != 0) {
         Size += 8;
       }
-      if (Modifiers & OPCODE_M_IMMED_OP2) {
+      if ((Modifiers & OPCODE_M_IMMED_OP2) != 0) {
         Size += 8;
       }
     }
   }
 
@@ -839,11 +839,11 @@ EdbDisasmMOVxx (
     }
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Modifiers & OPCODE_M_IMMED_OP1) {
+    if ((Modifiers & OPCODE_M_IMMED_OP1) != 0) {
       if ((Opcode <= OPCODE_MOVQW) || (Opcode == OPCODE_MOVNW)) {
         CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
         InstructionAddress += 2;
         EdbPrintRawIndexData16 (Data16);
       } else if ((Opcode <= OPCODE_MOVQD) || (Opcode == OPCODE_MOVND)) {
@@ -858,11 +858,11 @@ EdbDisasmMOVxx (
     }
 
     EdbPrintComma ();
     EdbPrintRegister2 (Operands);
 
-    if (Modifiers & OPCODE_M_IMMED_OP2) {
+    if ((Modifiers & OPCODE_M_IMMED_OP2) != 0) {
       if ((Opcode <= OPCODE_MOVQW) || (Opcode == OPCODE_MOVNW)) {
         CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
         EdbPrintRawIndexData16 (Data16);
       } else if ((Opcode <= OPCODE_MOVQD) || (Opcode == OPCODE_MOVND)) {
         CopyMem (&Data32, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT32));
@@ -905,14 +905,14 @@ EdbDisasmMOVsnw (
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_MOVSNW);
 
   Modifiers  = GET_MODIFIERS (InstructionAddress);
   Operands   = GET_OPERANDS (InstructionAddress);
   Size = 2;
-  if (Modifiers & OPCODE_M_IMMED_OP1) {
+  if ((Modifiers & OPCODE_M_IMMED_OP1) != 0) {
     Size += 2;
   }
-  if (Modifiers & OPCODE_M_IMMED_OP2) {
+  if ((Modifiers & OPCODE_M_IMMED_OP2) != 0) {
     Size += 2;
   }
 
   //
   // Construct Disasm String
@@ -923,22 +923,22 @@ EdbDisasmMOVsnw (
     EdbPrintInstructionName (L"MOVsnw");
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Modifiers & OPCODE_M_IMMED_OP1) {
+    if ((Modifiers & OPCODE_M_IMMED_OP1) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
       InstructionAddress += 2;
       EdbPrintRawIndexData16 (Data16);
     }
 
     EdbPrintComma ();
     EdbPrintRegister2 (Operands);
 
-    if (Modifiers & OPCODE_M_IMMED_OP2) {
+    if ((Modifiers & OPCODE_M_IMMED_OP2) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
-      if (Operands & OPERAND_M_INDIRECT2) {
+      if ((Operands & OPERAND_M_INDIRECT2) != 0) {
         EdbPrintRawIndexData16 (Data16);
       } else {
         EdbPrintImmDatan (Data16);
       }
     }
@@ -975,14 +975,14 @@ EdbDisasmMOVsnd (
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_MOVSND);
 
   Modifiers  = GET_MODIFIERS (InstructionAddress);
   Operands   = GET_OPERANDS (InstructionAddress);
   Size = 2;
-  if (Modifiers & OPCODE_M_IMMED_OP1) {
+  if ((Modifiers & OPCODE_M_IMMED_OP1) != 0) {
     Size += 4;
   }
-  if (Modifiers & OPCODE_M_IMMED_OP2) {
+  if ((Modifiers & OPCODE_M_IMMED_OP2) != 0) {
     Size += 4;
   }
 
   //
   // Construct Disasm String
@@ -993,22 +993,22 @@ EdbDisasmMOVsnd (
     EdbPrintInstructionName (L"MOVsnd");
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Modifiers & OPCODE_M_IMMED_OP1) {
+    if ((Modifiers & OPCODE_M_IMMED_OP1) != 0) {
       CopyMem (&Data32, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT32));
       InstructionAddress += 4;
       EdbPrintRawIndexData32 (Data32);
     }
 
     EdbPrintComma ();
     EdbPrintRegister2 (Operands);
 
-    if (Modifiers & OPCODE_M_IMMED_OP2) {
+    if ((Modifiers & OPCODE_M_IMMED_OP2) != 0) {
       CopyMem (&Data32, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT32));
-      if (Operands & OPERAND_M_INDIRECT2) {
+      if ((Operands & OPERAND_M_INDIRECT2) != 0) {
         EdbPrintRawIndexData32 (Data32);
       } else {
         EdbPrintImmDatan (Data32);
       }
     }
@@ -1129,11 +1129,11 @@ EdbDisasmPUSH (
 
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_PUSH);
 
   Operands   = GET_OPERANDS (InstructionAddress);
   Modifiers  = GET_MODIFIERS (InstructionAddress);
-  if (Modifiers & PUSHPOP_M_IMMDATA) {
+  if ((Modifiers & PUSHPOP_M_IMMDATA) != 0) {
     Size = 4;
   } else {
     Size = 2;
   }
 
@@ -1151,13 +1151,13 @@ EdbDisasmPUSH (
 //    }
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Modifiers & PUSHPOP_M_IMMDATA) {
+    if ((Modifiers & PUSHPOP_M_IMMDATA) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
-      if (Operands & OPERAND_M_INDIRECT1) {
+      if ((Operands & OPERAND_M_INDIRECT1) != 0) {
         EdbPrintRawIndexData16 (Data16);
       } else {
         EdbPrintImmDatan (Data16);
       }
     }
@@ -1193,11 +1193,11 @@ EdbDisasmPOP (
 
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_POP);
 
   Operands   = GET_OPERANDS (InstructionAddress);
   Modifiers  = GET_MODIFIERS (InstructionAddress);
-  if (Modifiers & PUSHPOP_M_IMMDATA) {
+  if ((Modifiers & PUSHPOP_M_IMMDATA) != 0) {
     Size = 4;
   } else {
     Size = 2;
   }
 
@@ -1215,13 +1215,13 @@ EdbDisasmPOP (
 //    }
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Modifiers & PUSHPOP_M_IMMDATA) {
+    if ((Modifiers & PUSHPOP_M_IMMDATA) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
-      if (Operands & OPERAND_M_INDIRECT1) {
+      if ((Operands & OPERAND_M_INDIRECT1) != 0) {
         EdbPrintRawIndexData16 (Data16);
       } else {
         EdbPrintImmDatan (Data16);
       }
     }
@@ -1272,14 +1272,14 @@ EdbDisasmCMPI (
   if ((Operands & 0xE0) != 0) {
     return 0;
   }
 
   Size = 2;
-  if (Operands & OPERAND_M_CMPI_INDEX) {
+  if ((Operands & OPERAND_M_CMPI_INDEX) != 0) {
     Size += 2;
   }
-  if (Modifiers & OPCODE_M_CMPI32_DATA) {
+  if ((Modifiers & OPCODE_M_CMPI32_DATA) != 0) {
     Size += 4;
   } else {
     Size += 2;
   }
 
@@ -1293,11 +1293,11 @@ EdbDisasmCMPI (
 //    if (Modifiers & OPCODE_M_CMPI64) {
 //      EdbPrintInstructionName (L"64");
 //    } else {
 //      EdbPrintInstructionName (L"32");
 //    }
-    if (Modifiers & OPCODE_M_CMPI32_DATA) {
+    if ((Modifiers & OPCODE_M_CMPI32_DATA) != 0) {
       EdbPrintInstructionName (L"d");
     } else {
       EdbPrintInstructionName (L"w");
     }
     switch (Opcode) {
@@ -1319,19 +1319,19 @@ EdbDisasmCMPI (
     }
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Operands & OPERAND_M_CMPI_INDEX) {
+    if ((Operands & OPERAND_M_CMPI_INDEX) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
       InstructionAddress += 2;
       EdbPrintRawIndexData16 (Data16);
     }
 
     EdbPrintComma ();
 
-    if (Modifiers & OPCODE_M_CMPI32_DATA) {
+    if ((Modifiers & OPCODE_M_CMPI32_DATA) != 0) {
       CopyMem (&Data32, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT32));
       EdbPrintDatan (Data32);
     } else {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
       EdbPrintDatan (Data16);
@@ -1368,11 +1368,11 @@ EdbDisasmPUSHn (
 
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_PUSHN);
 
   Operands   = GET_OPERANDS (InstructionAddress);
   Modifiers  = GET_MODIFIERS (InstructionAddress);
-  if (Modifiers & PUSHPOP_M_IMMDATA) {
+  if ((Modifiers & PUSHPOP_M_IMMDATA) != 0) {
     Size = 4;
   } else {
     Size = 2;
   }
 
@@ -1385,13 +1385,13 @@ EdbDisasmPUSHn (
     EdbPrintInstructionName (L"PUSHn");
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Modifiers & PUSHPOP_M_IMMDATA) {
+    if ((Modifiers & PUSHPOP_M_IMMDATA) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
-      if (Operands & OPERAND_M_INDIRECT1) {
+      if ((Operands & OPERAND_M_INDIRECT1) != 0) {
         EdbPrintRawIndexData16 (Data16);
       } else {
         EdbPrintImmDatan (Data16);
       }
     }
@@ -1427,11 +1427,11 @@ EdbDisasmPOPn (
 
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_POPN);
 
   Operands   = GET_OPERANDS (InstructionAddress);
   Modifiers  = GET_MODIFIERS (InstructionAddress);
-  if (Modifiers & PUSHPOP_M_IMMDATA) {
+  if ((Modifiers & PUSHPOP_M_IMMDATA) != 0) {
     Size = 4;
   } else {
     Size = 2;
   }
 
@@ -1444,13 +1444,13 @@ EdbDisasmPOPn (
     EdbPrintInstructionName (L"POPn");
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Modifiers & PUSHPOP_M_IMMDATA) {
+    if ((Modifiers & PUSHPOP_M_IMMDATA) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
-      if (Operands & OPERAND_M_INDIRECT1) {
+      if ((Operands & OPERAND_M_INDIRECT1) != 0) {
         EdbPrintRawIndexData16 (Data16);
       } else {
         EdbPrintImmDatan (Data16);
       }
     }
@@ -1489,11 +1489,11 @@ EdbDisasmMOVI (
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_MOVI);
 
   Modifiers  = GET_MODIFIERS (InstructionAddress);
   Operands   = GET_OPERANDS (InstructionAddress);
 
-  if (Operands & MOVI_M_IMMDATA) {
+  if ((Operands & MOVI_M_IMMDATA) != 0) {
     Size    = 4;
   } else {
     Size    = 2;
   }
   if ((Modifiers & MOVI_M_DATAWIDTH) == MOVI_DATAWIDTH16) {
@@ -1538,11 +1538,11 @@ EdbDisasmMOVI (
     }
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Operands & MOVI_M_IMMDATA) {
+    if ((Operands & MOVI_M_IMMDATA) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
       InstructionAddress += 2;
       EdbPrintRawIndexData16 (Data16);
     }
 
@@ -1597,11 +1597,11 @@ EdbDisasmMOVIn (
   ASSERT (GET_OPCODE(InstructionAddress) == OPCODE_MOVIN);
 
   Modifiers  = GET_MODIFIERS (InstructionAddress);
   Operands   = GET_OPERANDS (InstructionAddress);
 
-  if (Operands & MOVI_M_IMMDATA) {
+  if ((Operands & MOVI_M_IMMDATA) != 0) {
     Size    = 4;
   } else {
     Size    = 2;
   }
   if ((Modifiers & MOVI_M_DATAWIDTH) == MOVI_DATAWIDTH16) {
@@ -1632,11 +1632,11 @@ EdbDisasmMOVIn (
     }
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Operands & MOVI_M_IMMDATA) {
+    if ((Operands & MOVI_M_IMMDATA) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
       InstructionAddress += 2;
       EdbPrintRawIndexData16 (Data16);
     }
 
@@ -1694,11 +1694,11 @@ EdbDisasmMOVREL (
   SavedInstructionAddress = InstructionAddress;
 
   Modifiers  = GET_MODIFIERS (InstructionAddress);
   Operands   = GET_OPERANDS (InstructionAddress);
 
-  if (Operands & MOVI_M_IMMDATA) {
+  if ((Operands & MOVI_M_IMMDATA) != 0) {
     Size    = 4;
   } else {
     Size    = 2;
   }
   if ((Modifiers & MOVI_M_DATAWIDTH) == MOVI_DATAWIDTH16) {
@@ -1731,11 +1731,11 @@ EdbDisasmMOVREL (
     }
 
     EdbPrintRegister1 (Operands);
 
     InstructionAddress += 2;
-    if (Operands & MOVI_M_IMMDATA) {
+    if ((Operands & MOVI_M_IMMDATA) != 0) {
       CopyMem (&Data16, (VOID *)(UINTN)(InstructionAddress), sizeof(UINT16));
       InstructionAddress += 2;
       EdbPrintRawIndexData16 (Data16);
     }
 
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.c
index 0108870..2e001a4 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.c
@@ -268,11 +268,11 @@ EdbPrintInstructionName (
 UINTN
 EdbPrintRegister1 (
   IN UINT8                  Operands
   )
 {
-  if (Operands & OPERAND_M_INDIRECT1) {
+  if ((Operands & OPERAND_M_INDIRECT1) != 0) {
     EDBSPrintWithOffset (
       mInstructionString.Content,
       EDB_INSTRUCTION_CONTENT_MAX_SIZE,
       mInstructionContentOffset,
       L"@"
@@ -303,11 +303,11 @@ EdbPrintRegister1 (
 UINTN
 EdbPrintRegister2 (
   IN UINT8                  Operands
   )
 {
-  if (Operands & OPERAND_M_INDIRECT2) {
+  if ((Operands & OPERAND_M_INDIRECT2) != 0) {
     EDBSPrintWithOffset (
       mInstructionString.Content,
       EDB_INSTRUCTION_CONTENT_MAX_SIZE,
       mInstructionContentOffset,
       L"@"
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
index 1a396a4..bb0626f 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
@@ -35,31 +35,31 @@ Xtoi (
 
   MaxVal = (UINTN) -1 >> 4;
   //
   // skip preceeding white space
   //
-  while (*Str && *Str == ' ') {
+  while (*Str != '\0' && *Str == ' ') {
     Str += 1;
   }
   //
   // skip preceeding zeros
   //
-  while (*Str && *Str == '0') {
+  while (*Str != '\0' && *Str == '0') {
     Str += 1;
   }
   //
   // skip preceeding white space
   //
-  if (*Str && (*Str == 'x' || *Str == 'X')) {
+  if (*Str != '\0' && (*Str == 'x' || *Str == 'X')) {
     Str += 1;
   }
   //
   // convert hex digits
   //
   RetVal = 0;
   TempChar = *(Str++);
-  while (TempChar) {
+  while (TempChar != '\0') {
     if (TempChar >= 'a' && TempChar <= 'f') {
       TempChar -= 'a' - 'A';
     }
 
     if ((TempChar >= '0' && TempChar <= '9') || (TempChar >= 'A' && TempChar <= 'F')) {
@@ -100,31 +100,31 @@ LXtoi (
 
   MaxVal = RShiftU64 ((UINT64) -1, 4);
   //
   // skip preceeding white space
   //
-  while (*Str && *Str == ' ') {
+  while (*Str != '\0' && *Str == ' ') {
     Str += 1;
   }
   //
   // skip preceeding zeros
   //
-  while (*Str && *Str == '0') {
+  while (*Str != '\0' && *Str == '0') {
     Str += 1;
   }
   //
   // skip preceeding white space
   //
-  if (*Str && (*Str == 'x' || *Str == 'X')) {
+  if (*Str != '\0' && (*Str == 'x' || *Str == 'X')) {
     Str += 1;
   }
   //
   // convert hex digits
   //
   RetVal = 0;
   TempChar = *(Str++);
-  while (TempChar) {
+  while (TempChar != '\0') {
     if (TempChar >= 'a' && TempChar <= 'f') {
       TempChar -= 'a' - 'A';
     }
 
     if ((TempChar >= '0' && TempChar <= '9') || (TempChar >= 'A' && TempChar <= 'F')) {
@@ -167,19 +167,19 @@ Atoi (
   MaxVal = (UINTN) -1 / 10;
   ResteVal = (UINTN) -1 % 10;
   //
   // skip preceeding white space
   //
-  while (*Str && *Str == ' ') {
+  while (*Str != '\0' && *Str == ' ') {
     Str += 1;
   }
   //
   // convert digits
   //
   RetVal = 0;
   TempChar = *(Str++);
-  while (TempChar) {
+  while (TempChar != '\0') {
     if (TempChar >= '0' && TempChar <= '9') {
       if (RetVal > MaxVal || (RetVal == MaxVal && TempChar - '0' > (INTN) ResteVal)) {
         return (UINTN) -1;
       }
 
@@ -215,31 +215,31 @@ AsciiXtoi (
 
   MaxVal = (UINTN) -1 >> 4;
   //
   // skip preceeding white space
   //
-  while (*Str && *Str == ' ') {
+  while (*Str != '\0' && *Str == ' ') {
     Str += 1;
   }
   //
   // skip preceeding zeros
   //
-  while (*Str && *Str == '0') {
+  while (*Str != '\0' && *Str == '0') {
     Str += 1;
   }
   //
   // skip preceeding white space
   //
-  if (*Str && (*Str == 'x' || *Str == 'X')) {
+  if (*Str != '\0' && (*Str == 'x' || *Str == 'X')) {
     Str += 1;
   }
   //
   // convert hex digits
   //
   RetVal = 0;
   TempChar = *(Str++);
-  while (TempChar) {
+  while (TempChar != '\0') {
     if (TempChar >= 'a' && TempChar <= 'f') {
       TempChar -= 'a' - 'A';
     }
 
     if ((TempChar >= '0' && TempChar <= '9') || (TempChar >= 'A' && TempChar <= 'F')) {
@@ -281,19 +281,19 @@ AsciiAtoi (
   MaxVal = (UINTN) -1 / 10;
   ResteVal = (UINTN) -1 % 10;
   //
   // skip preceeding white space
   //
-  while (*Str && *Str == ' ') {
+  while (*Str != '\0' && *Str == ' ') {
     Str += 1;
   }
   //
   // convert digits
   //
   RetVal = 0;
   TempChar = *(Str++);
-  while (TempChar) {
+  while (TempChar != '\0') {
     if (TempChar >= '0' && TempChar <= '9') {
       if (RetVal > MaxVal || (RetVal == MaxVal && TempChar - '0' > (INTN) ResteVal)) {
         return (UINTN) -1;
       }
 
@@ -343,11 +343,11 @@ EFIAPI
 StrCmpUnicodeAndAscii (
   IN CHAR16   *String,
   IN CHAR8    *String2
   )
 {
-  while (*String) {
+  while (*String != '\0') {
     if (*String != (CHAR16)*String2) {
       break;
     }
 
     String += 1;
@@ -461,11 +461,11 @@ StrDuplicate (
   CHAR16      *Dest;
   UINTN       Size;
 
   Size = (StrLen(Src) + 1) * sizeof(CHAR16);
   Dest = AllocateZeroPool (Size);
-  if (Dest) {
+  if (Dest != NULL) {
     CopyMem (Dest, Src, Size);
   }
   return Dest;
 }
 
@@ -676,11 +676,11 @@ PatchForStrTokenAfter (
   while (*Str != 0) {
     Str ++;
   }
   *Str = Patch;
 
-  while (*(Str ++)) {
+  while (*(Str ++) != '\0') {
     if (*Str == 0) {
       *Str = Patch;
     } else {
       break;
     }
@@ -701,11 +701,11 @@ PatchForStrTokenBefore (
   if (Buffer == NULL) {
     return ;
   }
 
   Str = Buffer;
-  while (*(Str --)) {
+  while (*(Str --) != '\0') {
     if ((*Str == 0) || (*Str == Patch)) {
       *Str = Patch;
     } else {
       break;
     }
@@ -918,11 +918,11 @@ PatchForAsciiStrTokenAfter (
   while (*Str != 0) {
     Str ++;
   }
   *Str = Patch;
 
-  while (*(Str ++)) {
+  while (*(Str ++) != '\0') {
     if (*Str == 0) {
       *Str = Patch;
     } else {
       break;
     }
@@ -943,11 +943,11 @@ PatchForAsciiStrTokenBefore (
   if (Buffer == NULL) {
     return ;
   }
 
   Str = Buffer;
-  while (*(Str --)) {
+  while (*(Str --) != '\0') {
     if ((*Str == 0) || (*Str == Patch)) {
       *Str = Patch;
     } else {
       break;
     }
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c
index 42d8086..21d0dc9 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c
@@ -48,11 +48,11 @@ WaitForSingleEvent (
   EFI_STATUS  Status;
   UINTN       Index;
   EFI_EVENT   TimerEvent;
   EFI_EVENT   WaitList[2];
 
-  if (Timeout) {
+  if (Timeout != 0) {
     //
     // Create a timer event
     //
     Status = gBS->CreateEvent (EVT_TIMER, 0, NULL, NULL, &TimerEvent);
     if (!EFI_ERROR (Status)) {
@@ -202,11 +202,11 @@ Input (
 
   ASSERT (ConOut != NULL);
   ASSERT (ConIn != NULL);
   ASSERT (InStr != NULL);
 
-  if (Prompt) {
+  if (Prompt != NULL) {
     ConOut->OutputString (ConOut, Prompt);
   }
   //
   // Read a line from the console
   //
@@ -253,11 +253,11 @@ Input (
       TailColumn  = (Len - StrPos + Column) % LineLength;
       Done        = TRUE;
       break;
 
     case CHAR_BACKSPACE:
-      if (StrPos) {
+      if (StrPos != 0) {
         //
         // If not move back beyond string beginning, move all characters behind
         // the current position one character forward
         //
         StrPos -= 1;
@@ -305,11 +305,11 @@ Input (
       switch (Key.ScanCode) {
       case SCAN_DELETE:
         //
         // Move characters behind current position one character forward
         //
-        if (Len) {
+        if (Len != 0) {
           Update  = StrPos;
           Delete  = 1;
           CopyMem (InStr + StrPos, InStr + StrPos + 1, sizeof (CHAR16) * (Len - StrPos));
 
           NeedAdjust = TRUE;
@@ -318,11 +318,11 @@ Input (
 
       case SCAN_LEFT:
         //
         // Adjust current cursor position
         //
-        if (StrPos) {
+        if (StrPos != 0) {
           StrPos -= 1;
           ConMoveCursorBackward (LineLength, &Column, &Row);
         }
         break;
 
@@ -445,11 +445,11 @@ Input (
         NeedAdjust = FALSE;
       }
       EDBPrint (InStr + Update);
       Len = StrLen (InStr);
 
-      if (Delete) {
+      if (Delete != 0) {
         SetMem (InStr + Len, Delete * sizeof (CHAR16), 0x00);
       }
 
       if (StrPos > Len) {
         StrPos = Len;
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcExecute.c b/MdeModulePkg/Universal/EbcDxe/EbcExecute.c
index a4c51e9..e5d290a 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcExecute.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcExecute.c
@@ -2985,11 +2985,11 @@ ExecuteCALL (
   // Get opcode and operands
   //
   Opcode    = GETOPCODE (VmPtr);
   Operands  = GETOPERANDS (VmPtr);
 
-  if (Operands & OPERAND_M_NATIVE_CALL) {
+  if ((Operands & OPERAND_M_NATIVE_CALL) != 0) {
     EbcDebuggerHookCALLEXStart (VmPtr);
   } else {
     EbcDebuggerHookCALLStart (VmPtr);
   }
 
@@ -3092,11 +3092,11 @@ ExecuteCALL (
         EbcLLCALLEX (VmPtr, (UINTN) Immed64, (UINTN) VmPtr->Gpr[0], FramePtr, Size);
       }
     }
   }
 
-  if (Operands & OPERAND_M_NATIVE_CALL) {
+  if ((Operands & OPERAND_M_NATIVE_CALL) != 0) {
     EbcDebuggerHookCALLEXEnd (VmPtr);
   } else {
     EbcDebuggerHookCALLEnd (VmPtr);
   }
 
-- 
1.9.5.msysgit.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [patch 5/5] MdeModulePkg/EbcDxe: Add comments for functions
  2016-12-05  5:27 [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues Dandan Bi
                   ` (3 preceding siblings ...)
  2016-12-05  5:27 ` [patch 4/5] MdeModulePkg/EbcDxe: Avoid Non-Boolean type used as Boolean Dandan Bi
@ 2016-12-05  5:27 ` Dandan Bi
  2016-12-05 12:45 ` [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues Yao, Jiewen
  5 siblings, 0 replies; 7+ messages in thread
From: Dandan Bi @ 2016-12-05  5:27 UTC (permalink / raw)
  To: edk2-devel; +Cc: Jiewen Yao, Pete Batard

Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Pete Batard <pete@akeo.ie>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
---
 .../EbcDxe/EbcDebugger/EbcDebuggerConfig.c         |  21 ++
 .../EbcDxe/EbcDebugger/EdbDisasmSupport.h          | 338 +++++++++++++++++++++
 .../Universal/EbcDxe/EbcDebugger/EdbHook.c         |   9 +-
 .../Universal/EbcDxe/EbcDebugger/EdbSupport.h      | 251 ++++++++++++++-
 .../EbcDxe/EbcDebugger/EdbSupportString.c          | 108 ++++++-
 .../Universal/EbcDxe/EbcDebugger/EdbSupportUI.c    |  71 +++++
 .../Universal/EbcDxe/EbcDebugger/EdbSymbol.h       | 128 ++++++++
 MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.c    | 117 +++++++
 MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.h    | 129 +++++++-
 9 files changed, 1157 insertions(+), 15 deletions(-)

diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EbcDebuggerConfig.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EbcDebuggerConfig.c
index 248b1fc..2a123bf 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EbcDebuggerConfig.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EbcDebuggerConfig.c
@@ -16,10 +16,15 @@
 #include <Protocol/ShellParameters.h>
 
 #include "EdbCommon.h"
 #include "EdbSupport.h"
 
+/**
+
+  The function that displays the utility usage message.
+
+**/
 VOID
 PrintUsage (
   VOID
   )
 {
@@ -36,19 +41,35 @@ PrintUsage (
     L"\n"
     );
   return;
 }
 
+/**
+
+  The function is to show some information.
+
+  @param  DebuggerConfiguration    Point to the EFI_DEBUGGER_CONFIGURATION_PROTOCOL.
+
+**/
 VOID
 EdbShowInfo (
   EFI_DEBUGGER_CONFIGURATION_PROTOCOL *DebuggerConfiguration
   )
 {
   Print (L"Not supported!\n");
   return ;
 }
 
+/**
+
+  EdbConfigBreak function.
+
+  @param  DebuggerConfiguration    Point to the EFI_DEBUGGER_CONFIGURATION_PROTOCOL.
+  @param  Command                  Point to the command.
+  @param  CommandArg               The argument for this command.
+
+**/
 VOID
 EdbConfigBreak (
   EFI_DEBUGGER_CONFIGURATION_PROTOCOL *DebuggerConfiguration,
   CHAR16                              *Command,
   CHAR16                              *CommandArg
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.h
index 702673b..801cbc1 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbDisasmSupport.h
@@ -31,203 +31,541 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define EDB_INSTRUCTION_NAME_MAX_LENGTH     10
 #define EDB_INSTRUCTION_NAME_MAX_SIZE       (EDB_INSTRUCTION_NAME_MAX_LENGTH * sizeof(CHAR16))
 #define EDB_INSTRUCTION_CONTENT_MAX_LENGTH  30
 #define EDB_INSTRUCTION_CONTENT_MAX_SIZE    (EDB_INSTRUCTION_CONTENT_MAX_LENGTH * sizeof(CHAR16))
 
+/**
+
+  Set offset for Instruction name and content.
+
+  @param  InstructionNameOffset     - Instruction name offset
+  @param  InstructionContentOffset  - Instruction content offset
+
+**/
 VOID
 EdbSetOffset (
   IN UINTN InstructionNameOffset,
   IN UINTN InstructionContentOffset
   );
 
+/**
+
+  Pre instruction string construction.
+
+  @return Instruction string
+
+**/
 CHAR16 *
 EdbPreInstructionString (
   VOID
   );
 
+/**
+
+  Post instruction string construction.
+
+  @return Instruction string
+
+**/
 CHAR16 *
 EdbPostInstructionString (
   VOID
   );
 
+/**
+
+  Print the instruction name.
+
+  @param  Name - instruction name
+
+  @return Instruction name offset
+
+**/
 UINTN
 EdbPrintInstructionName (
   IN CHAR16                 *Name
   );
 
+/**
+
+  Get Sign, NaturalUnits, and ConstantUnits of the WORD data.
+
+  @param  Data16        - WORD data
+  @param  NaturalUnits  - Natural Units of the WORD
+  @param  ConstantUnits - Constant Units of the WORD
+
+  @return Sign value of WORD
+
+**/
 BOOLEAN
 EdbGetNaturalIndex16 (
   IN  UINT16  Data16,
   OUT UINTN   *NaturalUnits,
   OUT UINTN   *ConstantUnits
   );
 
+/**
+
+  Get Sign, NaturalUnits, and ConstantUnits of the DWORD data.
+
+  @param  Data32        - DWORD data
+  @param  NaturalUnits  - Natural Units of the DWORD
+  @param  ConstantUnits - Constant Units of the DWORD
+
+  @return Sign value of DWORD
+
+**/
 BOOLEAN
 EdbGetNaturalIndex32 (
   IN  UINT32  Data32,
   OUT UINTN   *NaturalUnits,
   OUT UINTN   *ConstantUnits
   );
 
+/**
+
+  Get Sign, NaturalUnits, and ConstantUnits of the QWORD data.
+
+  @param  Data64        - QWORD data
+  @param  NaturalUnits  - Natural Units of the QWORD
+  @param  ConstantUnits - Constant Units of the QWORD
+
+  @return Sign value of QWORD
+
+**/
 BOOLEAN
 EdbGetNaturalIndex64 (
   IN  UINT64  Data64,
   OUT UINT64  *NaturalUnits,
   OUT UINT64  *ConstantUnits
   );
 
+/**
+
+  Print the hexical WORD raw index data to instruction content.
+
+  @param  Data16 - WORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintRawIndexData16 (
   IN UINT16                 Data16
   );
 
+/**
+
+  Print the hexical DWORD raw index data to instruction content.
+
+  @param  Data32 - DWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintRawIndexData32 (
   IN UINT32                 Data32
   );
 
+/**
+
+  Print the hexical QWORD raw index data to instruction content.
+
+  @param  Data64 - QWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintRawIndexData64 (
   IN UINT64                 Data64
   );
 
+/**
+
+  Print register 1 in operands.
+
+  @param  Operands - instruction operands
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintRegister1 (
   IN UINT8                  Operands
   );
 
+/**
+
+  Print register 2 in operands.
+
+  @param  Operands - instruction operands
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintRegister2 (
   IN UINT8                  Operands
   );
 
+/**
+
+  Print dedicated register 1 in operands.
+
+  @param Operands - instruction operands
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintDedicatedRegister1 (
   IN UINT8                  Operands
   );
 
+/**
+
+  Print dedicated register 2 in operands.
+
+  @param  Operands - instruction operands
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintDedicatedRegister2 (
   IN UINT8                  Operands
   );
 
+/**
+
+  Print the hexical UINTN index data to instruction content.
+
+  @param  Sign          - Signed bit of UINTN data
+  @param  NaturalUnits  - natural units of UINTN data
+  @param  ConstantUnits - natural units of UINTN data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintIndexData (
   IN BOOLEAN                Sign,
   IN UINTN                  NaturalUnits,
   IN UINTN                  ConstantUnits
   );
 
+/**
+
+  Print the hexical QWORD index data to instruction content.
+
+  @param  Sign          - Signed bit of QWORD data
+  @param  NaturalUnits  - natural units of QWORD data
+  @param  ConstantUnits - natural units of QWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintIndexData64 (
   IN BOOLEAN                Sign,
   IN UINT64                 NaturalUnits,
   IN UINT64                 ConstantUnits
   );
 
+/**
+
+  Print the hexical BYTE immediate data to instruction content.
+
+  @param  Data - BYTE data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintImmData8 (
   IN UINT8                  Data
   );
 
+/**
+
+  Print the hexical WORD immediate data to instruction content.
+
+  @param  Data - WORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintImmData16 (
   IN UINT16                 Data
   );
 
+/**
+
+  Print the hexical DWORD immediate data to instruction content.
+
+  @param  Data - DWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintImmData32 (
   IN UINT32                 Data
   );
 
+/**
+
+  Print the hexical QWORD immediate data to instruction content.
+
+  @param  Data - QWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintImmData64 (
   IN UINT64                 Data
   );
 
+/**
+
+  Print the decimal UINTN immediate data to instruction content.
+
+  @param  Data - UINTN data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintImmDatan (
   IN UINTN                  Data
   );
 
+/**
+
+  Print the decimal QWORD immediate data to instruction content.
+
+  @param  Data64 - QWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintImmData64n (
   IN UINT64                 Data64
   );
 
+/**
+
+  Print the hexical BYTE to instruction content.
+
+  @param  Data8 - BYTE data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintData8 (
   IN UINT8                  Data8
   );
 
+/**
+
+  Print the hexical WORD to instruction content.
+
+  @param  Data16 - WORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintData16 (
   IN UINT16                 Data16
   );
 
+/**
+
+  Print the hexical DWORD to instruction content.
+
+  @param  Data32 - DWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintData32 (
   IN UINT32                 Data32
   );
 
+/**
+
+  Print the hexical QWORD to instruction content.
+
+  @param  Data64 - QWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintData64 (
   IN UINT64                 Data64
   );
 
+/**
+
+  Print the decimal unsigned UINTN to instruction content.
+
+  @param  Data - unsigned UINTN data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintDatan (
   IN UINTN                  Data
   );
 
+/**
+
+  Print the decimal unsigned QWORD to instruction content.
+
+  @param  Data64 - unsigned QWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintData64n (
   IN UINT64                 Data64
   );
 
+/**
+
+  Print the decimal signed BYTE to instruction content.
+
+  @param  Data8 - signed BYTE data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintData8s (
   IN UINT8                  Data8
   );
 
+/**
+
+  Print the decimal signed WORD to instruction content.
+
+  @param  Data16 - signed WORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintData16s (
   IN UINT16                 Data16
   );
 
+/**
+
+  Print the decimal signed DWORD to instruction content.
+
+  @param  Data32 - signed DWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintData32s (
   IN UINT32                 Data32
   );
 
+/**
+
+  Print the decimal signed QWORD to instruction content.
+
+  @param  Data64 - signed QWORD data
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintData64s (
   IN UINT64                 Data64
   );
 
+/**
+
+  Print the comma to instruction content.
+
+  @return Instruction content offset
+
+**/
 UINTN
 EdbPrintComma (
   VOID
   );
 
+/**
+
+  Find the symbol string according to address, then print it.
+
+  @param  Address - instruction address
+
+  @retval 1 - symbol string is found and printed
+  @retval 0 - symbol string not found
+
+**/
 UINTN
 EdbFindAndPrintSymbol (
   IN UINTN                  Address
   );
 
+/**
+
+  Print the EBC byte code.
+
+  @param  InstructionAddress - instruction address
+  @param  InstructionNumber  - instruction number
+
+**/
 VOID
 EdbPrintRaw (
   IN EFI_PHYSICAL_ADDRESS   InstructionAddress,
   IN UINTN                  InstructionNumber
   );
 
+/**
+
+  Print the EBC asm code.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  SystemContext   - EBC system context.
+
+  @retval EFI_SUCCESS - show disasm successfully
+
+**/
 EFI_STATUS
 EdbShowDisasm (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     EFI_SYSTEM_CONTEXT        SystemContext
   );
 
+/**
+
+  Get register value accroding to the system context, and register index.
+
+  @param  SystemContext   - EBC system context.
+  @param  Index           - EBC register index
+
+  @return register value
+
+**/
 UINT64
 GetRegisterValue (
   IN     EFI_SYSTEM_CONTEXT        SystemContext,
   IN     UINT8                     Index
   );
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.c
index 322dd25..7592def 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbHook.c
@@ -276,10 +276,18 @@ EbcDebuggerPushStepEntry (
     mDebuggerPrivate.StepContext.FramePointer = FramePtr;
     mDebuggerPrivate.FeatureFlags &= ~EFI_DEBUG_FLAG_EBC_B_STEPOUT;
   }
 }
 
+
+/**
+  Notify the callback function when an event is triggered.
+
+  @param  Event                    Indicates the event that invoke this function.
+  @param  Context                  Indicates the calling context.
+
+**/
 VOID
 EFIAPI
 EbcDebuggerBreakEventFunc (
   IN EFI_EVENT                Event,
   IN VOID                     *Context
@@ -465,11 +473,10 @@ EbcDebuggerHookUnload (
   Currently do nothing here.
 
   @param  Handle           - The EbcImage handle.
 
 **/
-
 VOID
 EbcDebuggerHookEbcUnloadImage (
   IN EFI_HANDLE                  Handle
   )
 {
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h
index 8908718..68becd6 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupport.h
@@ -23,207 +23,456 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 
 #define EFI_DEBUGGER_LINE_NUMBER_IN_PAGE  0x10
 
 #define EFI_DEBUG_MAX_PRINT_BUFFER   (80 * 4)
 
+/**
+
+  Convert hex string to uint.
+
+  @param  Str  -  The string
+
+**/
 UINTN
 EFIAPI
 Xtoi (
   CHAR16  *Str
   );
 
+/**
+
+  Convert hex string to uint.
+
+  @param  Str  -  The string
+
+**/
 UINT64
 EFIAPI
 LXtoi (
   CHAR16  *Str
   );
 
+/**
+
+  Convert hex string to uint.
+
+  @param Str  -  The string
+
+**/
 UINTN
 EFIAPI
 Atoi (
   CHAR16  *Str
   );
 
+/**
+
+  Convert hex string to uint.
+
+  @param  Str  -  The string
+
+**/
 UINTN
 EFIAPI
 AsciiXtoi (
   CHAR8  *Str
   );
 
+/**
+
+  Convert hex string to uint.
+
+  @param Str  -  The string
+
+**/
 UINTN
 EFIAPI
 AsciiAtoi (
   CHAR8  *Str
   );
 
+/**
+  Compare the Unicode and Ascii string pointed by String to the string pointed by String2.
+
+  @param String - Unicode String to process
+
+  @param String2 - Ascii string to process
+
+  @return Return a positive integer if String is lexicall greater than String2; Zero if
+  the two strings are identical; and a negative interger if String is lexically
+  less than String2.
+
+**/
 INTN
 EFIAPI
 StrCmpUnicodeAndAscii (
   IN CHAR16   *String,
   IN CHAR8    *String2
   );
 
+/**
+
+  Compare the Unicode string pointed by String to the string pointed by String2.
+
+  @param  String - Unicode String to process
+  @param  String2 - Unicode string to process
+
+  @return Return a positive integer if String is lexically greater than String2; Zero if
+  the two strings are identical; and a negative integer if String is lexically
+  less than String2.
+
+**/
 INTN
 EFIAPI
 StriCmp (
   IN CHAR16   *String,
   IN CHAR16   *String2
   );
 
+/**
+
+  Compare the Unicode and Ascii string pointed by String to the string pointed by String2.
+
+  @param  String - Unicode String to process
+  @param  String2 - Ascii string to process
+
+  @return Return a positive integer if String is lexically greater than String2; Zero if
+  the two strings are identical; and a negative integer if String is lexically
+  less than String2.
+
+**/
 INTN
 EFIAPI
 StriCmpUnicodeAndAscii (
   IN CHAR16   *String,
   IN CHAR8    *String2
   );
 
+/**
+
+  Verify if the string is end with the sub string.
+
+  @param  Str - The string where to search the sub string
+  @param  SubStr - The substring.
+
+**/
 BOOLEAN
 EFIAPI
 StrEndWith (
   IN CHAR16                       *Str,
   IN CHAR16                       *SubStr
   );
 
+/**
+  Duplicate a string.
+
+  @param  Src  The string to be duplicated.
+
+**/
 CHAR16 *
 EFIAPI
 StrDuplicate (
   IN CHAR16   *Src
   );
 
+/**
+
+  Find the next token after one or more specified characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR16 *
 EFIAPI
 StrGetNewTokenLine (
   IN CHAR16                       *String,
   IN CHAR16                       *CharSet
   );
 
+/**
+
+  Find the next token after one or more specified characters.
+
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR16 *
 EFIAPI
 StrGetNextTokenLine (
   IN CHAR16                       *CharSet
   );
 
+/**
+
+  Find the next token after one specificed characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR16 *
 EFIAPI
 StrGetNewTokenField (
   IN CHAR16                       *String,
   IN CHAR16                       *CharSet
   );
 
+/**
+
+  Find the next token after one specificed characters.
+
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR16 *
 EFIAPI
 StrGetNextTokenField (
   IN CHAR16                       *CharSet
   );
 
+/**
+
+  Patch a character to the end of a string.
+
+  @param  Buffer   The string to be patched.
+  @param  Patch    The patch character.
+
+**/
 VOID
 EFIAPI
 PatchForStrTokenAfter (
   IN CHAR16    *Buffer,
   IN CHAR16    Patch
   );
 
+/**
+  Patch a character at the beginning of a string.
+
+  @param  Buffer   The string to be patched.
+  @param  Patch    The patch character.
+
+**/
 VOID
 EFIAPI
 PatchForStrTokenBefore (
   IN CHAR16    *Buffer,
   IN CHAR16    Patch
   );
 
+/**
+
+  Find the next token after one or more specified characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR8 *
 EFIAPI
 AsciiStrGetNewTokenLine (
   IN CHAR8                       *String,
   IN CHAR8                       *CharSet
   );
 
+/**
+
+  Find the next token after one or more specified characters.
+
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR8 *
 EFIAPI
 AsciiStrGetNextTokenLine (
   IN CHAR8                       *CharSet
   );
 
+/**
+
+  Find the next token after one specificed characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR8 *
 EFIAPI
 AsciiStrGetNewTokenField (
   IN CHAR8                       *String,
   IN CHAR8                       *CharSet
   );
 
+/**
+
+  Find the next token after one specificed characters.
+
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR8 *
 EFIAPI
 AsciiStrGetNextTokenField (
   IN CHAR8                       *CharSet
   );
 
+/**
+
+  Patch a character to the end of a string.
+
+  @param  Buffer   The string to be patched.
+  @param  Patch    The patch character.
+
+**/
 VOID
 EFIAPI
 PatchForAsciiStrTokenAfter (
   IN CHAR8    *Buffer,
   IN CHAR8    Patch
   );
 
+/**
+  Patch a character at the beginning of a string.
+
+  @param  Buffer   The string to be patched.
+  @param  Patch    The patch character.
+
+**/
 VOID
 EFIAPI
 PatchForAsciiStrTokenBefore (
   IN CHAR8    *Buffer,
   IN CHAR8    Patch
   );
 
 /**
-Shell Library.
+
+  Shell Library.
+  Get user input.
+
+  @param  Prompt    The prompt string.
+  @param  InStr     Point to the input string.
+  @param  StrLen    The max length of string user can input.
+
 **/
 VOID
 EFIAPI
 Input (
   IN CHAR16    *Prompt OPTIONAL,
   OUT CHAR16   *InStr,
   IN UINTN     StrLen
   );
 
+/**
+
+  SetPageBreak.
+
+**/
 BOOLEAN
 EFIAPI
 SetPageBreak (
   VOID
   );
 
+/**
+  Print a Unicode string to the output device.
+
+  @param  Format    A Null-terminated Unicode format string.
+  @param  ...       The variable argument list that contains pointers to Null-
+                    terminated Unicode strings to be printed
+
+**/
 UINTN
 EFIAPI
 EDBPrint (
   IN CONST CHAR16  *Format,
   ...
   );
 
+/**
+  Print a Unicode string to the output buffer.
+
+  @param  Buffer          A pointer to the output buffer for the produced Null-terminated
+                          Unicode string.
+  @param  BufferSize      The size, in bytes, of the output buffer specified by StartOfBuffer.
+  @param  Format          A Null-terminated Unicode format string.
+  @param  ...             The variable argument list that contains pointers to Null-
+                          terminated Unicode strings to be printed
+
+**/
 UINTN
 EFIAPI
 EDBSPrint (
   OUT CHAR16        *Buffer,
   IN  INTN          BufferSize,
   IN  CONST CHAR16  *Format,
   ...
   );
 
+/**
+  Print a Unicode string to the output buffer with specified offset..
+
+  @param  Buffer          A pointer to the output buffer for the produced Null-terminated
+                          Unicode string.
+  @param  BufferSize      The size, in bytes, of the output buffer specified by StartOfBuffer.
+  @param  Offset          The offset of the buffer.
+  @param  Format          A Null-terminated Unicode format string.
+  @param  ...             The variable argument list that contains pointers to Null-
+                          terminated Unicode strings to be printed
+
+**/
 UINTN
 EFIAPI
 EDBSPrintWithOffset (
   OUT CHAR16        *Buffer,
   IN  INTN          BufferSize,
   IN  UINTN         Offset,
   IN  CONST CHAR16  *Format,
   ...
   );
 
+/**
+
+  Read a file.
+  If ScanFs is FLASE, it will use DebuggerPrivate->Vol as default Fs.
+  If ScanFs is TRUE, it will scan all FS and check the file.
+  If there is only one file match the name, it will be read.
+  If there is more than one file match the name, it will return Error.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  FileName        - The file to be read.
+  @param  BufferSize      - The file buffer size
+  @param  Buffer          - The file buffer
+  @param  ScanFs          - Need Scan all FS
+
+  @retval EFI_SUCCESS    - read file successfully
+  @retval EFI_NOT_FOUND  - file not found
+  @retval EFI_NO_MAPPING - there is duplicated files found
+
+**/
 EFI_STATUS
 EFIAPI
 ReadFileToBuffer (
   IN  EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN  CHAR16                      *FileName,
   OUT UINTN                       *BufferSize,
   OUT VOID                        **Buffer,
   IN  BOOLEAN                     ScanFs
   );
 
+/**
+
+  Get file name under this dir with index
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  DirName         - The dir to be read.
+  @param  FileName        - The file name pattern under this dir
+  @param  Index           - The file index under this dir
+
+  @return File Name which match the pattern and index.
+
+**/
 CHAR16 *
 EFIAPI
 GetFileNameUnderDir (
   IN  EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN  CHAR16                      *DirName,
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
index bb0626f..0a49d2f 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportString.c
@@ -83,11 +83,10 @@ Xtoi (
   Convert hex string to uint.
 
   @param  Str  -  The string
 
 **/
-
 UINT64
 EFIAPI
 LXtoi (
   CHAR16  *Str
   )
@@ -306,19 +305,33 @@ AsciiAtoi (
   }
 
   return RetVal;
 }
 
+/**
+
+  Convert the character to upper case.
+
+  @param  Chr    the character to be converted.
+
+**/
 STATIC
 CHAR16
 UnicodeToUpper (
   IN      CHAR16                    Chr
   )
 {
   return (Chr >= L'a' && Chr <= L'z') ? Chr - (L'a' - L'A') : Chr;
 }
 
+/**
+
+  Convert the character to upper case.
+
+  @param  Chr    the character to be converted.
+
+**/
 STATIC
 CHAR8
 AsciiToUpper (
   IN      CHAR8                     Chr
   )
@@ -518,11 +531,10 @@ StrSpn (
 
   @param  String    Point to the string where to find the substring.
   @param  CharSet   Point to the string to be found.
 
 **/
-
 CHAR16 *
 EFIAPI
 StrBrk (
   IN CHAR16                       *String,
   IN CHAR16                       *CharSet
@@ -587,11 +599,10 @@ StrTokenLine (
 
   @param  String    Point to the string where to find the substring.
   @param  CharSet   Point to the string to be found.
 
 **/
-
 CHAR16 *
 EFIAPI
 StrTokenField (
   IN CHAR16                       *String OPTIONAL,
   IN CHAR16                       *CharSet
@@ -619,48 +630,86 @@ StrTokenField (
 
   mFieldBuffer = End;
   return Begin;
 }
 
+/**
+
+  Find the next token after one or more specified characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR16 *
 EFIAPI
 StrGetNewTokenLine (
   IN CHAR16                       *String,
   IN CHAR16                       *CharSet
   )
 {
   return StrTokenLine (String, CharSet);
 }
 
+/**
+
+  Find the next token after one or more specified characters.
+
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR16 *
 EFIAPI
 StrGetNextTokenLine (
   IN CHAR16                       *CharSet
   )
 {
   return StrTokenLine (NULL, CharSet);
 }
 
+/**
+
+  Find the next token after one specificed characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR16 *
 EFIAPI
 StrGetNewTokenField (
   IN CHAR16                       *String,
   IN CHAR16                       *CharSet
   )
 {
   return StrTokenField (String, CharSet);
 }
 
+/**
+
+  Find the next token after one specificed characters.
+
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR16 *
 EFIAPI
 StrGetNextTokenField (
   IN CHAR16                       *CharSet
   )
 {
   return StrTokenField (NULL, CharSet);
 }
 
+/**
+
+  Patch a character to the end of a string.
+
+  @param  Buffer   The string to be patched.
+  @param  Patch    The patch character.
+
+**/
 VOID
 EFIAPI
 PatchForStrTokenAfter (
   IN CHAR16    *Buffer,
   IN CHAR16    Patch
@@ -687,10 +736,17 @@ PatchForStrTokenAfter (
   }
 
   return ;
 }
 
+/**
+  Patch a character at the beginning of a string.
+
+  @param  Buffer   The string to be patched.
+  @param  Patch    The patch character.
+
+**/
 VOID
 EFIAPI
 PatchForStrTokenBefore (
   IN CHAR16    *Buffer,
   IN CHAR16    Patch
@@ -829,11 +885,10 @@ AsciiStrTokenLine (
 
   @param  String    Point to the string where to find the substring.
   @param  CharSet   Point to the string to be found.
 
 **/
-
 CHAR8 *
 EFIAPI
 AsciiStrTokenField (
   IN CHAR8                       *String OPTIONAL,
   IN CHAR8                       *CharSet
@@ -861,48 +916,86 @@ AsciiStrTokenField (
 
   mAsciiFieldBuffer = End;
   return Begin;
 }
 
+/**
+
+  Find the next token after one or more specified characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR8 *
 EFIAPI
 AsciiStrGetNewTokenLine (
   IN CHAR8                       *String,
   IN CHAR8                       *CharSet
   )
 {
   return AsciiStrTokenLine (String, CharSet);
 }
 
+/**
+
+  Find the next token after one or more specified characters.
+
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR8 *
 EFIAPI
 AsciiStrGetNextTokenLine (
   IN CHAR8                       *CharSet
   )
 {
   return AsciiStrTokenLine (NULL, CharSet);
 }
 
+/**
+
+  Find the next token after one specificed characters.
+
+  @param  String    Point to the string where to find the substring.
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR8 *
 EFIAPI
 AsciiStrGetNewTokenField (
   IN CHAR8                       *String,
   IN CHAR8                       *CharSet
   )
 {
   return AsciiStrTokenField (String, CharSet);
 }
 
+/**
+
+  Find the next token after one specificed characters.
+
+  @param  CharSet   Point to the string to be found.
+
+**/
 CHAR8 *
 EFIAPI
 AsciiStrGetNextTokenField (
   IN CHAR8                       *CharSet
   )
 {
   return AsciiStrTokenField (NULL, CharSet);
 }
 
+/**
+
+  Patch a character to the end of a string.
+
+  @param  Buffer   The string to be patched.
+  @param  Patch    The patch character.
+
+**/
 VOID
 EFIAPI
 PatchForAsciiStrTokenAfter (
   IN CHAR8    *Buffer,
   IN CHAR8    Patch
@@ -929,10 +1022,17 @@ PatchForAsciiStrTokenAfter (
   }
 
   return ;
 }
 
+/**
+  Patch a character at the beginning of a string.
+
+  @param  Buffer   The string to be patched.
+  @param  Patch    The patch character.
+
+**/
 VOID
 EFIAPI
 PatchForAsciiStrTokenBefore (
   IN CHAR8    *Buffer,
   IN CHAR8    Patch
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c
index 21d0dc9..14f8627 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSupportUI.c
@@ -12,10 +12,23 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 
 **/
 
 #include "Edb.h"
 
+/**
+  Set the current coordinates of the cursor position.
+
+  @param  ConOut        Point to EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL.
+  @param  Column        The position to set the cursor to.
+  @param  Row           The position to set the cursor to.
+  @param  LineLength    Length of a line.
+  @param  TotalRow      Total row of a screen.
+  @param  Str           Point to the string.
+  @param  StrPos        The position of the string.
+  @param  Len           The length of the string.
+
+**/
 VOID
 EFIAPI
 SetCursorPosition (
   IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *ConOut,
   IN  UINTN                           Column,
@@ -164,10 +177,19 @@ ConMoveCursorForward (
 }
 
 CHAR16 mBackupSpace[EFI_DEBUG_INPUS_BUFFER_SIZE];
 CHAR16 mInputBufferHistory[EFI_DEBUG_INPUS_BUFFER_SIZE];
 
+/**
+
+  Get user input.
+
+  @param  Prompt       The prompt string.
+  @param  InStr        Point to the input string.
+  @param  StrLength    The max length of string user can input.
+
+**/
 VOID
 EFIAPI
 Input (
   IN CHAR16    *Prompt OPTIONAL,
   OUT CHAR16   *InStr,
@@ -512,10 +534,23 @@ Input (
   // Return the data to the caller
   //
   return ;
 }
 
+/**
+  Set the current coordinates of the cursor position.
+
+  @param  ConOut        Point to EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL.
+  @param  Column        The position to set the cursor to.
+  @param  Row           The position to set the cursor to.
+  @param  LineLength    Length of a line.
+  @param  TotalRow      Total row of a screen.
+  @param  Str           Point to the string.
+  @param  StrPos        The position of the string.
+  @param  Len           The length of the string.
+
+**/
 VOID
 EFIAPI
 SetCursorPosition (
   IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *ConOut,
   IN  UINTN                           Column,
@@ -549,10 +584,15 @@ SetCursorPosition (
   }
 
   ConOut->SetCursorPosition (ConOut, 0, 0);
 }
 
+/**
+
+  SetPageBreak.
+
+**/
 BOOLEAN
 EFIAPI
 SetPageBreak (
   VOID
   )
@@ -618,10 +658,18 @@ SetPageBreak (
   }
 
   return OmitPrint;
 }
 
+/**
+  Print a Unicode string to the output device.
+
+  @param  Format    A Null-terminated Unicode format string.
+  @param  ...       The variable argument list that contains pointers to Null-
+                    terminated Unicode strings to be printed
+
+**/
 UINTN
 EFIAPI
 EDBPrint (
   IN CONST CHAR16  *Format,
   ...
@@ -643,10 +691,21 @@ EDBPrint (
   }
 
   return Return;
 }
 
+/**
+  Print a Unicode string to the output buffer.
+
+  @param  Buffer          A pointer to the output buffer for the produced Null-terminated
+                          Unicode string.
+  @param  BufferSize      The size, in bytes, of the output buffer specified by StartOfBuffer.
+  @param  Format          A Null-terminated Unicode format string.
+  @param  ...             The variable argument list that contains pointers to Null-
+                          terminated Unicode strings to be printed
+
+**/
 UINTN
 EFIAPI
 EDBSPrint (
   OUT CHAR16        *Buffer,
   IN  INTN          BufferSize,
@@ -664,10 +723,22 @@ EDBSPrint (
   VA_END (Marker);
 
   return Return;
 }
 
+/**
+  Print a Unicode string to the output buffer with specified offset..
+
+  @param  Buffer          A pointer to the output buffer for the produced Null-terminated
+                          Unicode string.
+  @param  BufferSize      The size, in bytes, of the output buffer specified by StartOfBuffer.
+  @param  Offset          The offset of the buffer.
+  @param  Format          A Null-terminated Unicode format string.
+  @param  ...             The variable argument list that contains pointers to Null-
+                          terminated Unicode strings to be printed
+
+**/
 UINTN
 EFIAPI
 EDBSPrintWithOffset (
   OUT CHAR16        *Buffer,
   IN  INTN          BufferSize,
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.h b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.h
index c4c2858..2e8c5e2 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.h
@@ -37,84 +37,212 @@ typedef enum {
   EdbEbcImageRvaSearchTypeFirst,
   EdbEbcImageRvaSearchTypeLast,
   EdbEbcImageRvaSearchTypeMax,
 } EDB_EBC_IMAGE_RVA_SEARCH_TYPE;
 
+/**
+
+  Find symbol by address.
+
+  @param  Address         - Symbol address
+  @param  Type            - Search type
+  @param  RetObject       - Symbol object
+  @param  RetEntry        - Symbol entry
+
+  @return Nearest symbol address
+
+**/
 UINTN
 EbdFindSymbolAddress (
   IN UINTN                       Address,
   IN EDB_MATCH_SYMBOL_TYPE       Type,
   OUT EFI_DEBUGGER_SYMBOL_OBJECT **Object,
   OUT EFI_DEBUGGER_SYMBOL_ENTRY  **Entry
   );
 
+/**
+
+  Load symbol file by name.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  FileName        - Symbol file name
+  @param  BufferSize      - Symbol file buffer size
+  @param  Buffer          - Symbol file buffer
+
+  @retval EFI_SUCCESS - load symbol successfully
+
+**/
 EFI_STATUS
 EdbLoadSymbol (
   IN EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN CHAR16                      *FileName,
   IN UINTN                       BufferSize,
   IN VOID                        *Buffer
   );
 
+/**
+
+  Unload symbol file by name.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  FileName        - Symbol file name
+
+  @retval EFI_SUCCESS - unload symbol successfully
+
+**/
 EFI_STATUS
 EdbUnloadSymbol (
   IN EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN CHAR16                      *FileName
   );
 
+/**
+
+  Patch symbol RVA.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  FileName        - Symbol file name
+  @param  SearchType      - Search type for Object
+
+  @retval EFI_SUCCESS   - Patch symbol RVA successfully
+  @retval EFI_NOT_FOUND - Symbol RVA base not found
+
+**/
 EFI_STATUS
 EdbPatchSymbolRVA (
   IN EFI_DEBUGGER_PRIVATE_DATA     *DebuggerPrivate,
   IN CHAR16                        *FileName,
   IN EDB_EBC_IMAGE_RVA_SEARCH_TYPE SearchType
   );
 
+/**
+
+  Load code.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  MapFileName     - Symbol file name
+  @param  FileName        - Code file name
+  @param  BufferSize      - Code file buffer size
+  @param  Buffer          - Code file buffer
+
+  @retval EFI_SUCCESS - Code loaded successfully
+
+**/
 EFI_STATUS
 EdbLoadCode (
   IN EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN CHAR16                      *MapFileName,
   IN CHAR16                      *FileName,
   IN UINTN                       BufferSize,
   IN VOID                        *Buffer
   );
 
+/**
+
+  Unload code.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  MapFileName     - Symbol file name
+  @param  FileName        - Code file name
+  @param  Buffer          - Code file buffer
+
+  @retval EFI_SUCCESS - Code unloaded successfully
+
+**/
 EFI_STATUS
 EdbUnloadCode (
   IN EFI_DEBUGGER_PRIVATE_DATA   *DebuggerPrivate,
   IN CHAR16                      *MapFileName,
   IN CHAR16                      *FileName,
   OUT VOID                       **Buffer
   );
 
+/**
+
+  Add code buffer.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  MapFileName     - Symbol file name
+  @param  CodeFileName    - Code file name
+  @param  SourceBufferSize- Code buffer size
+  @param  SourceBuffer    - Code buffer
+
+  @retval EFI_SUCCESS - CodeBuffer added successfully
+
+**/
 EFI_STATUS
 EdbAddCodeBuffer (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     CHAR16                    *MapFileName,
   IN     CHAR16                    *CodeFileName,
   IN     UINTN                     SourceBufferSize,
   IN     VOID                      *SourceBuffer
   );
 
+/**
+
+  Delete code buffer.
+
+  @param  DebuggerPrivate - EBC Debugger private data structure
+  @param  MapFileName     - Symbol file name
+  @param  CodeFileName    - Code file name
+  @param  SourceBuffer    - Code buffer
+
+  @retval EFI_SUCCESS - CodeBuffer deleted successfully
+
+**/
 EFI_STATUS
 EdbDeleteCodeBuffer (
   IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
   IN     CHAR16                    *MapFileName,
   IN     CHAR16                    *CodeFileName,
   IN     VOID                      *SourceBuffer
   );
 
+/**
+
+  Find the symbol string according to address.
+
+  @param  Address         - Symbol address
+
+  @return Symbol string
+
+**/
 CHAR8 *
 FindSymbolStr (
   IN UINTN Address
   );
 
+/**
+
+  Print source.
+
+  @param  Address         - Instruction address
+  @param  IsPrint         - Whether need to print
+
+  @retval 1 - find the source
+  @retval 0 - not find the source
+
+**/
 UINTN
 EdbPrintSource (
   IN UINTN     Address,
   IN BOOLEAN   IsPrint
   );
 
+/**
+
+  Convert a symbol to an address.
+
+  @param  Symbol          - Symbol name
+  @param  Address         - Symbol address
+
+  @retval EFI_SUCCESS    - symbol found and address returned.
+  @retval EFI_NOT_FOUND  - symbol not found
+  @retval EFI_NO_MAPPING - duplicated symbol not found
+
+**/
 EFI_STATUS
 Symboltoi (
   IN CHAR16   *Symbol,
   OUT UINTN   *Address
   );
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.c b/MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.c
index 1594cec..c5a1934 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.c
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.c
@@ -16,139 +16,256 @@
 
 **/
 
 #include "EbcDebuggerHook.h"
 
+/**
+
+  The hook in InitializeEbcDriver.
+
+  @param Handle           - The EbcDebugProtocol handle.
+  @param EbcDebugProtocol - The EbcDebugProtocol interface.
+
+**/
 VOID
 EbcDebuggerHookInit (
   IN EFI_HANDLE                  Handle,
   IN EFI_DEBUG_SUPPORT_PROTOCOL  *EbcDebugProtocol
   )
 {
   return;
 }
 
+/**
+
+The hook in UnloadImage for EBC Interpreter.
+
+**/
 VOID
 EbcDebuggerHookUnload (
   VOID
   )
 {
   return;
 }
 
+/**
+
+  The hook in EbcUnloadImage.
+  Currently do nothing here.
+
+  @param  Handle          The EbcImage handle.
+
+**/
 VOID
 EbcDebuggerHookEbcUnloadImage (
   IN EFI_HANDLE                  Handle
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteEbcImageEntryPoint.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookExecuteEbcImageEntryPoint (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteEbcImageEntryPoint.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookEbcInterpret (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+  The hook in EbcExecute, before ExecuteFunction.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookExecuteStart (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+  The hook in EbcExecute, after ExecuteFunction.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookExecuteEnd (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteCALL, before move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookCALLStart (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteCALL, after move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookCALLEnd (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteCALL, before call EbcLLCALLEX.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookCALLEXStart (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteCALL, after call EbcLLCALLEX.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookCALLEXEnd (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteRET, before move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookRETStart (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteRET, after move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookRETEnd (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteJMP, before move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookJMPStart (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteJMP, after move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookJMPEnd (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteJMP8, before move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookJMP8Start (
   IN VM_CONTEXT *VmPtr
   )
 {
   return;
 }
 
+/**
+
+  The hook in ExecuteJMP8, after move IP..
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookJMP8End (
   IN VM_CONTEXT *VmPtr
   )
 {
diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.h b/MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.h
index ad93fd7..cf81b4a 100644
--- a/MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.h
+++ b/MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.h
@@ -36,100 +36,211 @@ EbcDebugSignalException (
   IN EFI_EXCEPTION_TYPE                   ExceptionType,
   IN EXCEPTION_FLAGS                      ExceptionFlags,
   IN VM_CONTEXT                           *VmPtr
   );
 
-//
-// Hooks in EbcInt.c
-//
+/**
+
+  The hook in InitializeEbcDriver.
+
+  @param Handle           - The EbcDebugProtocol handle.
+  @param EbcDebugProtocol - The EbcDebugProtocol interface.
+
+**/
 VOID
 EbcDebuggerHookInit (
   IN EFI_HANDLE                  Handle,
   IN EFI_DEBUG_SUPPORT_PROTOCOL  *EbcDebugProtocol
   );
 
+/**
+
+The hook in UnloadImage for EBC Interpreter.
+
+**/
 VOID
 EbcDebuggerHookUnload (
   VOID
   );
 
+/**
+
+  The hook in EbcUnloadImage.
+  Currently do nothing here.
+
+  @param  Handle          The EbcImage handle.
+
+**/
 VOID
 EbcDebuggerHookEbcUnloadImage (
   IN EFI_HANDLE                  Handle
   );
 
-//
-// Hooks in EbcSupport.c
-//
+
+/**
+
+  Hooks in EbcSupport.c
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookExecuteEbcImageEntryPoint (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+
+  The hook in ExecuteEbcImageEntryPoint.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookEbcInterpret (
   IN VM_CONTEXT *VmPtr
   );
 
-//
-// Hooks in EbcExecute.c
-//
+
+/**
+  The hook in EbcExecute, before ExecuteFunction.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookExecuteStart (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+  The hook in EbcExecute, after ExecuteFunction.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookExecuteEnd (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+  The hook in ExecuteCALL, before move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookCALLStart (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+
+  The hook in ExecuteCALL, after move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookCALLEnd (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+
+  The hook in ExecuteCALL, before call EbcLLCALLEX.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookCALLEXStart (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+
+  The hook in ExecuteCALL, after call EbcLLCALLEX.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookCALLEXEnd (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+
+  The hook in ExecuteRET, before move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookRETStart (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+
+  The hook in ExecuteRET, after move IP.
+  It will record trace information.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookRETEnd (
   IN VM_CONTEXT *VmPtr
   );
 
+
+/**
+
+  The hook in ExecuteJMP, before move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookJMPStart (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+
+  The hook in ExecuteJMP, after move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookJMPEnd (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+
+  The hook in ExecuteJMP8, before move IP.
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookJMP8Start (
   IN VM_CONTEXT *VmPtr
   );
 
+/**
+
+  The hook in ExecuteJMP8, after move IP..
+
+  @param  VmPtr - pointer to VM context.
+
+**/
 VOID
 EbcDebuggerHookJMP8End (
   IN VM_CONTEXT *VmPtr
   );
 
-- 
1.9.5.msysgit.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues
  2016-12-05  5:27 [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues Dandan Bi
                   ` (4 preceding siblings ...)
  2016-12-05  5:27 ` [patch 5/5] MdeModulePkg/EbcDxe: Add comments for functions Dandan Bi
@ 2016-12-05 12:45 ` Yao, Jiewen
  5 siblings, 0 replies; 7+ messages in thread
From: Yao, Jiewen @ 2016-12-05 12:45 UTC (permalink / raw)
  To: Bi, Dandan, edk2-devel@lists.01.org

Reviewed-by: Jiewen.yao@intel.com

> -----Original Message-----
> From: Bi, Dandan
> Sent: Monday, December 5, 2016 1:27 PM
> To: edk2-devel@lists.01.org
> Cc: Yao, Jiewen <jiewen.yao@intel.com>; Pete Batard <pete@akeo.ie>
> Subject: [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues
> 
> These patch series make the coding style of EbcDxe follow
> the EDKII coding rules.
> 
> Cc: Jiewen Yao <jiewen.yao@intel.com>
> Cc: Pete Batard <pete@akeo.ie>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Dandan Bi <dandan.bi@intel.com>
> 
> 
> Dandan Bi (5):
>   MdeModulePkg/EbcDxe: Make the comments align with EDKII coding
> style
>   MdeModulePkg/EbcDxe: Initialize variable after declaration
>   MdeModulePkg/EbcDxe: Make the variable name follow rules
>   MdeModulePkg/EbcDxe: Avoid Non-Boolean type used as Boolean
>   MdeModulePkg/EbcDxe: Add comments for functions
> 
>  .../EbcDxe/EbcDebugger/EbcDebuggerConfig.c         |   21 +
>  MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.c    |  223 ++---
>  MdeModulePkg/Universal/EbcDxe/EbcDebugger/Edb.h    |   34 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdBranch.c    |   98 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c     |  199 ++--
>  .../EbcDxe/EbcDebugger/EdbCmdBreakpoint.c          |  327 +++---
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdExtIo.c     |  195 ++--
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdExtPci.c    |  161 ++-
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdGo.c        |   43 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdHelp.c      |   40 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdMemory.c    |  427 +++-----
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdQuit.c      |   38 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdRegister.c  |   40 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdScope.c     |   70 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdStep.c      |  152 ++-
>  .../Universal/EbcDxe/EbcDebugger/EdbCmdSymbol.c    |  374 +++----
>  .../Universal/EbcDxe/EbcDebugger/EdbCommand.c      |   68 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbCommand.h      |   35 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbCommon.h       |   15 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbDisasm.c       |  733
> ++++++--------
>  .../Universal/EbcDxe/EbcDebugger/EdbDisasm.h       |   14 +-
>  .../EbcDxe/EbcDebugger/EdbDisasmSupport.c          |  950
> +++++++-----------
>  .../EbcDxe/EbcDebugger/EdbDisasmSupport.h          |  352 ++++++-
>  .../Universal/EbcDxe/EbcDebugger/EdbHook.c         |  566
> ++++-------
>  .../Universal/EbcDxe/EbcDebugger/EdbHook.h         |   15 +-
>  .../Universal/EbcDxe/EbcDebugger/EdbSupport.h      |  279 +++++-
>  .../Universal/EbcDxe/EbcDebugger/EdbSupportFile.c  |  115 +--
>  .../EbcDxe/EbcDebugger/EdbSupportString.c          |  650
> ++++++------
>  .../Universal/EbcDxe/EbcDebugger/EdbSupportUI.c    |  168 ++--
>  .../Universal/EbcDxe/EbcDebugger/EdbSymbol.c       | 1050
> ++++++--------------
>  .../Universal/EbcDxe/EbcDebugger/EdbSymbol.h       |  142 ++-
>  MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.c    |  117 +++
>  MdeModulePkg/Universal/EbcDxe/EbcDebuggerHook.h    |  129 ++-
>  MdeModulePkg/Universal/EbcDxe/EbcExecute.c         |    4 +-
>  34 files changed, 3665 insertions(+), 4179 deletions(-)
> 
> --
> 1.9.5.msysgit.1



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-12-05 12:45 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-12-05  5:27 [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues Dandan Bi
2016-12-05  5:27 ` [patch 1/5] MdeModulePkg/EbcDxe: Make the comments align with EDKII coding style Dandan Bi
2016-12-05  5:27 ` [patch 2/5] MdeModulePkg/EbcDxe: Initialize variable after declaration Dandan Bi
2016-12-05  5:27 ` [patch 3/5] MdeModulePkg/EbcDxe: Make the variable name follow rules Dandan Bi
2016-12-05  5:27 ` [patch 4/5] MdeModulePkg/EbcDxe: Avoid Non-Boolean type used as Boolean Dandan Bi
2016-12-05  5:27 ` [patch 5/5] MdeModulePkg/EbcDxe: Add comments for functions Dandan Bi
2016-12-05 12:45 ` [patch 0/5] MdeModulePkg/EbcDxe: Fix coding style issues Yao, Jiewen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox