[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2/7] audio: add module loading support
From: |
Marc-André Lureau |
Subject: |
Re: [Qemu-devel] [PATCH 2/7] audio: add module loading support |
Date: |
Tue, 6 Mar 2018 11:59:03 +0100 |
On Tue, Mar 6, 2018 at 8:40 AM, Gerd Hoffmann <address@hidden> wrote:
> Make audio_driver_lookup() try load the module in case it doesn't find
> the driver in the registry. Also load all modules for -audio-help, so
> the help output includes the help text for modular audio drivers.
>
> Signed-off-by: Gerd Hoffmann <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
> ---
> include/qemu/module.h | 1 +
> audio/audio.c | 20 ++++++++++++++++++++
> 2 files changed, 21 insertions(+)
>
> diff --git a/include/qemu/module.h b/include/qemu/module.h
> index 9fea75aaeb..54300ab6e5 100644
> --- a/include/qemu/module.h
> +++ b/include/qemu/module.h
> @@ -54,6 +54,7 @@ typedef enum {
>
> #define block_module_load_one(lib) module_load_one("block-", lib)
> #define ui_module_load_one(lib) module_load_one("ui-", lib)
> +#define audio_module_load_one(lib) module_load_one("audio-", lib)
>
> void register_module_init(void (*fn)(void), module_init_type type);
> void register_dso_module_init(void (*fn)(void), module_init_type type);
> diff --git a/audio/audio.c b/audio/audio.c
> index 2384612b87..6eccdb17ee 100644
> --- a/audio/audio.c
> +++ b/audio/audio.c
> @@ -68,9 +68,26 @@ audio_driver *audio_driver_lookup(const char *name)
> return d;
> }
> }
> +
> + audio_module_load_one(name);
> + QLIST_FOREACH(d, &audio_drivers, next) {
> + if (strcmp(name, d->name) == 0) {
> + return d;
> + }
> + }
> +
> return NULL;
> }
>
> +static void audio_module_load_all(void)
> +{
> + int i;
> +
> + for (i = 0; i < ARRAY_SIZE(audio_prio_list); i++) {
> + audio_driver_lookup(audio_prio_list[i]);
> + }
> +}
> +
> struct fixed_settings {
> int enabled;
> int nb_voices;
> @@ -1675,6 +1692,9 @@ void AUD_help (void)
> {
> struct audio_driver *d;
>
> + /* make sure we print the help text for modular drivers too */
> + audio_module_load_all();
> +
> audio_process_options ("AUDIO", audio_options);
> QLIST_FOREACH(d, &audio_drivers, next) {
> if (d->options) {
> --
> 2.9.3
>
>
--
Marc-André Lureau
- [Qemu-devel] [PATCH 0/7] audio: modularize, Gerd Hoffmann, 2018/03/06
- [Qemu-devel] [PATCH 5/7] audio/oss: build as module, Gerd Hoffmann, 2018/03/06
- [Qemu-devel] [PATCH 6/7] audio/pulseaudio: build as module, Gerd Hoffmann, 2018/03/06
- [Qemu-devel] [PATCH 7/7] audio/sdl: build as module, Gerd Hoffmann, 2018/03/06
- [Qemu-devel] [PATCH 4/7] audio/alsa: build as module, Gerd Hoffmann, 2018/03/06
- [Qemu-devel] [PATCH 2/7] audio: add module loading support, Gerd Hoffmann, 2018/03/06
- Re: [Qemu-devel] [PATCH 2/7] audio: add module loading support,
Marc-André Lureau <=
- [Qemu-devel] [PATCH 1/7] audio: add driver registry, Gerd Hoffmann, 2018/03/06
- [Qemu-devel] [PATCH 3/7] build: enable audio modules, Gerd Hoffmann, 2018/03/06
- Re: [Qemu-devel] [PATCH 0/7] audio: modularize, Marc-André Lureau, 2018/03/06