diff --git a/Platforms/QemuQ35Pkg/QemuQ35Pkg.dsc b/Platforms/QemuQ35Pkg/QemuQ35Pkg.dsc index 9090cbe92..0ec48c1ac 100644 --- a/Platforms/QemuQ35Pkg/QemuQ35Pkg.dsc +++ b/Platforms/QemuQ35Pkg/QemuQ35Pkg.dsc @@ -742,7 +742,13 @@ # Bit 1 - Controls whether the DXE debugger is enabled. # Bit 2 - Controls whether the MM debugger is enabled. # Bit 3 - Disables the debuggers periodic polling for a requested break-in. + # if BLD_*_DXE_DBG_BRK=TRUE, the debugger will have an initial break in, but will break in, otherwise it only will + # on exceptions +!if $(DXE_DBG_BRK) == TRUE + DebuggerFeaturePkgTokenSpaceGuid.PcdDebugConfigFlags|0x3 +!else DebuggerFeaturePkgTokenSpaceGuid.PcdDebugConfigFlags|0x2 +!endif # Set the debugger timeout to wait forever. This only takes effect if Bit 0 of PcdDebugConfigFlags is set # to 1, which by default it is not. Using BLD_*_DXE_DBG_BRK=TRUE will set this to 1. @@ -1044,13 +1050,6 @@ QemuQ35Pkg/Library/ResetSystemLib/StandaloneMmResetSystemLib.inf NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - - ## Forcibly enables the debugger with a 30 second initial breakpoint. This can be set from the cmdline by passing - # BLD_*_DXE_DBG_BRK=TRUE. If this is false, the debugger will not have an initial break in, but will break in - # on exceptions - !if $(DXE_DBG_BRK) == TRUE - DebuggerFeaturePkgTokenSpaceGuid.PcdDebugConfigFlags|0x3 - !endif } MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf diff --git a/Platforms/QemuSbsaPkg/QemuSbsaPkg.dsc b/Platforms/QemuSbsaPkg/QemuSbsaPkg.dsc index 93420c2fe..ea426e346 100644 --- a/Platforms/QemuSbsaPkg/QemuSbsaPkg.dsc +++ b/Platforms/QemuSbsaPkg/QemuSbsaPkg.dsc @@ -802,8 +802,13 @@ # Bit 2 - Controls whether the MM debugger is enabled. # Bit 3 - Disables the debuggers periodic polling for a requested break-in. # For SBSA, we have to disable the periodic polling, because there is only one one serial port and the debug agent - # may eat console input if let poll on it - DebuggerFeaturePkgTokenSpaceGuid.PcdDebugConfigFlags|0x6 + # may eat console input if let poll on it. If BLD_*_DXE_DBG_BRK is set to TRUE, then the debugger will break in on + # initialization. Otherwise, the debugger will not break in on initialization. + !if $(DXE_DBG_BRK) == TRUE + DebuggerFeaturePkgTokenSpaceGuid.PcdDebugConfigFlags|0xB + !else + DebuggerFeaturePkgTokenSpaceGuid.PcdDebugConfigFlags|0xA + !endif # Set the debugger timeout to wait forever. This only takes effect if Bit 0 of PcdDebugConfigFlags is set # to 1, which by default it is not. Using BLD_*_DXE_DBG_BRK=TRUE will set this to 1. @@ -992,13 +997,6 @@ NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - - ## Forcibly enables the debugger with a 30 second initial breakpoint. This can be set from the cmdline by passing - # BLD_*_DXE_DBG_BRK=TRUE. If this is false, the debugger will not have an initial break in, but will break in - # on exceptions - !if $(DXE_DBG_BRK) == TRUE - DebuggerFeaturePkgTokenSpaceGuid.PcdDebugConfigFlags|0x7 - !endif } MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {