On Mon, Jun 22, 2020 at 03:22:05PM +0200, Paolo Bonzini wrote: > On 22/06/20 14:59, Thomas Huth wrote: > >> +static int pcspk_audio_init_soundhw(ISABus *bus) > >> +{ > >> + PCSpkState *s = pcspk_state; > >> + > >> + warn_report("'-soundhw pcspk' is deprecated, " > >> + "please set a backend using '-global isa-pcspk.audiodev=<name>' instead"); > >> + return pcspk_audio_init(s); > >> +} > > While "-soundhw pcspk" is quite easy to use for the average user, I > > think the "-global" options will be quite hard to figure out, especially > > once this deprecation message got removed again when -soundhw has been > > deleted. Could you maybe add a description how to configure the > > pc-speaker to docs/system/target-i386-desc.rst.inc, too? > > -nic is an example of how a single option can work great for both > built-in and custom devices, and perhaps we could design something like > that for audio. For example you could have > > # configure a builtin or default audio device > # and an ALSA audiodev > -sound alsa > > # configure an external audio device and a PA audiodev > # options other than "model" go to audiodev > -sound pa,model=sb16,fixed-settings=off > > For more information: https://www.qemu.org/2018/05/31/nic-parameter/ > > I think we can go ahead with the deprecation, but -global and -device > are probably not good enough a replacement for actual removal. -global is temporary, see patch 19/19 (guess I should reorder the series and squash 19/19 to fix that confusion). The plan is to have audio work simliar to block. -audiodev creates a backend (like -blockdev). Properties are used to reference them. Device properties in most cases, machine properties for builtin devices (i.e. pcspk works like pflash then). take care, Gerd