Re: Device creation order

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 3 Apr 2009, Lennart Poettering wrote:

> Heya!
>
> PulseAudio listens for hotplugged audio devices via hal/udev. For each
> card ALSA creates a bunch of device nodes in /dev. Before PA can open
> the card it needs to make sure that all devices nodes of the card got
> properly created. I.e. to make sure that surround sound and SPDIF
> works it is not sufficient to wait until one PCM device is available,
> but instead that *all* devices that belong to the card are available,
> i.e. device nodes created with permissions and ACLs set up
> correctly. Unfortunately there is no signal from udev/hal/kernel that
> would tell me explicitly that all subdevices of a specific devices are
> completely enumerated and device files created for. I have been
> discussing this a bit with Kay Sievers and we came to the conclusion
> that a simple fix would be if we could rely that the control
> (i.e. /dev/snd/controlCxx) device is always the last device to be
> created for a card.
>
> Looking at the drivers this seems to be generally the case, so I was
> wondering if I can rely on this? Do all drivers behave like this? Do
> all drivers expose a control device? Can we officially declare it part
> of the userspace API that the control device is the last one to be
> created?

Unfortunately, driver may use more complex scenarios like:

- some hardware requires additional firmware - in this case devices
   might be created, but they are not useable until firmware is loaded
- 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.

 						Jaroslav

-----
Jaroslav Kysela <perex@xxxxxxxx>
Linux Kernel Sound Maintainer
ALSA Project, Red Hat, Inc.

_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux