[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 03/12] audio: add deprecated_register_soundhw
From: |
Gerd Hoffmann |
Subject: |
[PATCH 03/12] audio: add deprecated_register_soundhw |
Date: |
Wed, 29 Apr 2020 13:02:05 +0200 |
Add helper function for -soundhw deprecation. It can replace the
simple init functions which just call {isa,pci}_create_simple()
with a hardcoded type. It also prints a deprecation message.
Signed-off-by: Gerd Hoffmann <address@hidden>
---
include/hw/audio/soundhw.h | 2 ++
hw/audio/soundhw.c | 24 +++++++++++++++++++++++-
2 files changed, 25 insertions(+), 1 deletion(-)
diff --git a/include/hw/audio/soundhw.h b/include/hw/audio/soundhw.h
index c8eef8241846..f09a297854af 100644
--- a/include/hw/audio/soundhw.h
+++ b/include/hw/audio/soundhw.h
@@ -6,6 +6,8 @@ void isa_register_soundhw(const char *name, const char *descr,
void pci_register_soundhw(const char *name, const char *descr,
int (*init_pci)(PCIBus *bus));
+void deprecated_register_soundhw(const char *name, const char *descr,
+ int isa, const char *typename);
void soundhw_init(void);
void select_soundhw(const char *optarg);
diff --git a/hw/audio/soundhw.c b/hw/audio/soundhw.c
index c750473c8f0c..173b674ff53a 100644
--- a/hw/audio/soundhw.c
+++ b/hw/audio/soundhw.c
@@ -22,6 +22,7 @@
* THE SOFTWARE.
*/
#include "qemu/osdep.h"
+#include "qemu/option.h"
#include "qemu/help_option.h"
#include "qemu/error-report.h"
#include "qom/object.h"
@@ -32,6 +33,7 @@
struct soundhw {
const char *name;
const char *descr;
+ const char *typename;
int enabled;
int isa;
union {
@@ -65,6 +67,17 @@ void pci_register_soundhw(const char *name, const char
*descr,
soundhw_count++;
}
+void deprecated_register_soundhw(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++;
+}
+
void select_soundhw(const char *optarg)
{
struct soundhw *c;
@@ -136,7 +149,16 @@ void soundhw_init(void)
for (c = soundhw; c->name; ++c) {
if (c->enabled) {
- if (c->isa) {
+ if (c->typename) {
+ warn_report("'-soundhw %s' is deprecated, "
+ "please use '-device %s' instead",
+ c->name, c->typename);
+ if (c->isa) {
+ isa_create_simple(isa_bus, c->typename);
+ } else {
+ pci_create_simple(pci_bus, -1, c->typename);
+ }
+ } else if (c->isa) {
if (!isa_bus) {
error_report("ISA bus not available for %s", c->name);
exit(1);
--
2.18.2
- Re: [PATCH 02/12] stubs: add pci_create_simple, (continued)
- [PATCH 04/12] audio: deprecate -soundhw ac97, Gerd Hoffmann, 2020/04/29
- [PATCH 09/12] audio: deprecate -soundhw sb16, Gerd Hoffmann, 2020/04/29
- [PATCH 05/12] audio: deprecate -soundhw es1370, Gerd Hoffmann, 2020/04/29
- [PATCH 07/12] audio: deprecate -soundhw cs4231a, Gerd Hoffmann, 2020/04/29
- [PATCH 01/12] stubs: add isa_create_simple, Gerd Hoffmann, 2020/04/29
- [PATCH 12/12] [RFC] audio: try use onboard audiodev for pcspk, Gerd Hoffmann, 2020/04/29
- [PATCH 08/12] audio: deprecate -soundhw gus, Gerd Hoffmann, 2020/04/29
- [PATCH 10/12] audio: deprecate -soundhw hda, Gerd Hoffmann, 2020/04/29
- [PATCH 03/12] audio: add deprecated_register_soundhw,
Gerd Hoffmann <=
- [PATCH 11/12] audio: deprecate -soundhw pcspk, Gerd Hoffmann, 2020/04/29
- [PATCH 06/12] audio: deprecate -soundhw adlib, Gerd Hoffmann, 2020/04/29
- Re: [PATCH 00/12] audio: deprecate -soundhw, Daniel P . Berrangé, 2020/04/29
- Re: [PATCH 00/12] audio: deprecate -soundhw, Philippe Mathieu-Daudé, 2020/04/29