From nobody Thu Nov 14 16:48:15 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+45555+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1565697501; cv=none; d=zoho.com; s=zohoarc; b=WY1MGqWXbXLgqtADfeLEaT0Ltuh8JR8pIwj0XEobtnDoouslBtNYi00OikZJAhQl+GHunTjfp3yqNTKpRN9WM97i2NNTcLb4eFfBvBIHdBXp3ojTbOiOSYY1kcQEFWHl6J0/WJXbnbjqF9zpMoe6YwVAHEN51MFgULP5YVjYPRo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1565697501; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Id:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To:ARC-Authentication-Results; bh=+19/sUf2tU1aTjaMdNp+8Tf1VddqcavpX94lPn/doT8=; b=cFIZ+wJurs1XfBDzh5bPYauCKI754esOmY7QCoNWbHjVzNC1FMHP+2WOGR84ItCVOl7hAgRttAO1jUAvGvqxHi9ge1HbjfjcaFbVFB8GCO4McKNsjJebA+i/WKyEZ2ouUrfvQG6KdeWbl77U7uzcQeBRajf4p3x+jyfCL3q/Mms= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+45555+1787277+3901457@groups.io Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1565697501672812.3706883980049; Tue, 13 Aug 2019 04:58:21 -0700 (PDT) Return-Path: X-Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by groups.io with SMTP; Tue, 13 Aug 2019 04:58:20 -0700 Received-SPF: pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+45555+1787277+3901457@groups.io; helo=web01.groups.io; Received-SPF: None (esa6.hc3370-68.iphmx.com: no sender authenticity information available from domain of anthony.perard@citrix.com) identity=pra; client-ip=162.221.158.21; receiver=esa6.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="anthony.perard@citrix.com"; x-conformance=sidf_compatible Received-SPF: Pass (esa6.hc3370-68.iphmx.com: domain of anthony.perard@citrix.com designates 162.221.158.21 as permitted sender) identity=mailfrom; client-ip=162.221.158.21; receiver=esa6.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="anthony.perard@citrix.com"; x-conformance=sidf_compatible; x-record-type="v=spf1"; x-record-text="v=spf1 ip4:209.167.231.154 ip4:178.63.86.133 ip4:195.66.111.40/30 ip4:85.115.9.32/28 ip4:199.102.83.4 ip4:192.28.146.160 ip4:192.28.146.107 ip4:216.52.6.88 ip4:216.52.6.188 ip4:162.221.158.21 ip4:162.221.156.83 ~all" Received-SPF: None (esa6.hc3370-68.iphmx.com: no sender authenticity information available from domain of postmaster@mail.citrix.com) identity=helo; client-ip=162.221.158.21; receiver=esa6.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="postmaster@mail.citrix.com"; x-conformance=sidf_compatible IronPort-SDR: H6T5xgy/h6VB28fOoYPAT1wRPhfDBPKDEzOS6yThpMpwCUFvNBGf/cK5JyRTyGmIziuv4xBP7e 8t/nVqBoLA/L7b8KwachBcRoEzEh25ujRPNUVLNbadWhpDOYNDxlldexhbOCLeFfSOlUXIazPp 6Gm1KernZROmlVTJhWrcCNLoUrwDCABkwDSM0ZEFI6BDxY8ZRqLXDwwhTPmdTR6iVJwdXmWHBV p7A0ASTSiS3d9PtoZsr0RvuMQUrdc+kYgrbiWGRNdNbAWtZUf/Ec+j9a6IpdTmaF9nb9rkHrB8 FNo= X-SBRS: 2.7 X-MesageID: 4374842 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.158.21 X-Policy: $RELAYED X-IronPort-AV: E=Sophos;i="5.64,381,1559534400"; d="scan'208";a="4374842" From: "Anthony PERARD" To: CC: Laszlo Ersek , Jordan Justen , Julien Grall , , Ard Biesheuvel , Anthony PERARD Subject: [edk2-devel] [PATCH v5 19/35] OvmfPkg/XenPlatformPei: Setup HyperPages earlier Date: Tue, 13 Aug 2019 12:31:03 +0100 Message-ID: <20190813113119.14804-20-anthony.perard@citrix.com> In-Reply-To: <20190813113119.14804-1-anthony.perard@citrix.com> References: <20190813113119.14804-1-anthony.perard@citrix.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,anthony.perard@citrix.com Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1565697501; bh=+19/sUf2tU1aTjaMdNp+8Tf1VddqcavpX94lPn/doT8=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=neesQh8py+vaP2urC1/nXntrvDWDh12xUE1xbmzUDhYUmqaw1IdrPH8B9QXOog/JK4x bPlrj88mUeOgvJayeodFKUx93Oz1H3JAPRBMCcYixyF6BQtWZU+cUKg/GhINHIYK21AVq VR2EPcBB54lbYz6WI6BEVf5OEhux2Dt7wrA= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" We are going to need to make an hypercall in order to retreive the E820 table from the hypervisor before been able to setup the memory. Calling XenConnect earlier will allow to setup the XenHypercallLib earlier to allow to make hypercalls. While here, add some comments in XenConnect(). Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3D1689 Signed-off-by: Anthony PERARD Acked-by: Laszlo Ersek --- OvmfPkg/XenPlatformPei/Platform.h | 5 +++++ OvmfPkg/XenPlatformPei/Platform.c | 2 ++ OvmfPkg/XenPlatformPei/Xen.c | 23 ++++++++++++----------- 3 files changed, 19 insertions(+), 11 deletions(-) diff --git a/OvmfPkg/XenPlatformPei/Platform.h b/OvmfPkg/XenPlatformPei/Pla= tform.h index 925df31f88..4a80057bdc 100644 --- a/OvmfPkg/XenPlatformPei/Platform.h +++ b/OvmfPkg/XenPlatformPei/Platform.h @@ -79,6 +79,11 @@ InstallClearCacheCallback ( VOID ); =20 +EFI_STATUS +XenConnect ( + VOID + ); + EFI_STATUS InitializeXen ( VOID diff --git a/OvmfPkg/XenPlatformPei/Platform.c b/OvmfPkg/XenPlatformPei/Pla= tform.c index 5809eadb0b..6aaafc3ee9 100644 --- a/OvmfPkg/XenPlatformPei/Platform.c +++ b/OvmfPkg/XenPlatformPei/Platform.c @@ -416,6 +416,8 @@ InitializeXenPlatform ( CpuDeadLoop (); } =20 + XenConnect (); + BootModeInitialization (); AddressWidthInitialization (); =20 diff --git a/OvmfPkg/XenPlatformPei/Xen.c b/OvmfPkg/XenPlatformPei/Xen.c index 2105304c41..29b42b746c 100644 --- a/OvmfPkg/XenPlatformPei/Xen.c +++ b/OvmfPkg/XenPlatformPei/Xen.c @@ -72,14 +72,11 @@ XenGetE820Map ( /** Connects to the Hypervisor. =20 - @param XenLeaf CPUID index used to connect. - @return EFI_STATUS =20 **/ EFI_STATUS XenConnect ( - UINT32 XenLeaf ) { UINT32 Index; @@ -91,7 +88,13 @@ XenConnect ( UINT32 *PVHResetVectorData; RETURN_STATUS Status; =20 - AsmCpuid (XenLeaf + 2, &TransferPages, &TransferReg, NULL, NULL); + ASSERT (mXenLeaf !=3D 0); + + // + // Prepare HyperPages to be able to make hypercalls + // + + AsmCpuid (mXenLeaf + 2, &TransferPages, &TransferReg, NULL, NULL); mXenInfo.HyperPages =3D AllocatePages (TransferPages); if (!mXenInfo.HyperPages) { return EFI_OUT_OF_RESOURCES; @@ -103,7 +106,11 @@ XenConnect ( (Index << EFI_PAGE_SHIFT) + Index); } =20 - AsmCpuid (XenLeaf + 1, &XenVersion, NULL, NULL, NULL); + // + // Find out the Xen version + // + + AsmCpuid (mXenLeaf + 1, &XenVersion, NULL, NULL, NULL); DEBUG ((DEBUG_ERROR, "Detected Xen version %d.%d\n", XenVersion >> 16, XenVersion & 0xFFFF)); mXenInfo.VersionMajor =3D (UINT16)(XenVersion >> 16); @@ -262,12 +269,6 @@ InitializeXen ( { RETURN_STATUS PcdStatus; =20 - if (mXenLeaf =3D=3D 0) { - return EFI_NOT_FOUND; - } - - XenConnect (mXenLeaf); - // // Reserve away HVMLOADER reserved memory [0xFC000000,0xFD000000). // This needs to match HVMLOADER RESERVED_MEMBASE/RESERVED_MEMSIZE. --=20 Anthony PERARD -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#45555): https://edk2.groups.io/g/devel/message/45555 Mute This Topic: https://groups.io/mt/32851703/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-