Message ID | 20231105172552.8405-2-vr_qemu@t-online.de |
---|---|
State | New |
Headers | show |
Series | hw/audio/hda-codec bug fixes | expand |
Hi On Sun, Nov 5, 2023 at 9:26 PM Volker Rümelin <vr_qemu@t-online.de> wrote: > > Commit b7639b7dd0 ("hw/audio: Simplify hda audio init") inverted > the sense of hda codec property mixer during initialization. > Change the code so that mixer=on enables the hda mixer emulation > and mixer=off disables the hda mixer emulation. > > With this change audio playback and recording streams don't start > muted by default. > > Fixes: b7639b7dd0 ("hw/audio: Simplify hda audio init") > Signed-off-by: Volker Rümelin <vr_qemu@t-online.de> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> > --- > hw/audio/hda-codec.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/hw/audio/hda-codec.c b/hw/audio/hda-codec.c > index f756e419bb..0bc20d49f6 100644 > --- a/hw/audio/hda-codec.c > +++ b/hw/audio/hda-codec.c > @@ -868,10 +868,10 @@ static Property hda_audio_properties[] = { > static void hda_audio_init_output(HDACodecDevice *hda, Error **errp) > { > HDAAudioState *a = HDA_AUDIO(hda); > - const struct desc_codec *desc = &output_nomixemu; > + const struct desc_codec *desc = &output_mixemu; > > if (!a->mixer) { > - desc = &output_mixemu; > + desc = &output_nomixemu; > } > > hda_audio_init(hda, desc, errp); > @@ -880,10 +880,10 @@ static void hda_audio_init_output(HDACodecDevice *hda, Error **errp) > static void hda_audio_init_duplex(HDACodecDevice *hda, Error **errp) > { > HDAAudioState *a = HDA_AUDIO(hda); > - const struct desc_codec *desc = &duplex_nomixemu; > + const struct desc_codec *desc = &duplex_mixemu; > > if (!a->mixer) { > - desc = &duplex_mixemu; > + desc = &duplex_nomixemu; > } > > hda_audio_init(hda, desc, errp); It could be even further simplified: hda_audio_init(hda, a->mixer ? &output_mixemu : &output_nomixemu, errp); > @@ -892,10 +892,10 @@ static void hda_audio_init_duplex(HDACodecDevice *hda, Error **errp) > static void hda_audio_init_micro(HDACodecDevice *hda, Error **errp) > { > HDAAudioState *a = HDA_AUDIO(hda); > - const struct desc_codec *desc = µ_nomixemu; > + const struct desc_codec *desc = µ_mixemu; > > if (!a->mixer) { > - desc = µ_mixemu; > + desc = µ_nomixemu; > } > > hda_audio_init(hda, desc, errp); > -- > 2.35.3 > >
diff --git a/hw/audio/hda-codec.c b/hw/audio/hda-codec.c index f756e419bb..0bc20d49f6 100644 --- a/hw/audio/hda-codec.c +++ b/hw/audio/hda-codec.c @@ -868,10 +868,10 @@ static Property hda_audio_properties[] = { static void hda_audio_init_output(HDACodecDevice *hda, Error **errp) { HDAAudioState *a = HDA_AUDIO(hda); - const struct desc_codec *desc = &output_nomixemu; + const struct desc_codec *desc = &output_mixemu; if (!a->mixer) { - desc = &output_mixemu; + desc = &output_nomixemu; } hda_audio_init(hda, desc, errp); @@ -880,10 +880,10 @@ static void hda_audio_init_output(HDACodecDevice *hda, Error **errp) static void hda_audio_init_duplex(HDACodecDevice *hda, Error **errp) { HDAAudioState *a = HDA_AUDIO(hda); - const struct desc_codec *desc = &duplex_nomixemu; + const struct desc_codec *desc = &duplex_mixemu; if (!a->mixer) { - desc = &duplex_mixemu; + desc = &duplex_nomixemu; } hda_audio_init(hda, desc, errp); @@ -892,10 +892,10 @@ static void hda_audio_init_duplex(HDACodecDevice *hda, Error **errp) static void hda_audio_init_micro(HDACodecDevice *hda, Error **errp) { HDAAudioState *a = HDA_AUDIO(hda); - const struct desc_codec *desc = µ_nomixemu; + const struct desc_codec *desc = µ_mixemu; if (!a->mixer) { - desc = µ_mixemu; + desc = µ_nomixemu; } hda_audio_init(hda, desc, errp);
Commit b7639b7dd0 ("hw/audio: Simplify hda audio init") inverted the sense of hda codec property mixer during initialization. Change the code so that mixer=on enables the hda mixer emulation and mixer=off disables the hda mixer emulation. With this change audio playback and recording streams don't start muted by default. Fixes: b7639b7dd0 ("hw/audio: Simplify hda audio init") Signed-off-by: Volker Rümelin <vr_qemu@t-online.de> --- hw/audio/hda-codec.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)