[edk2-devel] [PATCH v2 00/11] Kvmtool guest firmware support for Arm

Sami Mujawar posted 11 patches 3 years, 11 months ago
Failed in applying to current master (apply log)
There is a newer version of this series
ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.c                           |   65 +-
ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashFvbDxe.c                        |    4 +-
ArmVirtPkg/{ArmVirtQemuKernel.dsc => ArmVirtKvmTool.dsc}                   |  309 +++--
ArmVirtPkg/ArmVirtKvmTool.fdf                                              |  276 +++++
ArmVirtPkg/ArmVirtQemu.dsc                                                 |    8 +-
ArmVirtPkg/ArmVirtQemuKernel.dsc                                           |    8 +-
ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c                         |   93 ++
ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.inf                       |   47 +
ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.c           |  114 ++
ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.inf         |   42 +
ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtool.c                    |  265 +++++
ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtoolLib.inf               |   50 +
Maintainers.txt                                                            |    7 +
MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.inf                     |   50 +
MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.uni                     |   15 +
MdePkg/Library/BaseMemoryLibMmio/CompareMemWrapper.c                       |   62 +
MdePkg/Library/BaseMemoryLibMmio/CopyMem.c                                 |  149 +++
MdePkg/Library/BaseMemoryLibMmio/CopyMemWrapper.c                          |   59 +
MdePkg/Library/BaseMemoryLibMmio/IsZeroBufferWrapper.c                     |   50 +
MdePkg/Library/BaseMemoryLibMmio/MemLibGeneric.c                           |  304 +++++
MdePkg/Library/BaseMemoryLibMmio/MemLibGuid.c                              |  143 +++
MdePkg/Library/BaseMemoryLibMmio/MemLibInternals.h                         |  248 ++++
MdePkg/Library/BaseMemoryLibMmio/ScanMem16Wrapper.c                        |   63 +
MdePkg/Library/BaseMemoryLibMmio/ScanMem32Wrapper.c                        |   62 +
MdePkg/Library/BaseMemoryLibMmio/ScanMem64Wrapper.c                        |   63 +
MdePkg/Library/BaseMemoryLibMmio/ScanMem8Wrapper.c                         |   95 ++
MdePkg/Library/BaseMemoryLibMmio/SetMem.c                                  |   83 ++
MdePkg/Library/BaseMemoryLibMmio/SetMem16Wrapper.c                         |   60 +
MdePkg/Library/BaseMemoryLibMmio/SetMem32Wrapper.c                         |   60 +
MdePkg/Library/BaseMemoryLibMmio/SetMem64Wrapper.c                         |   60 +
MdePkg/Library/BaseMemoryLibMmio/SetMemWrapper.c                           |   87 ++
MdePkg/Library/BaseMemoryLibMmio/ZeroMemWrapper.c                          |   52 +
MdePkg/Library/PciLibNull/PciLibNull.c                                     | 1213 ++++++++++++++++++++
MdePkg/Library/PciLibNull/PciLibNull.inf                                   |   25 +
PcAtChipsetPkg/PcAtChipsetPkg.dec                                          |    8 +
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtc.c                         |  117 +-
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtc.h                         |   31 +
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtcEntry.c                    |  130 ++-
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf |    8 +
39 files changed, 4326 insertions(+), 259 deletions(-)
copy ArmVirtPkg/{ArmVirtQemuKernel.dsc => ArmVirtKvmTool.dsc} (59%)
create mode 100644 ArmVirtPkg/ArmVirtKvmTool.fdf
create mode 100644 ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c
create mode 100644 ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.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
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.inf
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.uni
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/CompareMemWrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/CopyMem.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/CopyMemWrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/IsZeroBufferWrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/MemLibGeneric.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/MemLibGuid.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/MemLibInternals.h
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem16Wrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem32Wrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem64Wrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem8Wrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem16Wrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem32Wrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem64Wrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMemWrapper.c
create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ZeroMemWrapper.c
create mode 100644 MdePkg/Library/PciLibNull/PciLibNull.c
create mode 100644 MdePkg/Library/PciLibNull/PciLibNull.inf
[edk2-devel] [PATCH v2 00/11] Kvmtool guest firmware support for Arm
Posted by Sami Mujawar 3 years, 11 months ago
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 v1 series discussed
    on the mailing list at:
    https://edk2.groups.io/g/devel/topic/30915280#30694

The changes for the v2 series can be seen at:
https://github.com/samimujawar/edk2/tree/299_kvmtool_plat_support_v2

