diff --git a/hw-arm-acpi-enable-SHPC-native-hot-plug.patch b/hw-arm-acpi-enable-SHPC-native-hot-plug.patch new file mode 100644 index 0000000000000000000000000000000000000000..2b2e530bb8e3555b4f9cf2a807b060ac62ccd9de --- /dev/null +++ b/hw-arm-acpi-enable-SHPC-native-hot-plug.patch @@ -0,0 +1,45 @@ +From 1ad2e774f4fd3f720d5db07e86fe60df13f21a6d Mon Sep 17 00:00:00 2001 +From: Heyi Guo +Date: Mon, 9 Dec 2019 14:37:19 +0800 +Subject: [PATCH] hw/arm/acpi: enable SHPC native hot plug + +After the introduction of generic PCIe root port and PCIe-PCI bridge, +we will also have SHPC controller on ARM, so just enable SHPC native +hot plug. + +Also update tests/data/acpi/virt/DSDT* to pass "make check". + +Cc: Shannon Zhao +Cc: Peter Maydell +Cc: "Michael S. Tsirkin" +Cc: Igor Mammedov +Reviewed-by: Michael S. Tsirkin +Reviewed-by: Igor Mammedov +Signed-off-by: Heyi Guo +Message-id: 20191209063719.23086-3-guoheyi@huawei.com +Signed-off-by: Peter Maydell +--- + hw/arm/virt-acpi-build.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c +index 2cfac7b84f..588e7f2680 100644 +--- a/hw/arm/virt-acpi-build.c ++++ b/hw/arm/virt-acpi-build.c +@@ -347,7 +347,12 @@ static void acpi_dsdt_add_pci(Aml *scope, const MemMapEntry *memmap, + aml_create_dword_field(aml_arg(3), aml_int(8), "CDW3")); + aml_append(ifctx, aml_store(aml_name("CDW2"), aml_name("SUPP"))); + aml_append(ifctx, aml_store(aml_name("CDW3"), aml_name("CTRL"))); +- aml_append(ifctx, aml_store(aml_and(aml_name("CTRL"), aml_int(0x1D), NULL), ++ ++ /* ++ * Allow OS control for all 5 features: ++ * PCIeHotplug SHPCHotplug PME AER PCIeCapability. ++ */ ++ aml_append(ifctx, aml_store(aml_and(aml_name("CTRL"), aml_int(0x1F), NULL), + aml_name("CTRL"))); + + ifctx1 = aml_if(aml_lnot(aml_equal(aml_arg(1), aml_int(0x1)))); +-- +2.23.0 + diff --git a/qemu.spec b/qemu.spec index 61d4cf47b7835920a47e87aae298315a36cadefd..f09fdc990f1264562d8fbde2a975634891d7d1b7 100644 --- a/qemu.spec +++ b/qemu.spec @@ -1,6 +1,6 @@ Name: qemu Version: 4.1.0 -Release: 16 +Release: 17 Epoch: 2 Summary: QEMU is a generic and open source machine emulator and virtualizer License: GPLv2 and BSD and MIT and CC-BY @@ -183,6 +183,7 @@ Patch0170: megasas-use-unsigned-type-for-reply_queue_head-and-c.patch Patch0171: megasas-avoid-NULL-pointer-dereference.patch Patch0172: megasas-use-unsigned-type-for-positive-numeric-field.patch Patch0173: hw-scsi-megasas-Fix-possible-out-of-bounds-array-acc.patch +Patch0174: hw-arm-acpi-enable-SHPC-native-hot-plug.patch BuildRequires: flex BuildRequires: bison @@ -528,6 +529,9 @@ getent passwd qemu >/dev/null || \ %endif %changelog +* Wed Aug 12 2020 Huawei Technologies Co., Ltd +- backport upstream patch to support SHPCHotplug in arm + * Thu Aug 6 2020 Huawei Technologies Co., Ltd - es1370: check total frame count against current frame - exec: set map length to zero when returning NULL