Files
vfio-native/patches/qemu/06-audio.patch

59 lines
2.1 KiB
Diff

Subject: [PATCH] audio: DEVICES
Targets VMAware check: DEVICES
Intel HDA codec and controller identity strings.
Applies to QEMU v11.1.1. Apply from the source root with:
patch -p1 < 06-audio.patch
---
diff --git a/hw/audio/hda-codec.c b/hw/audio/hda-codec.c
index 173fe56..4d8a73b 100644
--- a/hw/audio/hda-codec.c
+++ b/hw/audio/hda-codec.c
@@ -118,7 +118,7 @@ static void hda_codec_parse_fmt(uint32_t format, struct audsettings *as)
/* some defines */
-#define QEMU_HDA_ID_VENDOR 0x1af4
+#define QEMU_HDA_ID_VENDOR 0x10ec /* Realtek HDA Codec Vendor ID */
#define QEMU_HDA_PCM_FORMATS (AC_SUPPCM_BITS_16 | \
0x1fc /* 16 -> 96 kHz */)
#define QEMU_HDA_AMP_NONE (0)
diff --git a/hw/audio/intel-hda.c b/hw/audio/intel-hda.c
index 3d361a4..66c4e3b 100644
--- a/hw/audio/intel-hda.c
+++ b/hw/audio/intel-hda.c
@@ -1230,7 +1230,7 @@ static void intel_hda_class_init(ObjectClass *klass, const void *data)
k->realize = intel_hda_realize;
k->exit = intel_hda_exit;
- k->vendor_id = PCI_VENDOR_ID_INTEL;
+ k->vendor_id = PCI_VENDOR_ID_AMD;
k->class_id = PCI_CLASS_MULTIMEDIA_HD_AUDIO;
device_class_set_legacy_reset(dc, intel_hda_reset);
dc->vmsd = &vmstate_intel_hda;
@@ -1242,8 +1242,8 @@ static void intel_hda_class_init_ich6(ObjectClass *klass, const void *data)
DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
- k->device_id = 0x2668;
- k->revision = 1;
+ k->device_id = 0x15e3; // AMD - Ryzen HD Audio Controller
+ k->revision = 0;
set_bit(DEVICE_CATEGORY_SOUND, dc->categories);
dc->desc = "Intel HD Audio Controller (ich6)";
}
@@ -1253,8 +1253,8 @@ static void intel_hda_class_init_ich9(ObjectClass *klass, const void *data)
DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
- k->device_id = 0x293e;
- k->revision = 3;
+ k->device_id = 0x15e3; // AMD - Ryzen HD Audio Controller
+ k->revision = 0;
set_bit(DEVICE_CATEGORY_SOUND, dc->categories);
dc->desc = "Intel HD Audio Controller (ich9)";
}