linux/sound/core
Pawel MOLL f90c06a2b6 ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
When compiled with CONFIG_SND_DYNAMIC_MINORS the ALSA core is fine
to have more than 8 PCM devices per card, except one place - the
SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE ioctl, which will not enumerate
devices > 7. This patch fixes the issue, changing the devices list
organisation.

Instead of adding new device to the tail, the list is now kept always
ordered (by card number, then device number). Thus, during enumeration,
it is easy to discover the fact that there is no more given card's
devices.

Additionally the device field of struct snd_pcm had to be changed to int,
as its "unsignednity" caused a lot of problems when comparing it to
potentially negative signed values. (-1 is 0xffffffff or even more then ;-)

Signed-off-by: Pawel Moll <pawel.moll@st.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-08-01 13:37:15 +02:00
..
oss sound: Revert "ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE" 2008-08-01 13:36:04 +02:00
seq sound: ensure device number is valid in snd_seq_oss_synth_make_info 2008-08-04 17:03:26 -07:00
control.c ALSA: make snd_ctl_elem_read() and snd_ctl_elem_write() static 2008-06-13 16:48:49 +02:00
control_compat.c
device.c
hwdep.c
hwdep_compat.c
info.c PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architectures 2008-07-24 10:47:21 -07:00
info_oss.c
init.c device create: sound: convert device_create to device_create_drvdata 2008-07-21 21:54:44 -07:00
isadma.c
jack.c ALSA: Add jack reporting API 2008-07-29 21:32:03 +02:00
Kconfig ALSA: Build jack detection 2008-07-29 21:32:06 +02:00
Makefile ALSA: Build jack detection 2008-07-29 21:32:06 +02:00
memalloc.c [ALSA] Remove unneeded ugly hack for i386 in memalloc.c 2008-05-19 13:19:15 +02:00
memory.c
misc.c [ALSA] sound: this amplifier only goes up to 7 2008-04-24 12:00:35 +02:00
pcm.c ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE 2008-08-01 13:37:15 +02:00
pcm_compat.c
pcm_lib.c
pcm_memory.c
pcm_misc.c
pcm_native.c ALSA: remove unneeded power_mutex lock in snd_pcm_drop 2008-09-25 17:52:07 +02:00
pcm_timer.c
rawmidi.c ALSA: fix locking in snd_pcm_open*() and snd_rawmidi_open*() 2008-09-25 14:51:03 +02:00
rawmidi_compat.c
rtctimer.c
sgbuf.c
sound.c ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE 2008-08-01 13:37:15 +02:00
sound_oss.c
timer.c ALSA: remove CONFIG_KMOD from sound 2008-07-10 09:32:58 +02:00
timer_compat.c
vmaster.c [ALSA] Keep private TLV entry in vmaster itself 2008-04-24 12:00:12 +02:00