* [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool
@ 2021-06-15 15:21 PierreGondois
2021-06-15 15:21 ` [PATCH RESEND v1 1/2] ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg PierreGondois
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: PierreGondois @ 2021-06-15 15:21 UTC (permalink / raw)
To: Laszlo Ersek, Ard Biesheuvel, Sami Mujawar, devel; +Cc: Leif Lindholm
From: Pierre Gondois <Pierre.Gondois@arm.com>
PCIe support has been added to the Kvmtool virtual machine
manager. Therefore, add a PciHostBridgeUtilityLib and enable
PCIe support for Kvmtool firmware.
The patches were re-send as the devel@edk2.groups.io was not included.
The patches can be seen at: https://github.com/PierreARM/edk2/tree/1413_Enable_ArmVirt_Pci_v1
The results of the CI can be seen at: https://github.com/tianocore/edk2/pull/1718
Sami Mujawar (2):
ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg
ArmVirtPkg: Enable PCIe support for Kvmtool
ArmVirtPkg/ArmVirtKvmTool.dsc | 35 ++-
ArmVirtPkg/ArmVirtKvmTool.fdf | 11 +-
.../ArmVirtPciHostBridgeUtilityLib.c | 219 ++++++++++++++++++
.../ArmVirtPciHostBridgeUtilityLib.inf | 39 ++++
4 files changed, 301 insertions(+), 3 deletions(-)
create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c
create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf
--
2.17.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH RESEND v1 1/2] ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg
2021-06-15 15:21 [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool PierreGondois
@ 2021-06-15 15:21 ` PierreGondois
2021-06-15 15:21 ` [PATCH RESEND v1 2/2] ArmVirtPkg: Enable PCIe support for Kvmtool PierreGondois
` (2 subsequent siblings)
3 siblings, 0 replies; 8+ messages in thread
From: PierreGondois @ 2021-06-15 15:21 UTC (permalink / raw)
To: Laszlo Ersek, Ard Biesheuvel, Sami Mujawar, devel; +Cc: Leif Lindholm
From: Sami Mujawar <sami.mujawar@arm.com>
PCIe support has been added to Kvmtool Virtual Machine Manager.
The PCI host bridge utility lib is used to retrieve information
about the Root Bridges in a platform.
Therefore, add an instance of PciHostBridgeUtilityLib as this is
required to enable PCIe support for Kvmtool firmware.
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com>
---
.../ArmVirtPciHostBridgeUtilityLib.c | 218 ++++++++++++++++++
.../ArmVirtPciHostBridgeUtilityLib.inf | 39 ++++
2 files changed, 257 insertions(+)
create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c
create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf
diff --git a/ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c b/ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c
new file mode 100644
index 000000000000..90962caffd04
--- /dev/null
+++ b/ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c
@@ -0,0 +1,218 @@
+/** @file
+ PCI Host Bridge utility functions for ArmVirt.
+
+ Copyright (c) 2021, Arm Limited. All rights reserved.<BR>
+
+ SPDX-License-Identifier: BSD-2-Clause-Patent
+
+**/
+
+#include <IndustryStandard/Acpi10.h>
+#include <IndustryStandard/Pci.h>
+#include <Library/BaseMemoryLib.h>
+#include <Library/DebugLib.h>
+#include <Library/DevicePathLib.h>
+#include <Library/MemoryAllocationLib.h>
+#include <Library/PciHostBridgeLib.h>
+#include <Library/PciHostBridgeUtilityLib.h>
+#include <Library/PciLib.h>
+
+#pragma pack(1)
+typedef struct {
+ ACPI_HID_DEVICE_PATH AcpiDevicePath;
+ EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
+} EFI_PCI_ROOT_BRIDGE_DEVICE_PATH;
+#pragma pack ()
+
+GLOBAL_REMOVE_IF_UNREFERENCED
+CHAR16 *mPciHostBridgeAcpiAddressSpaceTypeStr[] = {
+ L"Mem",
+ L"I/O",
+ L"Bus"
+};
+
+STATIC CONST EFI_PCI_ROOT_BRIDGE_DEVICE_PATH mEfiPciRootBridgeDevicePath = {
+ {
+ {
+ ACPI_DEVICE_PATH,
+ ACPI_DP,
+ {
+ (UINT8) (sizeof (ACPI_HID_DEVICE_PATH)),
+ (UINT8) ((sizeof (ACPI_HID_DEVICE_PATH)) >> 8)
+ }
+ },
+ EISA_PNP_ID (0x0A03), // HID
+ 0 // UID
+ },
+
+ {
+ END_DEVICE_PATH_TYPE,
+ END_ENTIRE_DEVICE_PATH_SUBTYPE,
+ {
+ END_DEVICE_PATH_LENGTH,
+ 0
+ }
+ }
+};
+
+
+GLOBAL_REMOVE_IF_UNREFERENCED
+CHAR16 *mPciHostBridgeLibAcpiAddressSpaceTypeStr[] = {
+ L"Mem", L"I/O", L"Bus"
+};
+
+STATIC PCI_ROOT_BRIDGE mRootBridge;
+
+/**
+ Utility function to return all the root bridge instances in an array.
+
+ @param [out] Count The number of root bridge instances.
+ @param [in] Attributes Initial attributes.
+ @param [in] AllocationAttributes Allocation attributes.
+ @param [in] DmaAbove4G DMA above 4GB memory.
+ @param [in] NoExtendedConfigSpace No Extended Config Space.
+ @param [in] BusMin Minimum Bus number, inclusive.
+ @param [in] BusMax Maximum Bus number, inclusive.
+ @param [in] Io IO aperture.
+ @param [in] Mem MMIO aperture.
+ @param [in] MemAbove4G MMIO aperture above 4G.
+ @param [in] PMem Prefetchable MMIO aperture.
+ @param [in] PMemAbove4G Prefetchable MMIO aperture above 4G.
+
+ @return All the root bridge instances in an array.
+**/
+PCI_ROOT_BRIDGE *
+EFIAPI
+PciHostBridgeUtilityGetRootBridges (
+ OUT UINTN *Count,
+ IN UINT64 Attributes,
+ IN UINT64 AllocationAttributes,
+ IN BOOLEAN DmaAbove4G,
+ IN BOOLEAN NoExtendedConfigSpace,
+ IN UINTN BusMin,
+ IN UINTN BusMax,
+ IN PCI_ROOT_BRIDGE_APERTURE *Io,
+ IN PCI_ROOT_BRIDGE_APERTURE *Mem,
+ IN PCI_ROOT_BRIDGE_APERTURE *MemAbove4G,
+ IN PCI_ROOT_BRIDGE_APERTURE *PMem,
+ IN PCI_ROOT_BRIDGE_APERTURE *PMemAbove4G
+ )
+{
+ if ((Count == NULL) ||
+ (Io == NULL) ||
+ (Mem == NULL) ||
+ (MemAbove4G == NULL) ||
+ (PMem == NULL) ||
+ (PMemAbove4G == NULL)) {
+ return NULL;
+ }
+
+
+ *Count = 1;
+
+ mRootBridge.Segment = 0;
+ mRootBridge.Supports = Attributes;
+ mRootBridge.Attributes = Attributes;
+
+ mRootBridge.DmaAbove4G = DmaAbove4G;
+ mRootBridge.NoExtendedConfigSpace = NoExtendedConfigSpace;
+ mRootBridge.ResourceAssigned = FALSE;
+
+ mRootBridge.AllocationAttributes = AllocationAttributes;
+
+ mRootBridge.Bus.Base = BusMin;
+ mRootBridge.Bus.Limit = BusMax;
+ mRootBridge.Io.Base = Io->Base;
+ mRootBridge.Io.Limit = Io->Limit;
+ mRootBridge.Mem.Base = Mem->Base;
+ mRootBridge.Mem.Limit = Mem->Limit;
+ mRootBridge.MemAbove4G.Base = MemAbove4G->Base;
+ mRootBridge.MemAbove4G.Limit = MemAbove4G->Limit;
+ mRootBridge.PMem.Base = PMem->Base;
+ mRootBridge.PMem.Limit = PMem->Limit;
+ mRootBridge.PMemAbove4G.Base = PMemAbove4G->Base;
+ mRootBridge.PMemAbove4G.Limit = PMemAbove4G->Limit;
+
+ mRootBridge.DevicePath =
+ (EFI_DEVICE_PATH_PROTOCOL*)&mEfiPciRootBridgeDevicePath;
+
+ return &mRootBridge;
+}
+
+/**
+ Utility function to free root bridge instances array from
+ PciHostBridgeUtilityGetRootBridges().
+
+ @param[in] Bridges The root bridge instances array.
+ @param[in] Count The count of the array.
+**/
+VOID
+EFIAPI
+PciHostBridgeUtilityFreeRootBridges (
+ IN PCI_ROOT_BRIDGE *Bridges,
+ IN UINTN Count
+ )
+{
+ // Nothing to do here.
+}
+
+/**
+ Utility function to inform the platform that the resource conflict happens.
+
+ @param[in] Configuration Pointer to PCI I/O and PCI memory resource
+ descriptors. The Configuration contains the
+ resources for all the root bridges. The resource
+ for each root bridge is terminated with END
+ descriptor and an additional END is appended
+ indicating the end of the entire resources. The
+ resource descriptor field values follow the
+ description in
+ EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL
+ .SubmitResources().
+**/
+VOID
+EFIAPI
+PciHostBridgeUtilityResourceConflict (
+ IN VOID *Configuration
+ )
+{
+ EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *Descriptor;
+ UINTN RootBridgeIndex;
+ DEBUG ((DEBUG_ERROR, "PciHostBridge: Resource conflict happens!\n"));
+
+ RootBridgeIndex = 0;
+ Descriptor = (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR*)Configuration;
+ while (Descriptor->Desc == ACPI_ADDRESS_SPACE_DESCRIPTOR) {
+ DEBUG ((DEBUG_ERROR, "RootBridge[%d]:\n", RootBridgeIndex++));
+ for (; Descriptor->Desc == ACPI_ADDRESS_SPACE_DESCRIPTOR; Descriptor++) {
+ ASSERT (Descriptor->ResType <
+ ARRAY_SIZE (mPciHostBridgeAcpiAddressSpaceTypeStr)
+ );
+ DEBUG ((
+ DEBUG_ERROR,
+ " %s: Length/Alignment = 0x%lx / 0x%lx\n",
+ mPciHostBridgeAcpiAddressSpaceTypeStr[Descriptor->ResType],
+ Descriptor->AddrLen,
+ Descriptor->AddrRangeMax
+ ));
+ if (Descriptor->ResType == ACPI_ADDRESS_SPACE_TYPE_MEM) {
+ DEBUG ((
+ DEBUG_ERROR,
+ " Granularity/SpecificFlag = %ld / %02x%s\n",
+ Descriptor->AddrSpaceGranularity,
+ Descriptor->SpecificFlag,
+ ((Descriptor->SpecificFlag &
+ EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_CACHEABLE_PREFETCHABLE
+ ) != 0) ? L" (Prefetchable)" : L""
+ ));
+ }
+ }
+ //
+ // Skip the END descriptor for root bridge
+ //
+ ASSERT (Descriptor->Desc == ACPI_END_TAG_DESCRIPTOR);
+ Descriptor = (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR*)(
+ (EFI_ACPI_END_TAG_DESCRIPTOR*)Descriptor + 1
+ );
+ }
+}
diff --git a/ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf b/ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf
new file mode 100644
index 000000000000..80fdd2b1e55e
--- /dev/null
+++ b/ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf
@@ -0,0 +1,39 @@
+## @file
+# PciHostBridgeLib utility functions for ArmVirt.
+#
+# Copyright (c) 2021, Arm Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+#
+##
+
+[Defines]
+ INF_VERSION = 0x0001001B
+ BASE_NAME = ArmVirtPciHostBridgeUtilityLib
+ FILE_GUID = 22A8844E-2AE7-4BF1-91FA-6EFDE3FE540C
+ MODULE_TYPE = DXE_DRIVER
+ VERSION_STRING = 1.0
+ LIBRARY_CLASS = PciHostBridgeUtilityLib
+
+#
+# The following information is for reference only and not required by the build
+# tools.
+#
+# VALID_ARCHITECTURES = AARCH64 ARM
+#
+
+[Sources]
+ ArmVirtPciHostBridgeUtilityLib.c
+
+[Packages]
+ MdeModulePkg/MdeModulePkg.dec
+ MdePkg/MdePkg.dec
+ OvmfPkg/OvmfPkg.dec
+
+[LibraryClasses]
+ BaseMemoryLib
+ DebugLib
+ DevicePathLib
+ MemoryAllocationLib
+ PciLib
--
2.17.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH RESEND v1 2/2] ArmVirtPkg: Enable PCIe support for Kvmtool
2021-06-15 15:21 [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool PierreGondois
2021-06-15 15:21 ` [PATCH RESEND v1 1/2] ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg PierreGondois
@ 2021-06-15 15:21 ` PierreGondois
2021-06-16 14:36 ` [PATCH RESEND v1 0/2] " Ard Biesheuvel
2021-06-21 13:43 ` [edk2-devel] " alexandru.elisei
3 siblings, 0 replies; 8+ messages in thread
From: PierreGondois @ 2021-06-15 15:21 UTC (permalink / raw)
To: Laszlo Ersek, Ard Biesheuvel, Sami Mujawar, devel; +Cc: Leif Lindholm
From: Sami Mujawar <sami.mujawar@arm.com>
PCIe support has been added to the Kvmtool virtual machine
manager. Therefore, enable PCIe support for Kvmtool firmware.
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com>
---
ArmVirtPkg/ArmVirtKvmTool.dsc | 35 +++++++++++++++++++++++++++++++++--
ArmVirtPkg/ArmVirtKvmTool.fdf | 11 ++++++++++-
2 files changed, 43 insertions(+), 3 deletions(-)
diff --git a/ArmVirtPkg/ArmVirtKvmTool.dsc b/ArmVirtPkg/ArmVirtKvmTool.dsc
index 01ebc903e077..3bd1cc72a1eb 100644
--- a/ArmVirtPkg/ArmVirtKvmTool.dsc
+++ b/ArmVirtPkg/ArmVirtKvmTool.dsc
@@ -1,7 +1,7 @@
# @file
# Workspace file for KVMTool virtual platform.
#
-# Copyright (c) 2018 - 2020, ARM Limited. All rights reserved.
+# Copyright (c) 2018 - 2021, ARM Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
@@ -60,7 +60,7 @@ [LibraryClasses.common]
PciPcdProducerLib|ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf
PciHostBridgeLib|ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.inf
- PciHostBridgeUtilityLib|OvmfPkg/Library/PciHostBridgeUtilityLib/PciHostBridgeUtilityLib.inf
+ PciHostBridgeUtilityLib|ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf
TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
@@ -175,6 +175,17 @@ [PcdsDynamicDefault.common]
gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x0
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x0
+ #
+ # PCI settings
+ #
+ gEfiMdeModulePkgTokenSpaceGuid.PcdPciDisableBusEnumeration|TRUE
+
+ # set PcdPciExpressBaseAddress to MAX_UINT64, which signifies that this
+ # PCD and PcdPciDisableBusEnumeration above have not been assigned yet
+ gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xFFFFFFFFFFFFFFFF
+
+ gArmTokenSpaceGuid.PcdPciIoTranslation|0x0
+
#
# Set video resolution for boot options and for text setup.
# PlatformDxe can set the former at runtime.
@@ -322,3 +333,23 @@ [Components.common]
#
MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
+ #
+ # PCI support
+ #
+ ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.inf {
+ <LibraryClasses>
+ NULL|ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
+ NULL|ArmVirtPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
+ }
+ MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf {
+ <LibraryClasses>
+ NULL|ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
+ NULL|ArmVirtPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
+ }
+ MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf {
+ <LibraryClasses>
+ NULL|ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
+ NULL|ArmVirtPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
+ }
+ OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
+ OvmfPkg/Virtio10Dxe/Virtio10.inf
diff --git a/ArmVirtPkg/ArmVirtKvmTool.fdf b/ArmVirtPkg/ArmVirtKvmTool.fdf
index ebc82c5bd53c..076155199905 100644
--- a/ArmVirtPkg/ArmVirtKvmTool.fdf
+++ b/ArmVirtPkg/ArmVirtKvmTool.fdf
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2018 - 2020, ARM Limited. All rights reserved.
+# Copyright (c) 2018 - 2021, ARM Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
@@ -195,6 +195,15 @@ [FV.FvMain]
INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
+ #
+ # PCI support
+ #
+ INF ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.inf
+ INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf
+ INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
+ INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
+ INF OvmfPkg/Virtio10Dxe/Virtio10.inf
+
#
# TianoCore logo (splash screen)
#
--
2.17.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool
2021-06-15 15:21 [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool PierreGondois
2021-06-15 15:21 ` [PATCH RESEND v1 1/2] ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg PierreGondois
2021-06-15 15:21 ` [PATCH RESEND v1 2/2] ArmVirtPkg: Enable PCIe support for Kvmtool PierreGondois
@ 2021-06-16 14:36 ` Ard Biesheuvel
2021-06-21 13:43 ` [edk2-devel] " alexandru.elisei
3 siblings, 0 replies; 8+ messages in thread
From: Ard Biesheuvel @ 2021-06-16 14:36 UTC (permalink / raw)
To: Pierre
Cc: Laszlo Ersek, Ard Biesheuvel, Sami Mujawar, edk2-devel-groups-io,
Leif Lindholm
On Tue, 15 Jun 2021 at 17:21, <Pierre.Gondois@arm.com> wrote:
>
> From: Pierre Gondois <Pierre.Gondois@arm.com>
>
> PCIe support has been added to the Kvmtool virtual machine
> manager. Therefore, add a PciHostBridgeUtilityLib and enable
> PCIe support for Kvmtool firmware.
>
> The patches were re-send as the devel@edk2.groups.io was not included.
>
> The patches can be seen at: https://github.com/PierreARM/edk2/tree/1413_Enable_ArmVirt_Pci_v1
> The results of the CI can be seen at: https://github.com/tianocore/edk2/pull/1718
>
> Sami Mujawar (2):
> ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg
> ArmVirtPkg: Enable PCIe support for Kvmtool
>
For the series,
Acked-by: Ard Biesheuvel <ardb@kernel.org>
> ArmVirtPkg/ArmVirtKvmTool.dsc | 35 ++-
> ArmVirtPkg/ArmVirtKvmTool.fdf | 11 +-
> .../ArmVirtPciHostBridgeUtilityLib.c | 219 ++++++++++++++++++
> .../ArmVirtPciHostBridgeUtilityLib.inf | 39 ++++
> 4 files changed, 301 insertions(+), 3 deletions(-)
> create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c
> create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf
>
> --
> 2.17.1
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool
2021-06-15 15:21 [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool PierreGondois
` (2 preceding siblings ...)
2021-06-16 14:36 ` [PATCH RESEND v1 0/2] " Ard Biesheuvel
@ 2021-06-21 13:43 ` alexandru.elisei
2021-06-22 11:00 ` Laszlo Ersek
3 siblings, 1 reply; 8+ messages in thread
From: alexandru.elisei @ 2021-06-21 13:43 UTC (permalink / raw)
To: devel, pierre.gondois, Laszlo Ersek, Ard Biesheuvel, Sami Mujawar
Cc: Leif Lindholm
Hi Pierre,
On 6/15/21 4:21 PM, PierreGondois via groups.io wrote:
> From: Pierre Gondois <Pierre.Gondois@arm.com>
>
> PCIe support has been added to the Kvmtool virtual machine
> manager. Therefore, add a PciHostBridgeUtilityLib and enable
> PCIe support for Kvmtool firmware.
>
> The patches were re-send as the devel@edk2.groups.io was not included.
>
> The patches can be seen at: https://github.com/PierreARM/edk2/tree/1413_Enable_ArmVirt_Pci_v1
> The results of the CI can be seen at: https://github.com/tianocore/edk2/pull/1718
Tested the patches with the latest version of the kvmtool PCI Express support [1],
and everything worked as expected. A summary of the tests that I ran can be found
at [1]. So you can add for the entire series:
Tested-by: Alexandru Elisei <alexandru.elisei@arm.com>
One thing of note is that applying patch #2 of this series on top of 11b1c1d4b98b
("SecurityPkg: TcgStorageOpalLib: Initialize SupportedAttributes parameter")
failed. However, building from your repo went fine, and the binary that I used for
testing was built from your repo.
[1] https://lore.kernel.org/kvm/20210621092128.11313-1-alexandru.elisei@arm.com/
Thanks,
Alex
>
> Sami Mujawar (2):
> ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg
> ArmVirtPkg: Enable PCIe support for Kvmtool
>
> ArmVirtPkg/ArmVirtKvmTool.dsc | 35 ++-
> ArmVirtPkg/ArmVirtKvmTool.fdf | 11 +-
> .../ArmVirtPciHostBridgeUtilityLib.c | 219 ++++++++++++++++++
> .../ArmVirtPciHostBridgeUtilityLib.inf | 39 ++++
> 4 files changed, 301 insertions(+), 3 deletions(-)
> create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c
> create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool
2021-06-21 13:43 ` [edk2-devel] " alexandru.elisei
@ 2021-06-22 11:00 ` Laszlo Ersek
2021-06-22 16:48 ` Sami Mujawar
[not found] ` <168AF58048EE8581.25454@groups.io>
0 siblings, 2 replies; 8+ messages in thread
From: Laszlo Ersek @ 2021-06-22 11:00 UTC (permalink / raw)
To: devel, alexandru.elisei, pierre.gondois, Ard Biesheuvel,
Sami Mujawar
Cc: Leif Lindholm
On 06/21/21 15:43, Alexandru Elisei wrote:
> Hi Pierre,
>
> On 6/15/21 4:21 PM, PierreGondois via groups.io wrote:
>> From: Pierre Gondois <Pierre.Gondois@arm.com>
>>
>> PCIe support has been added to the Kvmtool virtual machine
>> manager. Therefore, add a PciHostBridgeUtilityLib and enable
>> PCIe support for Kvmtool firmware.
>>
>> The patches were re-send as the devel@edk2.groups.io was not included.
>>
>> The patches can be seen at: https://github.com/PierreARM/edk2/tree/1413_Enable_ArmVirt_Pci_v1
>> The results of the CI can be seen at: https://github.com/tianocore/edk2/pull/1718
>
> Tested the patches with the latest version of the kvmtool PCI Express support [1],
> and everything worked as expected. A summary of the tests that I ran can be found
> at [1]. So you can add for the entire series:
>
> Tested-by: Alexandru Elisei <alexandru.elisei@arm.com>
>
> One thing of note is that applying patch #2 of this series on top of 11b1c1d4b98b
> ("SecurityPkg: TcgStorageOpalLib: Initialize SupportedAttributes parameter")
> failed.
If there is a conflict that needs to be resolved, then Pierre, can you
please repost?
Otherwise: Sami, can you please merge the series with Ard's and Alex's tags?
Thanks!
Laszlo
> However, building from your repo went fine, and the binary that I used for
> testing was built from your repo.
>
> [1] https://lore.kernel.org/kvm/20210621092128.11313-1-alexandru.elisei@arm.com/
>
> Thanks,
>
> Alex
>
>>
>> Sami Mujawar (2):
>> ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg
>> ArmVirtPkg: Enable PCIe support for Kvmtool
>>
>> ArmVirtPkg/ArmVirtKvmTool.dsc | 35 ++-
>> ArmVirtPkg/ArmVirtKvmTool.fdf | 11 +-
>> .../ArmVirtPciHostBridgeUtilityLib.c | 219 ++++++++++++++++++
>> .../ArmVirtPciHostBridgeUtilityLib.inf | 39 ++++
>> 4 files changed, 301 insertions(+), 3 deletions(-)
>> create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c
>> create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf
>>
>
>
>
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool
2021-06-22 11:00 ` Laszlo Ersek
@ 2021-06-22 16:48 ` Sami Mujawar
[not found] ` <168AF58048EE8581.25454@groups.io>
1 sibling, 0 replies; 8+ messages in thread
From: Sami Mujawar @ 2021-06-22 16:48 UTC (permalink / raw)
To: devel@edk2.groups.io, lersek@redhat.com, Alexandru Elisei,
Pierre Gondois, Ard Biesheuvel
Cc: Leif Lindholm, Akanksha Jain, nd
Hi Laszlo,
On 22/06/2021, 12:01, "devel@edk2.groups.io on behalf of Laszlo Ersek via groups.io" <devel@edk2.groups.io on behalf of lersek=redhat.com@groups.io> wrote:
On 06/21/21 15:43, Alexandru Elisei wrote:
> Hi Pierre,
>
> On 6/15/21 4:21 PM, PierreGondois via groups.io wrote:
>> From: Pierre Gondois <Pierre.Gondois@arm.com>
>>
>> PCIe support has been added to the Kvmtool virtual machine
>> manager. Therefore, add a PciHostBridgeUtilityLib and enable
>> PCIe support for Kvmtool firmware.
>>
>> The patches were re-send as the devel@edk2.groups.io was not included.
>>
>> The patches can be seen at: https://github.com/PierreARM/edk2/tree/1413_Enable_ArmVirt_Pci_v1
>> The results of the CI can be seen at: https://github.com/tianocore/edk2/pull/1718
>
> Tested the patches with the latest version of the kvmtool PCI Express support [1],
> and everything worked as expected. A summary of the tests that I ran can be found
> at [1]. So you can add for the entire series:
>
> Tested-by: Alexandru Elisei <alexandru.elisei@arm.com>
>
> One thing of note is that applying patch #2 of this series on top of 11b1c1d4b98b
> ("SecurityPkg: TcgStorageOpalLib: Initialize SupportedAttributes parameter")
> failed.
If there is a conflict that needs to be resolved, then Pierre, can you
please repost?
Otherwise: Sami, can you please merge the series with Ard's and Alex's tags?
[SAMI] I will merge this series shortly.
Regards,
Sami Mujawar
Thanks!
Laszlo
> However, building from your repo went fine, and the binary that I used for
> testing was built from your repo.
>
> [1] https://lore.kernel.org/kvm/20210621092128.11313-1-alexandru.elisei@arm.com/
>
> Thanks,
>
> Alex
>
>>
>> Sami Mujawar (2):
>> ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg
>> ArmVirtPkg: Enable PCIe support for Kvmtool
>>
>> ArmVirtPkg/ArmVirtKvmTool.dsc | 35 ++-
>> ArmVirtPkg/ArmVirtKvmTool.fdf | 11 +-
>> .../ArmVirtPciHostBridgeUtilityLib.c | 219 ++++++++++++++++++
>> .../ArmVirtPciHostBridgeUtilityLib.inf | 39 ++++
>> 4 files changed, 301 insertions(+), 3 deletions(-)
>> create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c
>> create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf
>>
>
>
>
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool
[not found] ` <168AF58048EE8581.25454@groups.io>
@ 2021-06-22 17:07 ` Sami Mujawar
0 siblings, 0 replies; 8+ messages in thread
From: Sami Mujawar @ 2021-06-22 17:07 UTC (permalink / raw)
To: devel@edk2.groups.io, Sami Mujawar, lersek@redhat.com,
Alexandru Elisei, Pierre Gondois, Ard Biesheuvel
Cc: Leif Lindholm, Akanksha Jain, nd, Jianyong Wu
Pushed as d9a7612f8d1d..4dda0f7ab44a.
Regards,
Sami Mujawar
On 22/06/2021, 17:49, "devel@edk2.groups.io on behalf of Sami Mujawar via groups.io" <devel@edk2.groups.io on behalf of sami.mujawar=arm.com@groups.io> wrote:
Hi Laszlo,
On 22/06/2021, 12:01, "devel@edk2.groups.io on behalf of Laszlo Ersek via groups.io" <devel@edk2.groups.io on behalf of lersek=redhat.com@groups.io> wrote:
On 06/21/21 15:43, Alexandru Elisei wrote:
> Hi Pierre,
>
> On 6/15/21 4:21 PM, PierreGondois via groups.io wrote:
>> From: Pierre Gondois <Pierre.Gondois@arm.com>
>>
>> PCIe support has been added to the Kvmtool virtual machine
>> manager. Therefore, add a PciHostBridgeUtilityLib and enable
>> PCIe support for Kvmtool firmware.
>>
>> The patches were re-send as the devel@edk2.groups.io was not included.
>>
>> The patches can be seen at: https://github.com/PierreARM/edk2/tree/1413_Enable_ArmVirt_Pci_v1
>> The results of the CI can be seen at: https://github.com/tianocore/edk2/pull/1718
>
> Tested the patches with the latest version of the kvmtool PCI Express support [1],
> and everything worked as expected. A summary of the tests that I ran can be found
> at [1]. So you can add for the entire series:
>
> Tested-by: Alexandru Elisei <alexandru.elisei@arm.com>
>
> One thing of note is that applying patch #2 of this series on top of 11b1c1d4b98b
> ("SecurityPkg: TcgStorageOpalLib: Initialize SupportedAttributes parameter")
> failed.
If there is a conflict that needs to be resolved, then Pierre, can you
please repost?
Otherwise: Sami, can you please merge the series with Ard's and Alex's tags?
[SAMI] I will merge this series shortly.
Regards,
Sami Mujawar
Thanks!
Laszlo
> However, building from your repo went fine, and the binary that I used for
> testing was built from your repo.
>
> [1] https://lore.kernel.org/kvm/20210621092128.11313-1-alexandru.elisei@arm.com/
>
> Thanks,
>
> Alex
>
>>
>> Sami Mujawar (2):
>> ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg
>> ArmVirtPkg: Enable PCIe support for Kvmtool
>>
>> ArmVirtPkg/ArmVirtKvmTool.dsc | 35 ++-
>> ArmVirtPkg/ArmVirtKvmTool.fdf | 11 +-
>> .../ArmVirtPciHostBridgeUtilityLib.c | 219 ++++++++++++++++++
>> .../ArmVirtPciHostBridgeUtilityLib.inf | 39 ++++
>> 4 files changed, 301 insertions(+), 3 deletions(-)
>> create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c
>> create mode 100644 ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.inf
>>
>
>
>
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2021-06-22 17:08 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-06-15 15:21 [PATCH RESEND v1 0/2] ArmVirtPkg: Enable PCIe support for Kvmtool PierreGondois
2021-06-15 15:21 ` [PATCH RESEND v1 1/2] ArmVirtPkg: Add PCIe host bridge utility lib for ArmVirtPkg PierreGondois
2021-06-15 15:21 ` [PATCH RESEND v1 2/2] ArmVirtPkg: Enable PCIe support for Kvmtool PierreGondois
2021-06-16 14:36 ` [PATCH RESEND v1 0/2] " Ard Biesheuvel
2021-06-21 13:43 ` [edk2-devel] " alexandru.elisei
2021-06-22 11:00 ` Laszlo Ersek
2021-06-22 16:48 ` Sami Mujawar
[not found] ` <168AF58048EE8581.25454@groups.io>
2021-06-22 17:07 ` Sami Mujawar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox