Acidanthera UEFI Development Kit based on EDK II edk2-stable202311
Go to file
mdkinney d3a24ff551 When SOURCE_DEBUG_ENABLE is set, a TimerLib is linked into the SEC Phase to support the Debug Agent and the TimerLib is mapped into read-only ROM/FLASH.
The TimerLib in the OvmfPkg uses a global variable called mPmba and depends on that global being updated.  This works for modules loaded into memory, but not  XIP modules in ROM/FLASH.

This patch removes the mPmba global variable and instead reads the PIIX4 Power Management Base Address from PCI configuration space when it is needed.  This patch also simplifies the initialization logic in the constructor and introduces #defines to eliminate hard coded values in the function implementations.  According to the PIIX4 documentation, the IO Space enable bit in the PCI Command Register does not have to be set for the Power Management Base Address to be decoded, so that one op has been removed from the constructor.

I have tested this patch with QEMU and verified that the UDK Debugger us functional when SOURCE_DEBUG_ENABLE is set.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>

I also tested it with RHEL-6.3 guest boot/shutdown, Fedora 18 Alpha XFCE
guest boot/shutdown, and Windows 8 Consumer Preview guest
boot/reboot/shutdown. (RHEL-6.3 host.) I didn't notice any adverse effects.

Tested-by: Laszlo Ersek <lersek@redhat.com>


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13783 6f19259b-4bc3-4df7-8a09-765794883524
2012-10-04 20:58:21 +00:00
AppPkg Update copyright format 2012-04-24 06:49:39 +00:00
ArmPkg ArmPlatformPkg/ArmPlatformStackLib: Introduced helper library to initialize stacks 2012-09-28 11:01:36 +00:00
ArmPlatformPkg ArmPlatformPkg/LcdPlatformLib.h: Updated HD mode settings to produce a 60Hz frame rate 2012-09-28 11:12:13 +00:00
BaseTools Roll back the changes for BaseTools 2012-06-25 02:24:12 +00:00
BeagleBoardPkg ArmPlatformPkg/ArmPlatformStackLib: Introduced helper library to initialize stacks 2012-09-28 11:01:36 +00:00
Conf Adding top-level Conf directory for next generation of EDK II build infrastructure tools. 2007-06-20 19:33:23 +00:00
CryptoPkg Fix PeiCryptLib build issue. 2012-08-23 03:31:00 +00:00
DuetPkg Fix comparisons of enumerated types which may cause warnings for some compilers. 2012-08-28 06:48:28 +00:00
EdkCompatibilityPkg Fix comparisons of enumerated types which may cause warnings for some compilers. 2012-08-28 06:48:28 +00:00
EdkShellBinPkg EdkShellBinPkg: Added ARM Binaries 2012-09-27 15:20:41 +00:00
EdkShellPkg EdkShellPkg: Added new patch to support EFI Shell project revision 61 2012-09-27 15:23:33 +00:00
EmbeddedPkg EmbeddedPkg: Introduced 'SerialPortExtLib.h' 2012-09-28 10:56:12 +00:00
EmulatorPkg EmulatorPkg/PlatformSmbiosDxe: Fix build issue with UNIXGCC 2012-08-28 21:21:57 +00:00
FatBinPkg FatBinPkg: Added ARM Binaries 2012-09-27 15:25:52 +00:00
IntelFrameworkModulePkg Reset system only when the pre-allocated memory is more than 1.5 of needed memory and boot mode is BOOT_WITH_DEFAULT_SETTING, or less than the needed memory. 2012-09-27 02:57:01 +00:00
IntelFrameworkPkg Update copyright format 2012-04-24 06:49:39 +00:00
MdeModulePkg MdeModulePkg:removes the unreachable ‘break’ instruction after a ‘return’ instruction in the switch(). 2012-09-29 02:44:33 +00:00
MdePkg Enable EFI_IFR_DEFAULT2 opcode in browser. 2012-09-27 11:19:56 +00:00
NetworkPkg Fix bugs in PXE driver when using option 43 for boot server list and boot menu prompt. 2012-08-24 08:25:42 +00:00
Nt32Pkg Change the type of NotifyHandle from EFI_HANDLE to VOID * for SimpleTextInEx protocol. 2012-07-30 03:50:42 +00:00
Omap35xxPkg EmbeddedPkg: Introduced 'SerialPortExtLib.h' 2012-09-28 10:56:12 +00:00
OptionRomPkg The Driver Binding Protocol Stop() function for the UndiRuntimeDxe is performing actions in the incorrect order. The call to UninstallMultipleProtocolInterfaces() removes all the protocols from the child handle, which means ChildHandleBuffer[Index] is no longer valid. After the call to UninstallMultipleProtocolInterfaces(), ChildHandleBuffer[Index] is used again in a call to CloseProtocol(). The handle is not valid, so CloseProtocol() returns an error and generates an ASSERT(). 2012-10-03 23:49:50 +00:00
OvmfPkg When SOURCE_DEBUG_ENABLE is set, a TimerLib is linked into the SEC Phase to support the Debug Agent and the TimerLib is mapped into read-only ROM/FLASH. 2012-10-04 20:58:21 +00:00
PcAtChipsetPkg Fix comparisons of enumerated types which may cause warnings for some compilers. 2012-08-28 06:48:28 +00:00
PerformancePkg Fixed build failed. 2012-05-31 08:35:48 +00:00
SecurityPkg Rename Trusted Hob to Measured FV hob and add Guided Hob layout structure 2012-09-28 00:57:02 +00:00
ShellBinPkg ShellBinPkg: Added ARM Binaries 2012-09-27 15:28:54 +00:00
ShellPkg Refine code to make it more safely. 2012-09-10 09:35:43 +00:00
SourceLevelDebugPkg This revision can only work with Intel(c) UDK Debugger Tool version 1.2 or greater. Detailed change log is as below: 2012-06-11 02:15:11 +00:00
StdLib StdLib/Include: Minor changes in preparation for Interactive I/O (TTY) functionality. 2012-09-25 22:01:58 +00:00
StdLibPrivateInternalFiles StdLib, StdLibPrivateInternalFiles: Clean up comments, Remove debugging code, Define MAX_OUTPUT, the Maximum number of bytes in a single terminal output operation. 2012-09-20 21:01:21 +00:00
UefiCpuPkg Save and disable CPU interrupt before programming MTRR settings, and restore the CPU interrupt after programming MTRR setting. 2012-09-27 03:04:31 +00:00
UnixPkg Change the type of NotifyHandle from EFI_HANDLE to VOID * for SimpleTextInEx protocol. 2012-07-30 03:50:42 +00:00
BuildNotes2.txt Update EDKII BuildNotes to say the default tool chain tag is VS2008 instead of VS2005 2011-12-14 06:15:48 +00:00
edksetup.bat Added VS2010 support in edksetup script. 2012-04-10 07:45:35 +00:00
edksetup.sh Correct copyright year 2011-02-16 12:21:31 +00:00