From: Marc-André Lureau Date: Mon, 13 Oct 2025 13:45:48 +0000 (+0400) Subject: audio: register backends in /audiodevs container X-Git-Tag: v10.2.0-rc1~29^2~26 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6334967f6cb3993dc19883d2bdd314689d0a0c96;p=thirdparty%2Fqemu.git audio: register backends in /audiodevs container QOM tree now has /audiodevs objects. Signed-off-by: Marc-André Lureau Reviewed-by: Philippe Mathieu-Daudé --- diff --git a/audio/audio.c b/audio/audio.c index e1696403ae..c291fd3e65 100644 --- a/audio/audio.c +++ b/audio/audio.c @@ -1676,6 +1676,11 @@ static void audio_state_finalize(Object *obj) } } +static Object *get_audiodevs_root(void) +{ + return object_get_container("audiodevs"); +} + void audio_cleanup(void) { default_audio_state = NULL; @@ -1742,6 +1747,9 @@ static AudioState *audio_init(Audiodev *dev, Error **errp) struct audio_driver *driver; s = AUDIO_STATE(object_new(TYPE_AUDIO_STATE)); + if (!object_property_try_add_child(get_audiodevs_root(), dev->id, OBJECT(s), errp)) { + goto out; + } if (!atexit_registered) { atexit(audio_cleanup); diff --git a/qom/object.c b/qom/object.c index 1856bb36c7..4f32c1aba7 100644 --- a/qom/object.c +++ b/qom/object.c @@ -1730,6 +1730,7 @@ const char *object_property_get_type(Object *obj, const char *name, Error **errp } static const char *const root_containers[] = { + "audiodevs", "chardevs", "objects", "backend"