[edk2-devel] [PATCH v4 04/35] OvmfPkg: Introduce XenPlatformPei

Laszlo Ersek lersek at redhat.com
Tue Jul 30 09:21:36 UTC 2019


On 07/29/19 17:39, Anthony PERARD wrote:
> Introduce XenPlatformPei, a copy of OvmfPkg/PlatformPei without some
> of QEMU specific initialization, Xen does not support QemuFwCfg.
> 
> This new module will be adjusted to accommodate Xen PVH.
> 
> fw_cfg dependents that have been removed, which are dynamically skipped
> when running PlatformPei on Xen:
> - GetFirstNonAddress(): controlling the 64-bit PCI MMIO aperture via the
> (experimental) "opt/ovmf/X-PciMmio64Mb" file
> - GetFirstNonAddress(): honoring the hotplug DIMM area
> ("etc/reserved-memory-end") in the placement of the 64-bit PCI MMIO
> aperture
> - NoexecDxeInitialization() is removed, so PcdPropertiesTableEnable and
> PcdSetNxForStack are left constant FALSE (not set dynamically from
> fw_cfg "opt/ovmf/PcdXxxx")
> - MaxCpuCountInitialization(), PublishPeiMemory(): the max CPU count is
> not taken from the QemuFwCfgItemSmpCpuCount fw_cfg key;
> PcdCpuMaxLogicalProcessorNumber is used intact and
> PcdCpuApInitTimeOutInMicroSeconds is never changed or used.
> - InitializeXenPlatform(), S3Verification(): S3 is assumed disabled (not
> consulting "etc/system-states" via QemuFwCfgS3Enabled()).
> - InstallFeatureControlCallback(): the feature control MSR is not set
> from "etc/msr_feature_control"
> (also removed FeatureControl.c as there is nothing been executed)
> 
> Also removed:
> - SMRAM/TSEG-related low mem size adjusting (PcdSmmSmramRequire is
> assumed FALSE) in PublishPeiMemory(),
> - QemuInitializeRam() entirely,
> 
> Xen related changes:
> - Have removed the module variable mXen, as it should be always true.
> - Have the platform PEI initialization fails if Xen has not been
>   detected.
> 
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1689
> Signed-off-by: Anthony PERARD <anthony.perard at citrix.com>
> Reviewed-by: Laszlo Ersek <lersek at redhat.com>
> ---
> 
> Notes:
>     v4:
>       - replace the other EFI_D_ by DEBUG_.
>       - Update Maintainers.txt
>       - fix one trailing whitespace
>     
>     v3:
>       - fix coding style in new code
>         (use DEBUG_xxx, add ASSERT before CpuDeadLoop)
>       - rebased, SPDX
> 
>  OvmfPkg/OvmfXen.dsc                       |   2 +-
>  OvmfPkg/OvmfXen.fdf                       |   2 +-
>  OvmfPkg/XenPlatformPei/XenPlatformPei.inf |  96 +++++
>  OvmfPkg/XenPlatformPei/Cmos.h             |  52 +++
>  OvmfPkg/XenPlatformPei/Platform.h         | 108 ++++++
>  OvmfPkg/XenPlatformPei/Xen.h              |  39 ++
>  OvmfPkg/XenPlatformPei/AmdSev.c           |  64 ++++
>  OvmfPkg/XenPlatformPei/ClearCache.c       | 112 ++++++
>  OvmfPkg/XenPlatformPei/Cmos.c             |  60 +++
>  OvmfPkg/XenPlatformPei/Fv.c               |  76 ++++
>  OvmfPkg/XenPlatformPei/MemDetect.c        | 421 ++++++++++++++++++++
>  OvmfPkg/XenPlatformPei/Platform.c         | 444 ++++++++++++++++++++++
>  OvmfPkg/XenPlatformPei/Xen.c              | 219 +++++++++++
>  Maintainers.txt                           |   1 +
>  14 files changed, 1694 insertions(+), 2 deletions(-)
>  create mode 100644 OvmfPkg/XenPlatformPei/XenPlatformPei.inf
>  create mode 100644 OvmfPkg/XenPlatformPei/Cmos.h
>  create mode 100644 OvmfPkg/XenPlatformPei/Platform.h
>  create mode 100644 OvmfPkg/XenPlatformPei/Xen.h
>  create mode 100644 OvmfPkg/XenPlatformPei/AmdSev.c
>  create mode 100644 OvmfPkg/XenPlatformPei/ClearCache.c
>  create mode 100644 OvmfPkg/XenPlatformPei/Cmos.c
>  create mode 100644 OvmfPkg/XenPlatformPei/Fv.c
>  create mode 100644 OvmfPkg/XenPlatformPei/MemDetect.c
>  create mode 100644 OvmfPkg/XenPlatformPei/Platform.c
>  create mode 100644 OvmfPkg/XenPlatformPei/Xen.c

[...]

> diff --git a/Maintainers.txt b/Maintainers.txt
> index 34bdb275b4..42ec8d54af 100644
> --- a/Maintainers.txt
> +++ b/Maintainers.txt
> @@ -379,6 +379,7 @@ F: OvmfPkg/PlatformPei/Xen.*
>  F: OvmfPkg/SmbiosPlatformDxe/*Xen.c
>  F: OvmfPkg/XenBusDxe/
>  F: OvmfPkg/XenIoPciDxe/
> +F: OvmfPkg/XenPlatformPei/
>  F: OvmfPkg/XenPvBlkDxe/
>  F: OvmfPkg/XenResetVector/
>  R: Anthony Perard <anthony.perard at citrix.com>
> 

Reviewed-by: Laszlo Ersek <lersek at redhat.com>

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#44609): https://edk2.groups.io/g/devel/message/44609
Mute This Topic: https://groups.io/mt/32643841/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-




More information about the edk2-devel-archive mailing list