mirror of
				https://git.proxmox.com/git/mirror_edk2
				synced 2025-11-04 07:10:07 +00:00 
			
		
		
		
	OvmfPkg/XenPlatformPei: Reinit XenHypercallLib
The XenPlatformPei needs to make hypercalls, but the XenHypercallLib was initialised before the HyperPage was ready. Now that XenPlatformPei has initialised the HyperPage, reinitialise the XenHypercallLib. Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1689 Signed-off-by: Anthony PERARD <anthony.perard@citrix.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Message-Id: <20190813113119.14804-18-anthony.perard@citrix.com>
This commit is contained in:
		
							parent
							
								
									68f4599dfc
								
							
						
					
					
						commit
						80b619d5c4
					
				@ -26,6 +26,7 @@
 | 
			
		||||
#include <Library/ResourcePublicationLib.h>
 | 
			
		||||
#include <Library/MtrrLib.h>
 | 
			
		||||
#include <IndustryStandard/Xen/arch-x86/hvm/start_info.h>
 | 
			
		||||
#include <Library/XenHypercallLib.h>
 | 
			
		||||
 | 
			
		||||
#include "Platform.h"
 | 
			
		||||
#include "Xen.h"
 | 
			
		||||
@ -88,6 +89,7 @@ XenConnect (
 | 
			
		||||
  EFI_XEN_OVMF_INFO *Info;
 | 
			
		||||
  CHAR8 Sig[sizeof (Info->Signature) + 1];
 | 
			
		||||
  UINT32 *PVHResetVectorData;
 | 
			
		||||
  RETURN_STATUS Status;
 | 
			
		||||
 | 
			
		||||
  AsmCpuid (XenLeaf + 2, &TransferPages, &TransferReg, NULL, NULL);
 | 
			
		||||
  mXenInfo.HyperPages = AllocatePages (TransferPages);
 | 
			
		||||
@ -152,6 +154,13 @@ XenConnect (
 | 
			
		||||
    sizeof(mXenInfo)
 | 
			
		||||
    );
 | 
			
		||||
 | 
			
		||||
  //
 | 
			
		||||
  // Initialize the XenHypercall library, now that the XenInfo HOB is
 | 
			
		||||
  // available
 | 
			
		||||
  //
 | 
			
		||||
  Status = XenHypercallLibInit ();
 | 
			
		||||
  ASSERT_RETURN_ERROR (Status);
 | 
			
		||||
 | 
			
		||||
  return EFI_SUCCESS;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -59,6 +59,7 @@
 | 
			
		||||
  MtrrLib
 | 
			
		||||
  MemEncryptSevLib
 | 
			
		||||
  PcdLib
 | 
			
		||||
  XenHypercallLib
 | 
			
		||||
 | 
			
		||||
[Pcd]
 | 
			
		||||
  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvBase
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user