Acidanthera UEFI Development Kit based on EDK II edk2-stable202311
Go to file
Gary Lin da2369d21d OvmfPkg/PlatformBootManagerLib: Connect the Xen drivers before loading NvVars
When OVMF tried to load the file-based NvVars, it checked all the PCI
instances and connected the drivers to the mass storage device. However,
Xen registered its PCI device with a special class id (0xFF80), so
ConnectRecursivelyIfPciMassStorage() couldn't recognize it and skipped the
driver connecting for Xen PCI devices. In the end, the Xen block device
wasn't initialized until EfiBootManagerConnectAll() was called, and it's
already too late to load NvVars.

This commit connects the Xen drivers in ConnectRecursivelyIfPciMassStorage()
so that Xen can use the file-based NvVars.

v3:
* Introduce XenDetected() to cache the result of Xen detection instead
  of relying on PcdPciDisableBusEnumeration.

v2:
* Cosmetic changes

Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Gary Lin <glin@suse.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-02 13:34:28 -07:00
AppPkg AppPkg/.../Python: Clean up and document how to escape the -# option. 2016-01-06 01:00:19 +00:00
ArmPkg ArmPkg/PlatformBootManagerLib: implement new generic version 2016-05-12 13:56:50 +02:00
ArmPlatformPkg ArmPlatformPkg/PL031RealTimeClockLib: remove local copy of gRT pointer 2016-05-11 16:57:23 +02:00
ArmVirtPkg OvmfPkg, ArmVirtPkg: rename QemuNewBootOrderLib to QemuBootOrderLib 2016-05-25 12:25:28 +02:00
BaseTools BaseTools: Bash script fix for PosixLike/LzmaF86Compress 2016-06-02 13:10:17 +08:00
BeagleBoardPkg BeagleBoardPkg: Convert to build FatPkg from source 2016-04-07 20:45:39 +02:00
Conf EDK II: Add .gitignore 2014-10-14 16:08:15 +00:00
CorebootModulePkg CorebootModulePkg: Remove unused PCI non-enumeration drivers 2016-05-27 14:26:16 -07:00
CorebootPayloadPkg CorebootModulePkg/PciHostBridgeLib: Fix PCI 64bit memory BAR size issue 2016-05-27 14:28:37 -07:00
CryptoPkg CryptoPkg/SmmCryptLib: Enable AES support for SMM. 2016-05-16 10:49:21 +08:00
DuetPkg DuetPkg FSVariable: return error for empty str VariableName to GetVariable 2016-05-15 17:48:53 +08:00
EdkCompatibilityPkg EdkCompatibilityPkg: Fix a typo. 2016-04-15 13:33:43 +08:00
EdkShellBinPkg */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
EdkShellPkg */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
EmbeddedPkg EmbeddedPkg/Lan9118Dxe: Do not return uninitialised TxBuff 2016-05-12 10:01:17 +02:00
EmulatorPkg EmulatorPkg/EmuGopDxe: Use correct FROM_THIS macro for TextInEx 2016-05-16 18:25:17 -07:00
FatBinPkg FatBinPkg: Change to 2-clause BSD license 2016-04-22 00:55:21 -07:00
FatPkg FatPkg: Add Contributions.txt 2016-04-22 00:55:21 -07:00
IntelFrameworkModulePkg IntelFrameworkModulePkg: Remove unused PCD/Protocol 2016-04-13 14:54:49 +08:00
IntelFrameworkPkg IntelFrameworkPkg/FrameworkUefiLib: implement EfiEventGroupSignal 2016-03-23 12:05:45 +01:00
IntelFsp2Pkg IntelFsp2Pkg/Tools: Add FSP rebasing function into SplitFspBin tool 2016-06-01 17:26:11 -07:00
IntelFsp2WrapperPkg IntelFsp2WrapperPkg: Update gFspWrapperTokenSpaceGuid to gIntelFsp2WrapperTokenSpaceGuid. 2016-05-23 09:27:29 +08:00
IntelFspPkg IntelFspPkg: Add NOOPT target in IntelFspPkg.dsc 2016-01-21 02:14:43 +00:00
IntelFspWrapperPkg IntelFspWrapperPkg: PeiFspHobProcessLibSample: remove set but unused variables 2016-03-25 10:52:21 +01:00
MdeModulePkg MdeModulePkg NvmExpressDxe: Fix invalid queue size when creating IO queues 2016-06-02 16:40:17 +08:00
MdePkg MdePkg: Follow PI1.4a update SmmStartupThisAP() description 2016-06-02 16:34:59 +08:00
NetworkPkg NetworkPkg: Stop the timer before clean IP service. 2016-05-31 10:56:21 +08:00
Nt32Pkg Nt32Pkg/PlatformBootManagerLib: zero EFI_GRAPHICS_OUTPUT_BLT_PIXEL.Reserved 2016-05-27 11:22:17 +02:00
Omap35xxPkg Omap35xxPkg: drop CpuExceptionHandlerLib library class resolution 2016-03-17 09:15:11 +01:00
OptionRomPkg OptionRomPkg: Ax88772b: Fixing register access issue in Apple Eth Adapter 2016-03-31 08:53:51 +08:00
OvmfPkg OvmfPkg/PlatformBootManagerLib: Connect the Xen drivers before loading NvVars 2016-06-02 13:34:28 -07:00
PcAtChipsetPkg PcAtChipsetPkg/PcRtc: get century RTC address in entry point 2016-05-23 09:59:11 +08:00
PerformancePkg PerformancePkg Dp_App: Delete InitCumulativeData() 2016-05-03 12:42:44 +08:00
QuarkPlatformPkg QuarkPlatformPkg: Fix variable set but not used build errors 2016-05-13 11:34:32 -07:00
QuarkSocPkg QuarkSocPkg/SmmCpuFeaturesLib: Add SMRR PhysBase/PhysMask fields check 2016-05-19 10:04:34 -07:00
SecurityPkg SecurityPkg/DxeImageVerificationLib: Add DEBUG messages for image verification failures 2016-05-19 11:01:10 +08:00
ShellBinPkg ShellBinPkg: Ia32/X64 Shell binary update. 2016-05-06 15:43:36 +08:00
ShellPkg ShellPkg/App: Fix memory leak and save resources. 2016-05-25 10:16:46 +08:00
SourceLevelDebugPkg SourceLevelDebugPkg/SmmDebugAgent: mMailboxPointer is used before set 2016-04-06 09:13:18 +08:00
StdLib StdLib/BsdSocketLib: Fix minor memory leak by freeing rrecp on error return. 2016-02-17 16:11:29 -08:00
StdLibPrivateInternalFiles StdLib: Clarify and improve comments. 2016-01-06 00:31:42 +00:00
UefiCpuPkg UefiCpuPkg/CpuMpPei: Consume CpuExceptionHandlerLib 2016-06-01 15:37:01 +08:00
UnixPkg UnixPkg: Remove UnixPkg files (It is replaced by EmulatorPkg) 2013-07-29 21:09:55 +00:00
Vlv2DeviceRefCodePkg Vlv2TbltDevicePkg/Vlv2DeviceRefCodePkg: 2015-11-10 07:47:29 +00:00
Vlv2TbltDevicePkg Vlv2TbltDevicePkg: Convert to build FatPkg from source 2016-04-22 00:55:21 -07:00
.gitignore EDK II: Add .gitignore 2014-10-14 16:08:15 +00:00
BuildNotes2.txt BaseTools: Updated BuildNotes URLs 2016-03-25 09:46:44 +08:00
Edk2Setup.bat BaseTools: Update Edk2Setup.bat to support multiple workspaces 2015-10-08 09:29:36 +00:00
Maintainers.txt Maintainers.txt: Update maintainers for ShellBinPkg 2016-02-10 14:45:52 +00:00
edksetup.bat Update edksetup.bat to check EDK_TOOLS_PATH before set it. 2016-04-11 16:20:28 +08:00
edksetup.sh BaseTools: Update edksetup.sh to support multiple workspaces 2015-10-08 09:29:56 +00:00