mirror of https://github.com/acidanthera/audk.git
124 lines
6.8 KiB
Plaintext
124 lines
6.8 KiB
Plaintext
## @file SourceLevelDebugPkg.dec
|
|
# This package provides target side modules to support source level debug.
|
|
# The target side components includes the Debug Agent Library instance
|
|
# to communicate with host side modules, Debug Communication Library and
|
|
# instances to provide the communication I/O functions between Debug Agent
|
|
# and host, PeCoffExtraActionLib instance to report symbol path information,
|
|
# etc.
|
|
#
|
|
# Copyright (c) 2010 - 2018, 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 that 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.
|
|
#
|
|
##
|
|
|
|
[Defines]
|
|
DEC_SPECIFICATION = 0x00010005
|
|
PACKAGE_NAME = SourceLevelDebugPkg
|
|
PACKAGE_UNI_FILE = SourceLevelDebugPkg.uni
|
|
PACKAGE_GUID = DBF00C27-D8D7-443d-918B-4E85CDA1373B
|
|
PACKAGE_VERSION = 0.96
|
|
|
|
[Includes]
|
|
Include
|
|
|
|
[Includes.IA32]
|
|
Include/Ia32
|
|
|
|
[Includes.X64]
|
|
Include/Ia32
|
|
|
|
[LibraryClasses]
|
|
## @libraryclass Provides communication I/O functions between Debug Agent and HOST.
|
|
##
|
|
DebugCommunicationLib|Include/Library/DebugCommunicationLib.h
|
|
|
|
[Guids]
|
|
## MdeModule package token space guid
|
|
# Include/Guid/DebugAgentGuid.h
|
|
gEfiDebugAgentGuid = {0x865a5a9b, 0xb85d, 0x474c, { 0x84, 0x55, 0x65, 0xd1, 0xbe, 0x84, 0x4b, 0xe2 }}
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid = {0x865a5aab, 0xb85d, 0x474c, { 0x84, 0x55, 0x65, 0xd1, 0xbe, 0x84, 0x4b, 0xe2 }}
|
|
|
|
#
|
|
# [Error.gEfiSourceLevelDebugPkgTokenSpaceGuid]
|
|
# 0x80000001 | Invalid value provided.
|
|
#
|
|
|
|
[PcdsFixedAtBuild, PcdsPatchableInModule]
|
|
## The memory BAR of usb debug port, it may be different with the memory bar of ehci host controller.
|
|
# Note that the memory BAR address is only used before Pci bus resource allocation.
|
|
# @Prompt Configure usb debug port memory BAR.
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdUsbDebugPortMemorySpaceBase|0xd0000000|UINT32|0x00000001
|
|
|
|
## The memory BAR of ehci host controller, in which usb debug feature is enabled.
|
|
# Note that the memory BAR address is only used before Pci bus resource allocation.
|
|
# @Prompt Configure ehci host controller memory BAR.
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdUsbEhciMemorySpaceBase|0xd0000000|UINT32|0x00000002
|
|
|
|
## The pci address of ehci host controller, in which usb debug feature is enabled.
|
|
# The format of pci address is :<BR>
|
|
# -----------------------------------------------------------------------<BR>
|
|
# | Bits 28..31 | Bits 20..27 | Bits 15..19 | Bits 12..14 | Bits 00..11 |<BR>
|
|
# -----------------------------------------------------------------------<BR>
|
|
# | 0 | Bus | Device | Function | 0 |<BR>
|
|
# -----------------------------------------------------------------------<BR>
|
|
# For the value 0x000EF000, it means the pci address at bus 0x0, device 0x1D, function 0x7.
|
|
# @Prompt Configure ehci host controller pci address.
|
|
# @Expression 0x80000001 | (gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdUsbEhciPciAddress & 0xF0000FFF) == 0
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdUsbEhciPciAddress|0x000EF000|UINT32|0x00000003
|
|
|
|
## The mask of exception numbers whose handlers would be ignored and cannot be replaced or
|
|
# hooked by Debug Agent Library. Masking INT1/INT3 is invalid.
|
|
# @Prompt Configure exception numbers not to be hooked by Debug Agent.
|
|
# @Expression 0x80000001 | (gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdExceptionsIgnoredByDebugger & 0xA) == 0
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdExceptionsIgnoredByDebugger|0x00000000|UINT32|0x00000004
|
|
|
|
## The method to issue break point to Debug Agent Library when Loading/UnLoading image.<BR><BR>
|
|
# 1: Use I/O Port 84 to issue hardware break point<BR>
|
|
# 2: Use INT3 to issue software break point<BR>
|
|
# @Prompt Configure Loading/UnLoading image break method.
|
|
# @ValidRange 0x80000001 | 1 - 2
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x1|UINT8|0x00000005
|
|
|
|
## The data buffer size used by debug port in debug communication library instances.
|
|
# Its value is not suggested to be changed in platform DSC file.
|
|
# @Prompt Assign debug port buffer size.
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugPortHandleBufferSize|0x0|UINT16|0x00000006
|
|
|
|
## The memory BAR of xhci host controller, in which usb debug feature is enabled.
|
|
## Note that the memory BAR address is only used before Pci bus resource allocation.
|
|
# @Prompt Configure xhci host controller memory BAR.
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdUsbXhciMemorySpaceBase|0xD0000000|UINT64|0x00000007
|
|
|
|
## The pci address of xhci host controller, in which usb debug feature is enabled.
|
|
# The format of pci address is :<BR>
|
|
# -----------------------------------------------------------------------<BR>
|
|
# | Bits 28..31 | Bits 20..27 | Bits 15..19 | Bits 12..14 | Bits 00..11 |<BR>
|
|
# -----------------------------------------------------------------------<BR>
|
|
# | 0 | Bus | Device | Function | 0 |<BR>
|
|
# -----------------------------------------------------------------------<BR>
|
|
# For the value 0x000A0000, it means the pci address at bus 0x0, device 0x14, function 0x0.
|
|
# @Prompt Configure xhci host controller pci address.
|
|
# @Expression 0x80000001 | (gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdUsbXhciPciAddress & 0xF0000FFF) == 0
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdUsbXhciPciAddress|0x000A0000|UINT32|0x00000008
|
|
|
|
## Per XHCI spec, software shall impose a timeout between the detection of the Debug Host
|
|
## connection and the DbC Run transition to 1. This PCD specifies the timeout value in microsecond.
|
|
# @Prompt Configure debug device detection timeout value.
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdUsbXhciDebugDetectTimeout|3000000|UINT64|0x00000009
|
|
|
|
## Default revision of the debug agent transfer protocol.
|
|
# The upper 16 bits indicate the major revision and the lower 16 bits indicate the minor revision.
|
|
# For example, a value of 0x00000004 stands for revision 0.4.
|
|
# Debug packet compression and decompression is supported since revision 0.4.
|
|
# @Prompt Default revision of the debug agent transfer protocol.
|
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdTransferProtocolRevision|0x00000004|UINT32|0x0000000a
|
|
|
|
[UserExtensions.TianoCore."ExtraFiles"]
|
|
SourceLevelDebugPkgExtra.uni
|