SourceLevelDebugPkg[all]  0.96
 All Data Structures Files Functions Variables Typedefs Macros Pages
TransferProtocol.h File Reference

Data Structures

struct  DEBUG_PACKET_HEADER
 
struct  DEBUG_DATA_RESPONSE_BREAK_CAUSE
 
struct  DEBUG_DATA_RESPONSE_ARCH_MODE
 
struct  DEBUG_DATA_BREAKPOINT_TYPE
 
struct  DEBUG_DATA_SET_HW_BREAKPOINT
 
struct  DEBUG_DATA_CLEAR_HW_BREAKPOINT
 
struct  DEBUG_DATA_SET_SW_BREAKPOINT
 
struct  DEBUG_DATA_RESPONSE_SET_SW_BREAKPOINT
 
struct  DEBUG_DATA_READ_MEMORY
 
struct  DEBUG_DATA_WRITE_MEMORY
 
struct  DEBUG_DATA_READ_IO
 
struct  DEBUG_DATA_RESPONSE_READ_IO
 
struct  DEBUG_DATA_WRITE_IO
 
struct  DEBUG_DATA_READ_REGISTER
 
struct  DEBUG_DATA_WRITE_REGISTER
 
struct  DEBUG_DATA_READ_MSR
 
struct  DEBUG_DATA_RESPONSE_READ_MSR
 
struct  DEBUG_DATA_WRITE_MSR
 
struct  DEBUG_DATA_RESPONSE_GET_REVISION
 
struct  DEBUG_DATA_RESPONSE_GET_EXCEPTION
 
struct  DEBUG_DATA_SET_DEBUG_SETTING
 
struct  DEBUG_DATA_SET_VIEWPOINT
 
struct  DEBUG_DATA_RESPONSE_GET_VIEWPOINT
 
struct  DEBUG_DATA_CPUID
 
struct  DEBUG_DATA_RESPONSE_CPUID
 
struct  DEBUG_DATA_SEARCH_SIGNATURE
 
struct  DEBUG_DATA_RESPONSE_SEARCH_SIGNATURE
 

Macros

#define DEBUG_AGENT_REVISION_03   ((0 << 16) | 03)
 
#define DEBUG_AGENT_REVISION_04   ((0 << 16) | 04)
 
#define DEBUG_AGENT_CAPABILITIES   0
 
#define DEBUG_STARTING_SYMBOL_ATTACH   (0xFA)
 
#define DEBUG_STARTING_SYMBOL_NORMAL   (0xFE)
 
#define DEBUG_STARTING_SYMBOL_COMPRESS   (0xFC)
 
#define DEBUG_COMMAND_REQUEST   (0 << 7)
 
#define DEBUG_COMMAND_RESPONSE   (1 << 7)
 
#define IS_REQUEST(x)   (((x)->Command & DEBUG_COMMAND_RESPONSE) == 0)
 
#define DEBUG_COMMAND_RESET   (DEBUG_COMMAND_REQUEST | 0x00)
 
#define DEBUG_COMMAND_GO   (DEBUG_COMMAND_REQUEST | 0x01)
 
#define DEBUG_COMMAND_BREAK_CAUSE   (DEBUG_COMMAND_REQUEST | 0x02)
 
#define DEBUG_COMMAND_SET_HW_BREAKPOINT   (DEBUG_COMMAND_REQUEST | 0x03)
 
#define DEBUG_COMMAND_CLEAR_HW_BREAKPOINT   (DEBUG_COMMAND_REQUEST | 0x04)
 
#define DEBUG_COMMAND_SINGLE_STEPPING   (DEBUG_COMMAND_REQUEST | 0x05)
 
#define DEBUG_COMMAND_SET_SW_BREAKPOINT   (DEBUG_COMMAND_REQUEST | 0x06)
 
#define DEBUG_COMMAND_READ_MEMORY   (DEBUG_COMMAND_REQUEST | 0x07)
 
#define DEBUG_COMMAND_WRITE_MEMORY   (DEBUG_COMMAND_REQUEST | 0x08)
 
#define DEBUG_COMMAND_READ_IO   (DEBUG_COMMAND_REQUEST | 0x09)
 
#define DEBUG_COMMAND_WRITE_IO   (DEBUG_COMMAND_REQUEST | 0x0A)
 
#define DEBUG_COMMAND_READ_REGISTER   (DEBUG_COMMAND_REQUEST | 0x0B)
 
#define DEBUG_COMMAND_WRITE_REGISTER   (DEBUG_COMMAND_REQUEST | 0x0C)
 
#define DEBUG_COMMAND_READ_ALL_REGISTERS   (DEBUG_COMMAND_REQUEST | 0x0D)
 
#define DEBUG_COMMAND_ARCH_MODE   (DEBUG_COMMAND_REQUEST | 0x0E)
 
