Kvmtool is a virtual machine manager that can be used to launch
guest partitions. Kvmtool additionally supports emulation of
hardware like the RTC, CFI etc. essentially providing an
emulated platform for a Guest OS to run.
To boot a standards-based OS one would need UEFI. In this case
it is UEFI at EL1 or guest/virtual firmware.
Kvmtool has been enhanced to enable launching of KVM guests with
UEFI support e.g. CFI emulation has been added to store UEFI
variables, etc. These changes have been merged in the kvmtool
repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/will/kvmtool.git
This patch series:
- adds UEFI guest firmware support for the Kvmtool emulated
Arm platform.
- addresses the review feedback for the v2 series discussed
on the mailing list at:
https://edk2.groups.io/g/devel/message/59503
The changes for the v3 series can be seen at:
https://github.com/samimujawar/edk2/tree/299_kvmtool_plat_support_v3
Sami Mujawar (15):
PcAtChipsetPkg: Add MMIO Support to RTC driver
ArmVirtPkg: Add Kvmtool RTC Fdt Client Library
ArmPlatformPkg: Dynamic flash variable base
ArmVirtPkg: Add kvmtool platform driver
ArmVirtPkg: kvmtool platform memory map
ArmVirtPkg: Add Kvmtool NOR flash lib
ArmVirtPkg: Early serial port initialisation
MdeModulePkg: Fix constructor invocation ordering
ArmVirtPkg: GUID Hob for 16550 UART base address
ArmVirtPkg: 16550 UART Platform hook library
ArmVirtPkg: Add Kvmtool Platform Pei Lib
ArmVirtPkg: Support for kvmtool virtual platform
ArmVirtPkg: Package dependency for MC146818 RTC
ArmVirtPkg: Add kvmtool to package dictionary
Maintainer.txt: Add Kvmtool platform reviewer
ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashFvbDxe.c | 4 +-
ArmVirtPkg/ArmVirtKvmTool.dsc | 345 ++++++++++++++++++++
ArmVirtPkg/ArmVirtKvmTool.fdf | 259 +++++++++++++++
ArmVirtPkg/ArmVirtPkg.ci.yaml | 6 +-
ArmVirtPkg/ArmVirtPkg.dec | 2 +
ArmVirtPkg/Include/Guid/Early16550UartBaseAddress.h | 22 ++
ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c | 85 +++++
ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.inf | 47 +++
ArmVirtPkg/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.c | 138 ++++++++
ArmVirtPkg/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.inf | 36 ++
ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.c | 57 ++++
ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.inf | 39 +++
ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.uni | 14 +
ArmVirtPkg/Library/KvmtoolPlatformPeiLib/KvmtoolPlatformPeiLib.c | 78 +++++
ArmVirtPkg/Library/KvmtoolPlatformPeiLib/KvmtoolPlatformPeiLib.inf | 48 +++
ArmVirtPkg/Library/KvmtoolRtcFdtClientLib/KvmtoolRtcFdtClientLib.c | 255 +++++++++++++++
ArmVirtPkg/Library/KvmtoolRtcFdtClientLib/KvmtoolRtcFdtClientLib.inf | 42 +++
ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.c | 128 ++++++++
ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.inf | 42 +++
ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtool.c | 330 +++++++++++++++++++
ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtoolLib.inf | 49 +++
ArmVirtPkg/PrePi/PrePi.c | 10 +-
Maintainers.txt | 10 +
MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.c | 17 +
MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf | 3 +
PcAtChipsetPkg/PcAtChipsetPkg.dec | 16 +
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtc.c | 119 ++++++-
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtc.h | 31 ++
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtcEntry.c | 72 +++-
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf | 8 +
30 files changed, 2288 insertions(+), 24 deletions(-)
create mode 100644 ArmVirtPkg/ArmVirtKvmTool.dsc
create mode 100644 ArmVirtPkg/ArmVirtKvmTool.fdf
create mode 100644 ArmVirtPkg/Include/Guid/Early16550UartBaseAddress.h
create mode 100644 ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c
create mode 100644 ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.inf
create mode 100644 ArmVirtPkg/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.c
create mode 100644 ArmVirtPkg/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.inf
create mode 100644 ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.c
create mode 100644 ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.inf
create mode 100644 ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.uni
create mode 100644 ArmVirtPkg/Library/KvmtoolPlatformPeiLib/KvmtoolPlatformPeiLib.c
create mode 100644 ArmVirtPkg/Library/KvmtoolPlatformPeiLib/KvmtoolPlatformPeiLib.inf
create mode 100644 ArmVirtPkg/Library/KvmtoolRtcFdtClientLib/KvmtoolRtcFdtClientLib.c
create mode 100644 ArmVirtPkg/Library/KvmtoolRtcFdtClientLib/KvmtoolRtcFdtClientLib.inf
create mode 100644 ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.c
create mode 100644 ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.inf
create mode 100644 ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtool.c
create mode 100644 ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtoolLib.inf
--
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#61662): https://edk2.groups.io/g/devel/message/61662
Mute This Topic: https://groups.io/mt/75081471/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-