*/
#include "qemu/osdep.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "audio/audio.h"
#include "hw/pci/pci_device.h"
#include "hw/qdev-properties.h"
static void ac97_register_types(void)
{
type_register_static(&ac97_info);
- deprecated_register_soundhw("ac97", "Intel 82801AA AC97 Audio",
- 0, TYPE_AC97);
+ audio_register_model("ac97", "Intel 82801AA AC97 Audio", 0, TYPE_AC97);
}
type_init(ac97_register_types)
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "audio/audio.h"
#include "hw/isa/isa.h"
#include "hw/qdev-properties.h"
static void adlib_register_types (void)
{
type_register_static (&adlib_info);
- deprecated_register_soundhw("adlib", ADLIB_DESC, 1, TYPE_ADLIB);
+ audio_register_model("adlib", ADLIB_DESC, 1, TYPE_ADLIB);
}
type_init (adlib_register_types)
*/
#include "qemu/osdep.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "audio/audio.h"
#include "hw/irq.h"
#include "hw/isa/isa.h"
static void cs4231a_register_types (void)
{
type_register_static (&cs4231a_info);
- deprecated_register_soundhw("cs4231a", "CS4231A", 1, TYPE_CS4231A);
+ audio_register_model("cs4231a", "CS4231A", 1, TYPE_CS4231A);
}
type_init (cs4231a_register_types)
#define VERBOSE_ES1370 0
#include "qemu/osdep.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "audio/audio.h"
#include "hw/pci/pci_device.h"
#include "migration/vmstate.h"
static void es1370_register_types (void)
{
type_register_static (&es1370_info);
- deprecated_register_soundhw("es1370", "ENSONIQ AudioPCI ES1370",
- 0, TYPE_ES1370);
+ audio_register_model("es1370", "ENSONIQ AudioPCI ES1370", 0, TYPE_ES1370);
}
type_init (es1370_register_types)
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "audio/audio.h"
#include "hw/irq.h"
#include "hw/isa/isa.h"
static void gus_register_types (void)
{
type_register_static (&gus_info);
- deprecated_register_soundhw("gus", "Gravis Ultrasound GF1", 1, TYPE_GUS);
+ audio_register_model("gus", "Gravis Ultrasound GF1", 1, TYPE_GUS);
}
type_init (gus_register_types)
#include "qemu/log.h"
#include "qemu/module.h"
#include "qemu/error-report.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "intel-hda.h"
#include "migration/vmstate.h"
#include "intel-hda-defs.h"
type_register_static(&intel_hda_info_ich6);
type_register_static(&intel_hda_info_ich9);
type_register_static(&hda_codec_device_type_info);
- pci_register_soundhw("hda", "Intel HD Audio", intel_hda_and_codec_init);
+ audio_register_model_with_cb("hda", "Intel HD Audio", intel_hda_and_codec_init);
}
type_init(intel_hda_register_types)
-system_ss.add(files('soundhw.c'))
+system_ss.add(files('model.c'))
system_ss.add(when: 'CONFIG_AC97', if_true: files('ac97.c'))
system_ss.add(when: 'CONFIG_ADLIB', if_true: files('fmopl.c', 'adlib.c'))
system_ss.add(when: 'CONFIG_ASC', if_true: files('asc.c'))
#include "hw/qdev-properties.h"
#include "hw/isa/isa.h"
#include "hw/pci/pci.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
-struct soundhw {
+struct audio_model {
const char *name;
const char *descr;
const char *typename;
int (*init_pci) (PCIBus *bus, const char *audiodev);
};
-static struct soundhw soundhw[9];
-static int soundhw_count;
+static struct audio_model audio_models[9];
+static int audio_models_count;
-void pci_register_soundhw(const char *name, const char *descr,
- int (*init_pci)(PCIBus *bus, const char *audiodev))
+void audio_register_model_with_cb(const char *name, const char *descr,
+ int (*init_pci)(PCIBus *bus, const char *audiodev))
{
- assert(soundhw_count < ARRAY_SIZE(soundhw) - 1);
- soundhw[soundhw_count].name = name;
- soundhw[soundhw_count].descr = descr;
- soundhw[soundhw_count].isa = 0;
- soundhw[soundhw_count].init_pci = init_pci;
- soundhw_count++;
+ assert(audio_models_count < ARRAY_SIZE(audio_models) - 1);
+ audio_models[audio_models_count].name = name;
+ audio_models[audio_models_count].descr = descr;
+ audio_models[audio_models_count].isa = 0;
+ audio_models[audio_models_count].init_pci = init_pci;
+ audio_models_count++;
}
-void deprecated_register_soundhw(const char *name, const char *descr,
- int isa, const char *typename)
+void audio_register_model(const char *name, const char *descr,
+ int isa, const char *typename)
{
- assert(soundhw_count < ARRAY_SIZE(soundhw) - 1);
- soundhw[soundhw_count].name = name;
- soundhw[soundhw_count].descr = descr;
- soundhw[soundhw_count].isa = isa;
- soundhw[soundhw_count].typename = typename;
- soundhw_count++;
+ assert(audio_models_count < ARRAY_SIZE(audio_models) - 1);
+ audio_models[audio_models_count].name = name;
+ audio_models[audio_models_count].descr = descr;
+ audio_models[audio_models_count].isa = isa;
+ audio_models[audio_models_count].typename = typename;
+ audio_models_count++;
}
void audio_print_available_models(void)
{
- struct soundhw *c;
+ struct audio_model *c;
- if (soundhw_count) {
+ if (audio_models_count) {
printf("Valid audio device model names:\n");
- for (c = soundhw; c->name; ++c) {
+ for (c = audio_models; c->name; ++c) {
printf("%-11s %s\n", c->name, c->descr);
}
} else {
}
}
-static struct soundhw *selected = NULL;
+static struct audio_model *selected;
static const char *audiodev_id;
-void select_soundhw(const char *name, const char *audiodev)
+void audio_set_model(const char *name, const char *audiodev)
{
- struct soundhw *c;
+ struct audio_model *c;
if (selected) {
error_report("only one -audio option is allowed");
exit(1);
}
- for (c = soundhw; c->name; ++c) {
+ for (c = audio_models; c->name; ++c) {
if (g_str_equal(c->name, name)) {
selected = c;
audiodev_id = audiodev;
}
}
-void soundhw_init(void)
+void audio_model_init(void)
{
- struct soundhw *c = selected;
+ struct audio_model *c = selected;
if (!c) {
return;
#include "qemu/osdep.h"
#include "hw/isa/isa.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "audio/audio.h"
#include "qemu/module.h"
#include "qemu/timer.h"
*/
#include "qemu/osdep.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "audio/audio.h"
#include "hw/irq.h"
#include "hw/isa/isa.h"
static void sb16_register_types (void)
{
type_register_static (&sb16_info);
- deprecated_register_soundhw("sb16", "Creative Sound Blaster 16",
- 1, TYPE_SB16);
+ audio_register_model("sb16", "Creative Sound Blaster 16", 1, TYPE_SB16);
}
type_init (sb16_register_types)
#include "qemu/osdep.h"
#include "qom/object.h"
#include "qapi/error.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "hw/virtio/virtio-pci.h"
#include "hw/audio/virtio-snd.h"
static void virtio_snd_pci_register(void)
{
virtio_pci_types_register(&virtio_snd_pci_info);
- pci_register_soundhw("virtio", "Virtio Sound", virtio_snd_pci_init);
+ audio_register_model_with_cb("virtio", "Virtio Sound", virtio_snd_pci_init);
}
type_init(virtio_snd_pci_register);
--- /dev/null
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+#ifndef HW_AUDIO_MODEL_H
+#define HW_AUDIO_MODEL_H
+
+void audio_register_model_with_cb(const char *name, const char *descr,
+ int (*init_pci)(PCIBus *bus, const char *audiodev));
+void audio_register_model(const char *name, const char *descr,
+ int isa, const char *typename);
+
+void audio_model_init(void);
+void audio_print_available_models(void);
+void audio_set_model(const char *name, const char *audiodev);
+
+#endif
+++ /dev/null
-#ifndef HW_SOUNDHW_H
-#define HW_SOUNDHW_H
-
-void pci_register_soundhw(const char *name, const char *descr,
- int (*init_pci)(PCIBus *bus, const char *audiodev));
-void deprecated_register_soundhw(const char *name, const char *descr,
- int isa, const char *typename);
-
-void soundhw_init(void);
-void audio_print_available_models(void);
-void select_soundhw(const char *name, const char *audiodev);
-
-#endif
#define SILENT_ES1370
#include "qemu/osdep.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "audio/audio.h"
#include "hw/pci/pci.h"
#include "migration/vmstate.h"
#include "migration/snapshot.h"
#include "system/tpm.h"
#include "system/dma.h"
-#include "hw/audio/soundhw.h"
+#include "hw/audio/model.h"
#include "audio/audio.h"
#include "system/cpus.h"
#include "system/cpu-timers.h"
{
DeviceOption *opt;
- soundhw_init();
+ audio_model_init();
qemu_opts_foreach(qemu_find_opts("fw_cfg"),
parse_fw_cfg, fw_cfg_find(), &error_fatal);
visit_free(v);
if (model) {
audio_add_audiodev(dev);
- select_soundhw(model, dev->id);
+ audio_set_model(model, dev->id);
g_free(model);
} else {
audio_add_default_audiodev(dev, &error_fatal);