#define DEBUG_COMMAND_READ_MSR   (DEBUG_COMMAND_REQUEST | 0x0F)
 
#define DEBUG_COMMAND_WRITE_MSR   (DEBUG_COMMAND_REQUEST | 0x10)
 
#define DEBUG_COMMAND_SET_DEBUG_SETTING   (DEBUG_COMMAND_REQUEST | 0x11)
 
#define DEBUG_COMMAND_GET_REVISION   (DEBUG_COMMAND_REQUEST | 0x12)
 
#define DEBUG_COMMAND_GET_EXCEPTION   (DEBUG_COMMAND_REQUEST | 0x13)
 
#define DEBUG_COMMAND_SET_VIEWPOINT   (DEBUG_COMMAND_REQUEST | 0x14)
 
#define DEBUG_COMMAND_GET_VIEWPOINT   (DEBUG_COMMAND_REQUEST | 0x15)
 
#define DEBUG_COMMAND_DETACH   (DEBUG_COMMAND_REQUEST | 0x16)
 
#define DEBUG_COMMAND_CPUID   (DEBUG_COMMAND_REQUEST | 0x17)
 
#define DEBUG_COMMAND_SEARCH_SIGNATURE   (DEBUG_COMMAND_REQUEST | 0x18)
 
#define DEBUG_COMMAND_HALT   (DEBUG_COMMAND_REQUEST | 0x19)
 
#define DEBUG_COMMAND_INIT_BREAK   (DEBUG_COMMAND_REQUEST | 0x3F)
 
#define DEBUG_COMMAND_BREAK_POINT   (DEBUG_COMMAND_REQUEST | 0x3E)
 
#define DEBUG_COMMAND_MEMORY_READY   (DEBUG_COMMAND_REQUEST | 0x3D)
 
#define DEBUG_COMMAND_PRINT_MESSAGE   (DEBUG_COMMAND_REQUEST | 0x3C)
 
#define DEBUG_COMMAND_ATTACH_BREAK   (DEBUG_COMMAND_REQUEST | 0x3B)
 
#define DEBUG_COMMAND_OK   (DEBUG_COMMAND_RESPONSE | 0x00)
 
#define DEBUG_COMMAND_RESEND   (DEBUG_COMMAND_RESPONSE | 0x01)
 
#define DEBUG_COMMAND_ABORT   (DEBUG_COMMAND_RESPONSE | 0x02)
 
#define DEBUG_COMMAND_IN_PROGRESS   (DEBUG_COMMAND_RESPONSE | 0x03)
 
#define DEBUG_COMMAND_CONTINUE   (DEBUG_COMMAND_RESPONSE | 0x04)
 
#define DEBUG_COMMAND_HALT_DEFERRED   (DEBUG_COMMAND_RESPONSE | 0x05)
 
#define DEBUG_COMMAND_HALT_PROCESSED   (DEBUG_COMMAND_RESPONSE | 0x06)
 
#define DEBUG_COMMAND_TIMEOUT   (DEBUG_COMMAND_RESPONSE | 0x07)
 
#define DEBUG_COMMAND_NOT_SUPPORTED   (DEBUG_COMMAND_RESPONSE | 0x0F)
 
#define DEBUG_DATA_UPPER_LIMIT   0xff
 
#define DEBUG_DATA_MAXIMUM_REAL_DATA   (DEBUG_DATA_UPPER_LIMIT - sizeof (DEBUG_PACKET_HEADER))
 
#define DEBUG_DATA_BREAK_CAUSE_UNKNOWN   0
 
#define DEBUG_DATA_BREAK_CAUSE_HW_BREAKPOINT   1
 
#define DEBUG_DATA_BREAK_CAUSE_STEPPING   2
 
#define DEBUG_DATA_BREAK_CAUSE_SW_BREAKPOINT   3
 
#define DEBUG_DATA_BREAK_CAUSE_USER_HALT   4
 
#define DEBUG_DATA_BREAK_CAUSE_IMAGE_LOAD   5
 
#define DEBUG_DATA_BREAK_CAUSE_IMAGE_UNLOAD   6
 
#define DEBUG_DATA_BREAK_CAUSE_SYSTEM_RESET   7
 
#define DEBUG_DATA_BREAK_CAUSE_EXCEPTION   8
 
#define DEBUG_DATA_BREAK_CAUSE_MEMORY_READY   9
 
#define DEBUG_DATA_BREAK_CPU_ARCH_IA16   0
 
#define DEBUG_DATA_BREAK_CPU_ARCH_IA32   1
 
#define DEBUG_DATA_BREAK_CPU_ARCH_X64   2
 
#define DEBUG_DATA_BREAKPOINT_MEMORY_ACCESS   (0x3)
 
#define DEBUG_DATA_BREAKPOINT_IO_ACCESS   (0x2)
 
