All of lore.kernel.org
 help / color / mirror / Atom feed
* static /dev configuration
@ 2012-03-19  5:38 Bob Tracy
  2012-03-19  8:22 ` Clemens Ladisch
  0 siblings, 1 reply; 3+ messages in thread
From: Bob Tracy @ 2012-03-19  5:38 UTC (permalink / raw)
  To: alsa-devel

Does ALSA now require dynamic devices (udev) for certain soundcards
(specifically, cards handled by the snd-hda-intel driver)?

My problem is that I moved a Slackware installation to new hardware, and
the old devices under /dev/snd I originally created back in 2003 don't
seem to work correctly with snd-hda-intel.  "lspci" shows my new system
having two audio devices as follows:

00:1b.0 Audio device: Intel Corporation Cougar Point High Definition Audio Controller (rev 04)
01:00.1 Audio device: ATI Technologies Inc Device aa60

(The ATI entry corresponds to a DisplayPort output on a Radeon graphics
card that isn't presently of interest to me: REDWOOD firmware.)

I had an opportunity to boot a modern Linux distro with udev support
that accesses the Intel audio device just fine, so I took note of the
device entries under /dev/snd and replicated those on the Slackware
setup as follows (ignore the "root" group and 666 permissions rather
than the more correct "audio" group and 660 permissions):

crw-rw-rw- 1 root root 116,  9 Mar 18 00:24 controlC0
crw-rw-rw- 1 root root 116, 12 Mar 18 00:26 controlC1
crw-rw-rw- 1 root root 116,  8 Mar 18 00:27 hwC0D2
crw-rw-rw- 1 root root 116,  7 Jun 18  2003 hwC0D3
crw-rw-rw- 1 root root 116, 11 Mar 18 00:30 hwC1D0
crw-rw-rw- 1 root root 116,  6 Mar 18 00:34 pcmC0D0c
crw-rw-rw- 1 root root 116,  5 Mar 18 20:44 pcmC0D0p
crw-rw-rw- 1 root root 116,  4 Mar 18 00:36 pcmC0D1p
crw-rw-rw- 1 root root 116,  3 Mar 18 00:39 pcmC0D2c
crw-rw-rw- 1 root root 116,  2 Mar 18 00:44 pcmC0D3p
crw-rw-rw- 1 root root 116, 10 Mar 18 00:42 pcmC1D3p
crw-rw-rw- 1 root root 116,  1 Jun 18  2003 seq
crw-rw-rw- 1 root root 116, 33 Jun 18  2003 timer

Not all that surprisingly, the above entries work: "alsamixer" and
"aplay" do what I expect and seem to work correctly.

Note that the minor device numbers are NOT the same as what the
"snddevices" script in "alsa-driver-1.0.25" creates (and that script
creates pretty much exactly what I had in my static /dev tree back in
2003).  According to "snddevices", the "controlCn" devices should have
minor numbers 0, 32, 64, etc.  The "hwC0Dn" minors are 4, 5, etc.,
"hwC1Dn" minors are 36, 37, etc., "hwC2Dn" minors are 68, 69, etc.
Note that "hwC0D3" is at minor 7 where it should be under the old minor
device numbering scheme, but "hwC0D2" is at minor 8 where 6 was
expected.  The various "pcm*" devices were expected to be as follows:

crw-rw-rw- 1 root root 116,  24 Jun 18  2003 pcmC0D0c
crw-rw-rw- 1 root root 116,  16 Mar  3 20:50 pcmC0D0p
crw-rw-rw- 1 root root 116,  25 Jun 18  2003 pcmC0D1c
crw-rw-rw- 1 root root 116,  17 Jun 18  2003 pcmC0D1p
crw-rw-rw- 1 root root 116,  26 Jun 18  2003 pcmC0D2c
crw-rw-rw- 1 root root 116,  18 Jun 18  2003 pcmC0D2p
crw-rw-rw- 1 root root 116,  27 Jun 18  2003 pcmC0D3c
crw-rw-rw- 1 root root 116,  19 Jun 18  2003 pcmC0D3p
crw-rw-rw- 1 root root 116,  56 Jun 18  2003 pcmC1D0c
crw-rw-rw- 1 root root 116,  48 Jun 18  2003 pcmC1D0p
crw-rw-rw- 1 root root 116,  57 Jun 18  2003 pcmC1D1c
crw-rw-rw- 1 root root 116,  49 Jun 18  2003 pcmC1D1p
crw-rw-rw- 1 root root 116,  58 Jun 18  2003 pcmC1D2c
crw-rw-rw- 1 root root 116,  50 Jun 18  2003 pcmC1D2p
crw-rw-rw- 1 root root 116,  59 Jun 18  2003 pcmC1D3c
crw-rw-rw- 1 root root 116,  51 Jun 18  2003 pcmC1D3p

I'm thinking the only reason I'm getting away with using any kind of
static device scheme is that my sound devices are getting detected and
initialized in a consistent order each time I boot, and the /dev/snd
entries I copied from the udev-enabled system just happen to agree with
what "udev" would consistently create if I had "udev" installed.

So, just to restate the original question for clarity, is "udev"
required for certain soundcards?

Thanks!
--Bob

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: static /dev configuration
  2012-03-19  5:38 static /dev configuration Bob Tracy
@ 2012-03-19  8:22 ` Clemens Ladisch
  2012-03-19 12:20   ` Bob Tracy
  0 siblings, 1 reply; 3+ messages in thread
From: Clemens Ladisch @ 2012-03-19  8:22 UTC (permalink / raw)
  To: Bob Tracy; +Cc: alsa-devel

Bob Tracy wrote:
> Does ALSA now require dynamic devices (udev)

It does if the kernel is compiled with CONFIG_SND_DYNAMIC_MINORS.


Regards,
Clemens

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: static /dev configuration
  2012-03-19  8:22 ` Clemens Ladisch
@ 2012-03-19 12:20   ` Bob Tracy
  0 siblings, 0 replies; 3+ messages in thread
From: Bob Tracy @ 2012-03-19 12:20 UTC (permalink / raw)
  To: Clemens Ladisch; +Cc: alsa-devel

On Mon, Mar 19, 2012 at 09:22:43AM +0100, Clemens Ladisch wrote:
> Bob Tracy wrote:
> > Does ALSA now require dynamic devices (udev)
> 
> It does if the kernel is compiled with CONFIG_SND_DYNAMIC_MINORS.

SND_HDA_CODEC_HDMI forces SND_DYNAMIC_MINORS :-(.

SND_HDA_CODEC_HDMI --> "Build HDMI/DisplayPort HD-audio codec support"
    Say Y here to include HDMI and DisplayPort HD-audio codec
    support in snd-hda-intel driver.  This includes all AMD/ATI,
    Intel and Nvidia HDMI/DisplayPort codecs.

I knew I didn't explicitly select SND_DYNAMIC_MINORS...  Thanks for the
pointer.

--Bob

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-03-19 12:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-19  5:38 static /dev configuration Bob Tracy
2012-03-19  8:22 ` Clemens Ladisch
2012-03-19 12:20   ` Bob Tracy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.