hyperv: vmbus: Remove the 2nd IRQ
It seems like Windows does not really require 2 IRQs to have a
functioning VMBus.
Signed-off-by: Jon Doron <arilou@gmail.com>
Message-Id: <20200617160904.681845-2-arilou@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
diff --git a/hw/hyperv/vmbus.c b/hw/hyperv/vmbus.c
index f371240..a8bcb41 100644
--- a/hw/hyperv/vmbus.c
+++ b/hw/hyperv/vmbus.c
@@ -2741,8 +2741,7 @@
};
static Property vmbus_bridge_props[] = {
- DEFINE_PROP_UINT8("irq0", VMBusBridge, irq0, 7),
- DEFINE_PROP_UINT8("irq1", VMBusBridge, irq1, 13),
+ DEFINE_PROP_UINT8("irq", VMBusBridge, irq, 7),
DEFINE_PROP_END_OF_LIST()
};
diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
index 378515d..b7bcbbb 100644
--- a/hw/i386/acpi-build.c
+++ b/hw/i386/acpi-build.c
@@ -967,9 +967,7 @@
aml_append(dev, aml_name_decl("_PS3", aml_int(0x0)));
crs = aml_resource_template();
- aml_append(crs, aml_irq_no_flags(vmbus_bridge->irq0));
- /* FIXME: newer HyperV gets by with only one IRQ */
- aml_append(crs, aml_irq_no_flags(vmbus_bridge->irq1));
+ aml_append(crs, aml_irq_no_flags(vmbus_bridge->irq));
aml_append(dev, aml_name_decl("_CRS", crs));
return dev;
diff --git a/include/hw/hyperv/vmbus-bridge.h b/include/hw/hyperv/vmbus-bridge.h
index c0a06d8..33f93de 100644
--- a/include/hw/hyperv/vmbus-bridge.h
+++ b/include/hw/hyperv/vmbus-bridge.h
@@ -19,8 +19,7 @@
typedef struct VMBusBridge {
SysBusDevice parent_obj;
- uint8_t irq0;
- uint8_t irq1;
+ uint8_t irq;
VMBus *bus;
} VMBusBridge;