tests/qtest: Specify audiodev= and -audiodev

This will enable removing deprecated default audiodev support.

I did not figure out how to make the audiodev represented as an
interface node, so this is a workaround.  I am not sure what would be
the proper way.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <6e7f2808dd40679a415812767b88f2a411fc137f.1650874791.git.mkletzan@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Martin Kletzander 2022-04-25 10:21:48 +02:00 committed by Paolo Bonzini
parent fac7e497ca
commit 50333482e1
3 changed files with 16 additions and 8 deletions

View file

@ -46,7 +46,8 @@ static void *es1370_create(void *pci_bus, QGuestAllocator *alloc, void *addr)
static void es1370_register_nodes(void) static void es1370_register_nodes(void)
{ {
QOSGraphEdgeOptions opts = { QOSGraphEdgeOptions opts = {
.extra_device_opts = "addr=04.0", .extra_device_opts = "addr=04.0,audiodev=audio0",
.before_cmd_line = "-audiodev driver=none,id=audio0",
}; };
add_qpci_address(&opts, &(QPCIAddress) { .devfn = QPCI_DEVFN(4, 0) }); add_qpci_address(&opts, &(QPCIAddress) { .devfn = QPCI_DEVFN(4, 0) });

View file

@ -106,8 +106,10 @@ const generic_fuzz_config predefined_configs[] = {
},{ },{
.name = "intel-hda", .name = "intel-hda",
.args = "-machine q35 -nodefaults -device intel-hda,id=hda0 " .args = "-machine q35 -nodefaults -device intel-hda,id=hda0 "
"-device hda-output,bus=hda0.0 -device hda-micro,bus=hda0.0 " "-audiodev driver=none,id=audio0",
"-device hda-duplex,bus=hda0.0", "-device hda-output,bus=hda0.0,audiodev=audio0 "
"-device hda-micro,bus=hda0.0,audiodev=audio0 "
"-device hda-duplex,bus=hda0.0,audiodev=audio0",
.objects = "intel-hda", .objects = "intel-hda",
},{ },{
.name = "ide-hd", .name = "ide-hd",

View file

@ -11,20 +11,24 @@
#include "libqtest-single.h" #include "libqtest-single.h"
#define HDA_ID "hda0" #define HDA_ID "hda0"
#define CODEC_DEVICES " -device hda-output,bus=" HDA_ID ".0" \ #define AUDIODEV " -audiodev driver=none,id=audio0 "
" -device hda-micro,bus=" HDA_ID ".0" \ #define AUDIODEV_REF "audiodev=audio0"
" -device hda-duplex,bus=" HDA_ID ".0" #define CODEC_DEVICES " -device hda-output,bus=" HDA_ID ".0," AUDIODEV_REF \
" -device hda-micro,bus=" HDA_ID ".0," AUDIODEV_REF \
" -device hda-duplex,bus=" HDA_ID ".0," AUDIODEV_REF
/* Tests only initialization so far. TODO: Replace with functional tests */ /* Tests only initialization so far. TODO: Replace with functional tests */
static void ich6_test(void) static void ich6_test(void)
{ {
qtest_start("-machine pc -device intel-hda,id=" HDA_ID CODEC_DEVICES); qtest_start(AUDIODEV "-machine pc -device intel-hda,id=" HDA_ID CODEC_DEVICES);
qtest_end(); qtest_end();
} }
static void ich9_test(void) static void ich9_test(void)
{ {
qtest_start("-machine q35 -device ich9-intel-hda,bus=pcie.0,addr=1b.0,id=" qtest_start("-machine q35"
AUDIODEV
"-device ich9-intel-hda,bus=pcie.0,addr=1b.0,id="
HDA_ID CODEC_DEVICES); HDA_ID CODEC_DEVICES);
qtest_end(); qtest_end();
} }
@ -39,6 +43,7 @@ static void test_issue542_ich6(void)
QTestState *s; QTestState *s;
s = qtest_init("-nographic -nodefaults -M pc-q35-6.2 " s = qtest_init("-nographic -nodefaults -M pc-q35-6.2 "
AUDIODEV
"-device intel-hda,id=" HDA_ID CODEC_DEVICES); "-device intel-hda,id=" HDA_ID CODEC_DEVICES);
qtest_outl(s, 0xcf8, 0x80000804); qtest_outl(s, 0xcf8, 0x80000804);