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