Gerd Hoffmann
64ef0dd1d3
OvmfPkg/Microvm/fdt: add device tree support
...
Add fdt parser from EmbeddedPkg (FdtLib and FdtClientDxe) to MicrovmX64.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3689
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Philippe Mathieu-Daude <philmd@redhat.com >
2021-12-13 12:16:32 +00:00
Gerd Hoffmann
adf070ff56
OvmfPkg/Microvm: add PcdConfidentialComputingGuestAttr
...
Fixes build failure:
/home/kraxel/projects/edk2/OvmfPkg/PlatformPei/AmdSev.c: In function ‘AmdSevInitialize’:
/home/kraxel/projects/edk2/MdePkg/Include/Library/PcdLib.h:511:38: error: implicit declaration of function ‘_PCD_SET_MODE_64_S_PcdConfidentialComputingGuestAttr’ [-Werror=implicit-function-declaration]
511 | #define PcdSet64S(TokenName, Value) _PCD_SET_MODE_64_S_##TokenName ((Value))
| ^~~~~~~~~~~~~~~~~~~
/home/kraxel/projects/edk2/OvmfPkg/PlatformPei/AmdSev.c:410:17: note: in expansion of macro ‘PcdSet64S’
410 | PcdStatus = PcdSet64S (PcdConfidentialComputingGuestAttr, CCAttrAmdSevSnp);
| ^~~~~~~~~
cc1: all warnings being treated as errors
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2021-12-13 09:23:48 +00:00
lixianglai
2b20a34fd5
OvmfPkg-EmuVariableFvbRuntimeDxe: Support Access To Memory Above 4G
...
In FvbInitialize Function,
PcdFlashNvStorageVariableBase64 PcdFlashNvStorageFtwWorkingBase
PcdFlashNvStorageFtwSpareBase will not exceed 0x100000000,
Due to truncation and variable type limitations.
That leads to the NV variable cannot be saved to the memory above 4G.
Modify as follows:
1.Remove the forced type conversion of UINT32.
2.Use UINT64 type variables.
Signed-off-by: xianglai li <lixianglai@loongson.cn >
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2021-12-11 16:13:07 +00:00
Sebastien Boeuf
66bce05f6d
OvmfPkg: Generalize AcpiPlatformDxe
...
Don't make the package Qemu centric so that we can introduce some
alternative support for other VMMs not using the fw_cfg mechanism.
This patch is purely about renaming existing files with no functional
change.
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com >
2021-12-11 14:26:05 +00:00
Philippe Mathieu-Daude
0f1d7477c0
OvmfPkg: Remove unused print service driver (PrintDxe)
...
PrintDxe produces gEfiPrint2ProtocolGuid and gEfiPrint2SProtocolGuid,
and those are consumed by the following PrintLib instance:
MdeModulePkg/Library/DxePrintLibPrint2Protocol/DxePrintLibPrint2Protocol.inf
However, none of the OVMF DSC files contain such a PrintLib class
resolution, so none of the OVMF platforms need PrintDxe.
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org >
Cc: Jordan Justen <jordan.l.justen@intel.com >
Cc: Brijesh Singh <brijesh.singh@amd.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Min Xu <min.m.xu@intel.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
Suggested-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3744
Signed-off-by: Philippe Mathieu-Daude <philmd@redhat.com >
2021-12-10 10:02:08 +00:00
Gerd Hoffmann
55f47d2299
OvmfPkg/Microvm: wire up serial console, drop super-io
...
Microvm has no LPC bridge, so drop the PciSioSerialDxe driver.
Use SerialDxe instead, with ioport hardcoded to 0x3f8 aka com1 aka ttyS0.
With this tianocore boots to uefi shell prompt on the serial console.
Direct kernel boot can be used too.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
8456785986
OvmfPkg/Microvm: use PciHostBridgeLibNull
...
Shortcut PCI support for now (proper PCIe
support will be wired up later).
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
1d3e89f349
OvmfPkg/ResetSystemLib: add driver for microvm
...
Uses the generic event device to reset and poweroff.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
76602f45dc
OvmfPkg/Microvm: use XenTimerDxe (lapic timer)
...
Microvm has no acpi timer, so go use XenTimerDxe
which uses the local apic instead.
Set PcdFSBClock to 1000 MHz, which is the lapic
timer frequency used by KVM.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
27de86ae41
OvmfPkg/Microvm: use MdePkg/Library/SecPeiDxeTimerLibCpu
...
Microvm has no acpi timer, so use the generic lib instead.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
b9dd64b80e
OvmfPkg/Microvm: no emulated scsi
...
Microvm focus is virtio, so go drop support
for emulated scsi host adapters.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
6073bf6cd8
OvmfPkg/Microvm: no csm
...
Guests depending on BIOS will probably not work that well with microvm
due to legacy hardware being not available.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
06fa1f1931
OvmfPkg/Microvm: no sev
...
Microvm has no SEV support.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
0569c52b15
OvmfPkg/Microvm: no tpm
...
Microvm has no TPM support.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
60d55c4156
OvmfPkg/Microvm: no secure boot
...
Without SMM secure boot isn't actually secure, so drop it too.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
2a49c19b9e
OvmfPkg/Microvm: no smm
...
Microvm has no SMM support.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
4932f05a00
OvmfPkg/Microvm: rename output files, fix includes
...
Rename the firmware volume files (s/OVMF/MICROVM/).
Fix includes so they work with microvm config being in a subdirectory.
With this patch applied the build works.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00
Gerd Hoffmann
606340fba3
OvmfPkg/Microvm: copy OvmfPkgX64 files as-is
...
Create Microvm subdirectory. Copy OvmfPkgX64 .dsc and .fdf files
unmodified as starting point for MicrovmX64.
Changes come as separate patches, to simplify patch review and rebases.
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3599
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2021-10-05 10:55:39 +00:00