Sami Mujawar (11):
  PcAtChipsetPkg: Add MMIO Support to RTC driver
  MdePkg: Add NULL implementation for PCILib
  MdePkg: Base Memory Lib instance using MMIO
  ArmPlatformPkg: Use MMIO to read device memory
  ArmPlatformPkg: Dynamic flash variable base
  ArmVirtPkg: Add kvmtool platform driver
  ArmVirtPkg: kvmtool platform memory map
  ArmVirtPkg: Add Kvmtool NOR flash lib
  ArmVirtPkg: Support for kvmtool emulated platform
  ArmVirtPkg: Link NorFlashDxe with BaseMemoryLibMmio
  Maintainer.txt: Add Kvmtool emulated plat maintainer

 ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.c                           |   65 +-
 ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashFvbDxe.c                        |    4 +-
 ArmVirtPkg/{ArmVirtQemuKernel.dsc => ArmVirtKvmTool.dsc}                   |  309 +++--
 ArmVirtPkg/ArmVirtKvmTool.fdf                                              |  276 +++++
 ArmVirtPkg/ArmVirtQemu.dsc                                                 |    8 +-
 ArmVirtPkg/ArmVirtQemuKernel.dsc                                           |    8 +-
 ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c                         |   93 ++
 ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.inf                       |   47 +
 ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.c           |  114 ++
 ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.inf         |   42 +
 ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtool.c                    |  265 +++++
 ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtoolLib.inf               |   50 +
 Maintainers.txt                                                            |    7 +
 MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.inf                     |   50 +
 MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.uni                     |   15 +
 MdePkg/Library/BaseMemoryLibMmio/CompareMemWrapper.c                       |   62 +
 MdePkg/Library/BaseMemoryLibMmio/CopyMem.c                                 |  149 +++
 MdePkg/Library/BaseMemoryLibMmio/CopyMemWrapper.c                          |   59 +
 MdePkg/Library/BaseMemoryLibMmio/IsZeroBufferWrapper.c                     |   50 +
 MdePkg/Library/BaseMemoryLibMmio/MemLibGeneric.c                           |  304 +++++
 MdePkg/Library/BaseMemoryLibMmio/MemLibGuid.c                              |  143 +++
 MdePkg/Library/BaseMemoryLibMmio/MemLibInternals.h                         |  248 ++++
 MdePkg/Library/BaseMemoryLibMmio/ScanMem16Wrapper.c                        |   63 +
 MdePkg/Library/BaseMemoryLibMmio/ScanMem32Wrapper.c                        |   62 +
 MdePkg/Library/BaseMemoryLibMmio/ScanMem64Wrapper.c                        |   63 +
 MdePkg/Library/BaseMemoryLibMmio/ScanMem8Wrapper.c                         |   95 ++
 MdePkg/Library/BaseMemoryLibMmio/SetMem.c                                  |   83 ++
 MdePkg/Library/BaseMemoryLibMmio/SetMem16Wrapper.c                         |   60 +
 MdePkg/Library/BaseMemoryLibMmio/SetMem32Wrapper.c                         |   60 +
 MdePkg/Library/BaseMemoryLibMmio/SetMem64Wrapper.c                         |   60 +
 MdePkg/Library/BaseMemoryLibMmio/SetMemWrapper.c                           |   87 ++
 MdePkg/Library/BaseMemoryLibMmio/ZeroMemWrapper.c                          |   52 +
 MdePkg/Library/PciLibNull/PciLibNull.c                                     | 1213 ++++++++++++++++++++
 MdePkg/Library/PciLibNull/PciLibNull.inf                                   |   25 +
 PcAtChipsetPkg/PcAtChipsetPkg.dec                                          |    8 +
 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtc.c                         |  117 +-
 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtc.h                         |   31 +
 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtcEntry.c                    |  130 ++-
 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf |    8 +
 39 files changed, 4326 insertions(+), 259 deletions(-)
 copy ArmVirtPkg/{ArmVirtQemuKernel.dsc => ArmVirtKvmTool.dsc} (59%)
 create mode 100644 ArmVirtPkg/ArmVirtKvmTool.fdf
 create mode 100644 ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c
 create mode 100644 ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.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
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.inf
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.uni
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/CompareMemWrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/CopyMem.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/CopyMemWrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/IsZeroBufferWrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/MemLibGeneric.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/MemLibGuid.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/MemLibInternals.h
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem16Wrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem32Wrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem64Wrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem8Wrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem16Wrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem32Wrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem64Wrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMemWrapper.c
 create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ZeroMemWrapper.c
 create mode 100644 MdePkg/Library/PciLibNull/PciLibNull.c
 create mode 100644 MdePkg/Library/PciLibNull/PciLibNull.inf

-- 
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'


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

View/Reply Online (#59503): https://edk2.groups.io/g/devel/message/59503
Mute This Topic: https://groups.io/mt/74200861/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-