[alsa-devel] Device creation order

Lennart Poettering mznyfn at 0pointer.de
Fri Apr 3 13:56:47 CEST 2009

On Fri, 03.04.09 09:38, Clemens Ladisch (clemens at ladisch.de) wrote:

> > - dynamic device creation at runtime - for example we have an
> >    experimental HDA driver configuration code which might change
> >    the arrangement of PCM devices on request from the user space
> > 
> > I would suggest to wait awhile with some small timeout (0.5 sec?) for all 
> > devices to get the usual static arrangement working and handle extra
> > dynamic cases, too.
> The current implementation of the ALSA framework guarantees that the
> control device file is that latest one to be created for all the devices
> created at initialization.  Any devices created later depend on some
> userspace action, so a small timeout won't help in this case.
> In other words:
> 1) When the control device file has been created, all other devices
>    (that are created during sound card initialization) are
>    available.

OK. Very good. I'll then change PA to rely on this behaviour and hope
that this is considered part of the ALSA userspace API and is not
changed in the future...

> 2) When some device file for a specific sound card is created after the
>    card's control device, the sound card configuration has changed.

I'll ignore this for now since Jaroslav mentioned drivers doing this
are still experimental. But eventually we'd need to know some kind of
'end notification' for this as well: i..e if the reconfiguration
causes multiple device nodes to disappear/appear we also need to know
when they are all complete. A possible simple fix would be to issue an
udev 'change' event on the control device after the reconfiguration


Lennart Poettering                        Red Hat, Inc.
lennart [at] poettering [dot] net         ICQ# 11060553
http://0pointer.net/lennart/           GnuPG 0x1A015CC4

More information about the Alsa-devel mailing list