#define DEBUG_DATA_BREAKPOINT_MEMORY_WRITE   (0x1)
 
#define DEBUG_DATA_BREAKPOINT_MEMORY_EXECUTE   (0x0)
 
#define DEBUG_DATA_BREAKPOINT_LENGTH_32   (0x3)
 
#define DEBUG_DATA_BREAKPOINT_LENGTH_64   (0x2)
 
#define DEBUG_DATA_BREAKPOINT_LENGTH_16   (0x1)
 
#define DEBUG_DATA_BREAKPOINT_LENGTH_8   (0x0)
 
#define DEBUG_AGENT_SETTING_SMM_ENTRY_BREAK   1
 
#define DEBUG_AGENT_SETTING_PRINT_ERROR_LEVEL   2
 
#define DEBUG_AGENT_SETTING_BOOT_SCRIPT_ENTRY_BREAK   3
 
#define DEBUG_AGENT_ERROR   BIT0
 
#define DEBUG_AGENT_WARNING   BIT1
 
#define DEBUG_AGENT_INFO   BIT2
 
#define DEBUG_AGENT_VERBOSE   BIT3
 

Detailed Description

Transfer protocol definitions used by debug agent and host. It is only intended to be used by Debug related module implementation.

Copyright (c) 2010 - 2017, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Macro Definition Documentation

