Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Siyuan Fu <siyuan.fu@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Rebecca Cran <rebecca@bluestop.org> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com> Reviewed-by: He Junjie <junjie.he@intel.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
		
			
				
	
	
		
			585 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			585 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/** @file
 | 
						|
 | 
						|
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.
 | 
						|
 | 
						|
 | 
						|
**/
 | 
						|
 | 
						|
#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
 | 
						|
  )
 | 
						|
{
 | 
						|
  UINT8  Data8;
 | 
						|
  UINT16 Data16;
 | 
						|
  UINT32 Data32;
 | 
						|
  UINT64 Data64;
 | 
						|
 | 
						|
  //
 | 
						|
  // Print according to width
 | 
						|
  //
 | 
						|
  switch (Width) {
 | 
						|
  case EdbWidthUint8:
 | 
						|
    CopyMem (&Data8, (VOID *)Address, sizeof(UINT8));
 | 
						|
    EDBPrint (L"%02x ", Data8);
 | 
						|
    return sizeof(UINT8);
 | 
						|
  case EdbWidthUint16:
 | 
						|
    CopyMem (&Data16, (VOID *)Address, sizeof(UINT16));
 | 
						|
    EDBPrint (L"%04x ", Data16);
 | 
						|
    return sizeof(UINT16);
 | 
						|
  case EdbWidthUint32:
 | 
						|
    CopyMem (&Data32, (VOID *)Address, sizeof(UINT32));
 | 
						|
    EDBPrint (L"%08x ", Data32);
 | 
						|
    return sizeof(UINT32);
 | 
						|
  case EdbWidthUint64:
 | 
						|
    CopyMem (&Data64, (VOID *)Address, sizeof(UINT64));
 | 
						|
    EDBPrint (L"%016lx ", Data64);
 | 
						|
    return sizeof(UINT64);
 | 
						|
  default:
 | 
						|
    ASSERT (FALSE);
 | 
						|
    break;
 | 
						|
  }
 | 
						|
 | 
						|
  //
 | 
						|
  // 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
 | 
						|
  )
 | 
						|
{
 | 
						|
  UINTN  LineNumber;
 | 
						|
  UINTN  ByteNumber;
 | 
						|
  UINTN  LineIndex;
 | 
						|
  UINTN  ByteIndex;
 | 
						|
  UINTN  NumberInLine;
 | 
						|
 | 
						|
  if (Count == 0) {
 | 
						|
    return ;
 | 
						|
  }
 | 
						|
 | 
						|
  //
 | 
						|
  // Get line number and byte number
 | 
						|
  //
 | 
						|
  switch (Width) {
 | 
						|
  case EdbWidthUint8:
 | 
						|
    NumberInLine = 16;
 | 
						|
    break;
 | 
						|
  case EdbWidthUint16:
 | 
						|
    NumberInLine = 8;
 | 
						|
    break;
 | 
						|
  case EdbWidthUint32:
 | 
						|
    NumberInLine = 4;
 | 
						|
    break;
 | 
						|
  case EdbWidthUint64:
 | 
						|
    NumberInLine = 2;
 | 
						|
    break;
 | 
						|
  default:
 | 
						|
    return;
 | 
						|
  }
 | 
						|
 | 
						|
  LineNumber = Count / NumberInLine;
 | 
						|
  ByteNumber = Count % NumberInLine;
 | 
						|
  if (ByteNumber == 0) {
 | 
						|
    LineNumber -= 1;
 | 
						|
    ByteNumber  = NumberInLine;
 | 
						|
  }
 | 
						|
 | 
						|
  //
 | 
						|
  // Print each line
 | 
						|
  //
 | 
						|
  for (LineIndex = 0; LineIndex < LineNumber; LineIndex++) {
 | 
						|
 | 
						|
    //
 | 
						|
    // Break check
 | 
						|
    //
 | 
						|
    if (((LineIndex % EFI_DEBUGGER_LINE_NUMBER_IN_PAGE) == 0) &&
 | 
						|
        (LineIndex != 0)) {
 | 
						|
      if (SetPageBreak ()) {
 | 
						|
        break;
 | 
						|
      }
 | 
						|
    }
 | 
						|
 | 
						|
    EDBPrint (EDB_PRINT_ADDRESS_FORMAT, (UINTN)Address);
 | 
						|
    for (ByteIndex = 0; ByteIndex < NumberInLine; ByteIndex++) {
 | 
						|
      Address += EdbDisplayMemoryUnit (Address, Width);
 | 
						|
    }
 | 
						|
    EDBPrint (L"\n");
 | 
						|
  }
 | 
						|
 | 
						|
  //
 | 
						|
  // Break check
 | 
						|
  //
 | 
						|
  if (((LineIndex % EFI_DEBUGGER_LINE_NUMBER_IN_PAGE) == 0) &&
 | 
						|
      (LineIndex != 0)) {
 | 
						|
    if (SetPageBreak ()) {
 | 
						|
      return;
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  //
 | 
						|
  // Print last line
 | 
						|
  //
 | 
						|
  EDBPrint (EDB_PRINT_ADDRESS_FORMAT, (UINTN)Address);
 | 
						|
  for (ByteIndex = 0; ByteIndex < ByteNumber; ByteIndex++) {
 | 
						|
    Address += EdbDisplayMemoryUnit (Address, Width);
 | 
						|
  }
 | 
						|
 | 
						|
  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
 | 
						|
  )
 | 
						|
{
 | 
						|
  switch (Width) {
 | 
						|
  case EdbWidthUint8:
 | 
						|
    CopyMem ((VOID *)Address, Value, sizeof(UINT8));
 | 
						|
    break;
 | 
						|
  case EdbWidthUint16:
 | 
						|
    CopyMem ((VOID *)Address, Value, sizeof(UINT16));
 | 
						|
    break;
 | 
						|
  case EdbWidthUint32:
 | 
						|
    CopyMem ((VOID *)Address, Value, sizeof(UINT32));
 | 
						|
    break;
 | 
						|
  case EdbWidthUint64:
 | 
						|
    CopyMem ((VOID *)Address, Value, sizeof(UINT64));
 | 
						|
    break;
 | 
						|
  default:
 | 
						|
    break;
 | 
						|
  }
 | 
						|
 | 
						|
  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
 | 
						|
  )
 | 
						|
{
 | 
						|
  CHAR16       *CommandStr;
 | 
						|
  UINTN        MemAddress;
 | 
						|
  EFI_STATUS   Status;
 | 
						|
 | 
						|
  //
 | 
						|
  // Get Address
 | 
						|
  //
 | 
						|
  CommandStr = CommandArg;
 | 
						|
  if (CommandStr == NULL) {
 | 
						|
    EDBPrint (L"Memory: Address error!\n");
 | 
						|
    return EFI_INVALID_PARAMETER;
 | 
						|
  }
 | 
						|
  Status = Symboltoi (CommandStr, &MemAddress);
 | 
						|
  if (EFI_ERROR (Status)) {
 | 
						|
    if (Status == EFI_NOT_FOUND) {
 | 
						|
      MemAddress = Xtoi(CommandStr);
 | 
						|
    } else {
 | 
						|
      //
 | 
						|
      // Something wrong, let Symboltoi print error info.
 | 
						|
      //
 | 
						|
      EDBPrint (L"Command Argument error!\n");
 | 
						|
      return EFI_INVALID_PARAMETER;
 | 
						|
    }
 | 
						|
  }
 | 
						|
  *Address = MemAddress;
 | 
						|
 | 
						|
  //
 | 
						|
  // Get Count
 | 
						|
  //
 | 
						|
  CommandStr = StrGetNextTokenLine (L" ");
 | 
						|
  if (CommandStr == NULL) {
 | 
						|
    *Count = 1;
 | 
						|
  } else {
 | 
						|
    *Count = Xtoi(CommandStr);
 | 
						|
  }
 | 
						|
 | 
						|
  //
 | 
						|
  // 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
 | 
						|
  )
 | 
						|
{
 | 
						|
  CHAR16       *CommandStr;
 | 
						|
  UINTN        MemAddress;
 | 
						|
  EFI_STATUS   Status;
 | 
						|
 | 
						|
  //
 | 
						|
  // Get Address
 | 
						|
  //
 | 
						|
  CommandStr = CommandArg;
 | 
						|
  if (CommandStr == NULL) {
 | 
						|
    EDBPrint (L"Memory: Address error!\n");
 | 
						|
    return EFI_INVALID_PARAMETER;
 | 
						|
  }
 | 
						|
  Status = Symboltoi (CommandStr, &MemAddress);
 | 
						|
  if (EFI_ERROR (Status)) {
 | 
						|
    if (Status == EFI_NOT_FOUND) {
 | 
						|
      MemAddress = Xtoi(CommandStr);
 | 
						|
    } else {
 | 
						|
      //
 | 
						|
      // Something wrong, let Symboltoi print error info.
 | 
						|
      //
 | 
						|
      EDBPrint (L"Command Argument error!\n");
 | 
						|
      return EFI_INVALID_PARAMETER;
 | 
						|
    }
 | 
						|
  }
 | 
						|
  *Address = MemAddress;
 | 
						|
 | 
						|
  //
 | 
						|
  // Get Value
 | 
						|
  //
 | 
						|
  CommandStr = StrGetNextTokenLine (L" ");
 | 
						|
  if (CommandStr == NULL) {
 | 
						|
    EDBPrint (L"Memory: Value error!\n");
 | 
						|
    return EFI_INVALID_PARAMETER;
 | 
						|
  }
 | 
						|
  *Value = LXtoi(CommandStr);
 | 
						|
 | 
						|
  //
 | 
						|
  // 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
 | 
						|
  )
 | 
						|
{
 | 
						|
  EFI_STATUS Status;
 | 
						|
  UINTN      Address;
 | 
						|
  UINTN      Count;
 | 
						|
 | 
						|
  //
 | 
						|
  // Get memory address and count
 | 
						|
  //
 | 
						|
  Status = EdbGetMemoryAddressCount (CommandArg, &Address, &Count);
 | 
						|
  if (EFI_ERROR(Status)) {
 | 
						|
    return EFI_DEBUG_CONTINUE;
 | 
						|
  }
 | 
						|
 | 
						|
  //
 | 
						|
  // Display memory
 | 
						|
  //
 | 
						|
  EdbDisplayMemory (Address, Count, Width);
 | 
						|
 | 
						|
  //
 | 
						|
  // 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
 | 
						|
  )
 | 
						|
{
 | 
						|
  EFI_STATUS Status;
 | 
						|
  UINTN      Address;
 | 
						|
  UINT64     Value;
 | 
						|
 | 
						|
  //
 | 
						|
  // Get memory address and value
 | 
						|
  //
 | 
						|
  Status = EdbGetMemoryAddressValue (CommandArg, &Address, &Value);
 | 
						|
  if (EFI_ERROR(Status)) {
 | 
						|
    return EFI_DEBUG_CONTINUE;
 | 
						|
  }
 | 
						|
 | 
						|
  //
 | 
						|
  // Enter memory
 | 
						|
  //
 | 
						|
  EdbEnterMemory (Address, &Value, Width);
 | 
						|
 | 
						|
  //
 | 
						|
  // 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
 | 
						|
  )
 | 
						|
{
 | 
						|
  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint8);
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 | 
						|
  DebuggerCommand - DW.
 | 
						|
 | 
						|
  @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
 | 
						|
DebuggerMemoryDW (
 | 
						|
  IN     CHAR16                    *CommandArg,
 | 
						|
  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
 | 
						|
  IN     EFI_EXCEPTION_TYPE        ExceptionType,
 | 
						|
  IN OUT EFI_SYSTEM_CONTEXT        SystemContext
 | 
						|
  )
 | 
						|
{
 | 
						|
  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint16);
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 | 
						|
  DebuggerCommand - DD.
 | 
						|
 | 
						|
  @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
 | 
						|
DebuggerMemoryDD (
 | 
						|
  IN     CHAR16                    *CommandArg,
 | 
						|
  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
 | 
						|
  IN     EFI_EXCEPTION_TYPE        ExceptionType,
 | 
						|
  IN OUT EFI_SYSTEM_CONTEXT        SystemContext
 | 
						|
  )
 | 
						|
{
 | 
						|
  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint32);
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 | 
						|
  DebuggerCommand - DQ.
 | 
						|
 | 
						|
  @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
 | 
						|
DebuggerMemoryDQ (
 | 
						|
  IN     CHAR16                    *CommandArg,
 | 
						|
  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
 | 
						|
  IN     EFI_EXCEPTION_TYPE        ExceptionType,
 | 
						|
  IN OUT EFI_SYSTEM_CONTEXT        SystemContext
 | 
						|
  )
 | 
						|
{
 | 
						|
  return DebuggerMemoryDisplay (CommandArg, EdbWidthUint64);
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 | 
						|
  DebuggerCommand - EB.
 | 
						|
 | 
						|
  @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
 | 
						|
DebuggerMemoryEB (
 | 
						|
  IN     CHAR16                    *CommandArg,
 | 
						|
  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
 | 
						|
  IN     EFI_EXCEPTION_TYPE        ExceptionType,
 | 
						|
  IN OUT EFI_SYSTEM_CONTEXT        SystemContext
 | 
						|
  )
 | 
						|
{
 | 
						|
  return DebuggerMemoryEnter (CommandArg, EdbWidthUint8);
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 | 
						|
  DebuggerCommand - EW.
 | 
						|
 | 
						|
  @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
 | 
						|
DebuggerMemoryEW (
 | 
						|
  IN     CHAR16                    *CommandArg,
 | 
						|
  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
 | 
						|
  IN     EFI_EXCEPTION_TYPE        ExceptionType,
 | 
						|
  IN OUT EFI_SYSTEM_CONTEXT        SystemContext
 | 
						|
  )
 | 
						|
{
 | 
						|
  return DebuggerMemoryEnter (CommandArg, EdbWidthUint16);
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 | 
						|
  DebuggerCommand - ED.
 | 
						|
 | 
						|
  @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
 | 
						|
DebuggerMemoryED (
 | 
						|
  IN     CHAR16                    *CommandArg,
 | 
						|
  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
 | 
						|
  IN     EFI_EXCEPTION_TYPE        ExceptionType,
 | 
						|
  IN OUT EFI_SYSTEM_CONTEXT        SystemContext
 | 
						|
  )
 | 
						|
{
 | 
						|
  return DebuggerMemoryEnter (CommandArg, EdbWidthUint32);
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 | 
						|
  DebuggerCommand - EQ.
 | 
						|
 | 
						|
  @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
 | 
						|
DebuggerMemoryEQ (
 | 
						|
  IN     CHAR16                    *CommandArg,
 | 
						|
  IN     EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
 | 
						|
  IN     EFI_EXCEPTION_TYPE        ExceptionType,
 | 
						|
  IN OUT EFI_SYSTEM_CONTEXT        SystemContext
 | 
						|
  )
 | 
						|
{
 | 
						|
  return DebuggerMemoryEnter (CommandArg, EdbWidthUint64);
 | 
						|
}
 |