[ALSA] dynamic minors (4/6): dynamic minor number allocation
Modules: ALSA Core,ALSA Minor Numbers Add an option to allocate device file minor numbers dynamically. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
This commit is contained in:

committed by
Jaroslav Kysela

parent
f87135f56c
commit
332682b1cd
@@ -26,18 +26,20 @@
|
||||
#define SNDRV_MINOR_DEVICE(minor) ((minor) & 0x001f)
|
||||
#define SNDRV_MINOR(card, dev) (((card) << 5) | (dev))
|
||||
|
||||
#define SNDRV_MINOR_CONTROL 0 /* 0 - 0 */
|
||||
/* these minors can still be used for autoloading devices (/dev/aload*) */
|
||||
#define SNDRV_MINOR_CONTROL 0 /* 0 */
|
||||
#define SNDRV_MINOR_GLOBAL 1 /* 1 */
|
||||
#define SNDRV_MINOR_SEQUENCER (SNDRV_MINOR_GLOBAL + 0 * 32)
|
||||
#define SNDRV_MINOR_TIMER (SNDRV_MINOR_GLOBAL + 1 * 32)
|
||||
|
||||
#ifndef CONFIG_SND_DYNAMIC_MINORS
|
||||
/* 2 - 3 (reserved) */
|
||||
#define SNDRV_MINOR_HWDEP 4 /* 4 - 7 */
|
||||
#define SNDRV_MINOR_HWDEPS 4
|
||||
#define SNDRV_MINOR_RAWMIDI 8 /* 8 - 15 */
|
||||
#define SNDRV_MINOR_RAWMIDIS 8
|
||||
#define SNDRV_MINOR_PCM_PLAYBACK 16 /* 16 - 23 */
|
||||
#define SNDRV_MINOR_PCM_CAPTURE 24 /* 24 - 31 */
|
||||
#define SNDRV_MINOR_PCMS 8
|
||||
|
||||
/* same as first respective minor number to make minor allocation easier */
|
||||
#define SNDRV_DEVICE_TYPE_CONTROL SNDRV_MINOR_CONTROL
|
||||
#define SNDRV_DEVICE_TYPE_HWDEP SNDRV_MINOR_HWDEP
|
||||
#define SNDRV_DEVICE_TYPE_RAWMIDI SNDRV_MINOR_RAWMIDI
|
||||
@@ -46,6 +48,25 @@
|
||||
#define SNDRV_DEVICE_TYPE_SEQUENCER SNDRV_MINOR_SEQUENCER
|
||||
#define SNDRV_DEVICE_TYPE_TIMER SNDRV_MINOR_TIMER
|
||||
|
||||
#else /* CONFIG_SND_DYNAMIC_MINORS */
|
||||
|
||||
enum {
|
||||
SNDRV_DEVICE_TYPE_CONTROL,
|
||||
SNDRV_DEVICE_TYPE_SEQUENCER,
|
||||
SNDRV_DEVICE_TYPE_TIMER,
|
||||
SNDRV_DEVICE_TYPE_HWDEP,
|
||||
SNDRV_DEVICE_TYPE_RAWMIDI,
|
||||
SNDRV_DEVICE_TYPE_PCM_PLAYBACK,
|
||||
SNDRV_DEVICE_TYPE_PCM_CAPTURE,
|
||||
};
|
||||
|
||||
#endif /* CONFIG_SND_DYNAMIC_MINORS */
|
||||
|
||||
#define SNDRV_MINOR_HWDEPS 4
|
||||
#define SNDRV_MINOR_RAWMIDIS 8
|
||||
#define SNDRV_MINOR_PCMS 8
|
||||
|
||||
|
||||
#ifdef CONFIG_SND_OSSEMUL
|
||||
|
||||
#define SNDRV_MINOR_OSS_DEVICES 16
|
||||
|
Reference in New Issue
Block a user