#define DEBUG_AGENT_CAPABILITIES   0
#define DEBUG_AGENT_ERROR   BIT0
#define DEBUG_AGENT_INFO   BIT2
#define DEBUG_AGENT_REVISION_03   ((0 << 16) | 03)
#define DEBUG_AGENT_REVISION_04   ((0 << 16) | 04)
#define DEBUG_AGENT_SETTING_BOOT_SCRIPT_ENTRY_BREAK   3
#define DEBUG_AGENT_SETTING_PRINT_ERROR_LEVEL   2
#define DEBUG_AGENT_SETTING_SMM_ENTRY_BREAK   1
#define DEBUG_AGENT_VERBOSE   BIT3
#define DEBUG_AGENT_WARNING   BIT1
#define DEBUG_COMMAND_ABORT   (DEBUG_COMMAND_RESPONSE | 0x02)
#define DEBUG_COMMAND_ARCH_MODE   (DEBUG_COMMAND_REQUEST | 0x0E)
#define DEBUG_COMMAND_ATTACH_BREAK   (DEBUG_COMMAND_REQUEST | 0x3B)
#define DEBUG_COMMAND_BREAK_CAUSE   (DEBUG_COMMAND_REQUEST | 0x02)
#define DEBUG_COMMAND_BREAK_POINT   (DEBUG_COMMAND_REQUEST | 0x3E)
#define DEBUG_COMMAND_CLEAR_HW_BREAKPOINT   (DEBUG_COMMAND_REQUEST | 0x04)
#define DEBUG_COMMAND_CONTINUE   (DEBUG_COMMAND_RESPONSE | 0x04)
#define DEBUG_COMMAND_CPUID   (DEBUG_COMMAND_REQUEST | 0x17)
#define DEBUG_COMMAND_DETACH   (DEBUG_COMMAND_REQUEST | 0x16)
#define DEBUG_COMMAND_GET_EXCEPTION   (DEBUG_COMMAND_REQUEST | 0x13)
#define DEBUG_COMMAND_GET_REVISION   (DEBUG_COMMAND_REQUEST | 0x12)
#define DEBUG_COMMAND_GET_VIEWPOINT   (DEBUG_COMMAND_REQUEST | 0x15)
#define DEBUG_COMMAND_GO   (DEBUG_COMMAND_REQUEST | 0x01)
#define DEBUG_COMMAND_HALT   (DEBUG_COMMAND_REQUEST | 0x19)
#define DEBUG_COMMAND_HALT_DEFERRED   (DEBUG_COMMAND_RESPONSE | 0x05)
#define DEBUG_COMMAND_HALT_PROCESSED   (DEBUG_COMMAND_RESPONSE | 0x06)
#define DEBUG_COMMAND_IN_PROGRESS   (DEBUG_COMMAND_RESPONSE | 0x03)
#define DEBUG_COMMAND_INIT_BREAK   (DEBUG_COMMAND_REQUEST | 0x3F)
#define DEBUG_COMMAND_MEMORY_READY   (DEBUG_COMMAND_REQUEST | 0x3D)
#define DEBUG_COMMAND_NOT_SUPPORTED   (DEBUG_COMMAND_RESPONSE | 0x0F)
#define DEBUG_COMMAND_OK   (DEBUG_COMMAND_RESPONSE | 0x00)
#define DEBUG_COMMAND_PRINT_MESSAGE   (DEBUG_COMMAND_REQUEST | 0x3C)
#define DEBUG_COMMAND_READ_ALL_REGISTERS   (DEBUG_COMMAND_REQUEST | 0x0D)
#define DEBUG_COMMAND_READ_IO   (DEBUG_COMMAND_REQUEST | 0x09)
#define DEBUG_COMMAND_READ_MEMORY   (DEBUG_COMMAND_REQUEST | 0x07)
#define DEBUG_COMMAND_READ_MSR   (DEBUG_COMMAND_REQUEST | 0x0F)
#define DEBUG_COMMAND_READ_REGISTER   (DEBUG_COMMAND_REQUEST | 0x0B)
#define DEBUG_COMMAND_REQUEST   (0 << 7)
#define DEBUG_COMMAND_RESEND   (DEBUG_COMMAND_RESPONSE | 0x01)
#define DEBUG_COMMAND_RESET   (DEBUG_COMMAND_REQUEST | 0x00)
#define DEBUG_COMMAND_RESPONSE   (1 << 7)
#define DEBUG_COMMAND_SEARCH_SIGNATURE   (DEBUG_COMMAND_REQUEST | 0x18)
#define DEBUG_COMMAND_SET_DEBUG_SETTING   (DEBUG_COMMAND_REQUEST | 0x11)
#define DEBUG_COMMAND_SET_HW_BREAKPOINT   (DEBUG_COMMAND_REQUEST | 0x03)
#define DEBUG_COMMAND_SET_SW_BREAKPOINT   (DEBUG_COMMAND_REQUEST | 0x06)
#define DEBUG_COMMAND_SET_VIEWPOINT   (DEBUG_COMMAND_REQUEST | 0x14)
#define DEBUG_COMMAND_SINGLE_STEPPING   (DEBUG_COMMAND_REQUEST | 0x05)
#define DEBUG_COMMAND_TIMEOUT   (DEBUG_COMMAND_RESPONSE | 0x07)
#define DEBUG_COMMAND_WRITE_IO   (DEBUG_COMMAND_REQUEST | 0x0A)
#define DEBUG_COMMAND_WRITE_MEMORY   (DEBUG_COMMAND_REQUEST | 0x08)
#define DEBUG_COMMAND_WRITE_MSR   (DEBUG_COMMAND_REQUEST | 0x10)
#define DEBUG_COMMAND_WRITE_REGISTER   (DEBUG_COMMAND_REQUEST | 0x0C)
#define DEBUG_DATA_BREAK_CAUSE_EXCEPTION   8
#define DEBUG_DATA_BREAK_CAUSE_HW_BREAKPOINT   1
#define DEBUG_DATA_BREAK_CAUSE_IMAGE_LOAD   5
#define DEBUG_DATA_BREAK_CAUSE_IMAGE_UNLOAD   6
#define DEBUG_DATA_BREAK_CAUSE_MEMORY_READY   9
#define DEBUG_DATA_BREAK_CAUSE_STEPPING   2
#define DEBUG_DATA_BREAK_CAUSE_SW_BREAKPOINT   3
#define DEBUG_DATA_BREAK_CAUSE_SYSTEM_RESET   7
#define DEBUG_DATA_BREAK_CAUSE_UNKNOWN   0
#define DEBUG_DATA_BREAK_CAUSE_USER_HALT   4
#define DEBUG_DATA_BREAK_CPU_ARCH_IA16   0
#define DEBUG_DATA_BREAK_CPU_ARCH_IA32   1
#define DEBUG_DATA_BREAK_CPU_ARCH_X64   2
#define DEBUG_DATA_BREAKPOINT_IO_ACCESS   (0x2)
#define DEBUG_DATA_BREAKPOINT_LENGTH_16   (0x1)
#define DEBUG_DATA_BREAKPOINT_LENGTH_32   (0x3)
#define DEBUG_DATA_BREAKPOINT_LENGTH_64   (0x2)
#define DEBUG_DATA_BREAKPOINT_LENGTH_8   (0x0)
#define DEBUG_DATA_BREAKPOINT_MEMORY_ACCESS   (0x3)
#define DEBUG_DATA_BREAKPOINT_MEMORY_EXECUTE   (0x0)
#define DEBUG_DATA_BREAKPOINT_MEMORY_WRITE   (0x1)
#define DEBUG_DATA_MAXIMUM_REAL_DATA   (DEBUG_DATA_UPPER_LIMIT - sizeof (DEBUG_PACKET_HEADER))
#define DEBUG_DATA_UPPER_LIMIT   0xff
#define DEBUG_STARTING_SYMBOL_ATTACH   (0xFA)
#define DEBUG_STARTING_SYMBOL_COMPRESS   (0xFC)
#define DEBUG_STARTING_SYMBOL_NORMAL   (0xFE)
#define IS_REQUEST (   x)    (((x)->Command & DEBUG_COMMAND_RESPONSE) == 0)