Skip to content

Commit

Permalink
[ALSA] dynamic minors (5/6): reduce maximum number of MIDI devices pe…
Browse files Browse the repository at this point in the history
…r card

Modules: ALSA sequencer,Generic drivers

To allow increasing the maximum number of sound cards, we have to limit
the number of sequencer clients per card because client numbers are
still allocated statically.

Reducing the number of clients to four limits the number of sequencer
MIDI ports to 1024 per card.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
  • Loading branch information
Clemens Ladisch authored and Jaroslav Kysela committed Jan 3, 2006
1 parent 332682b commit 204bdb1
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 5 deletions.
6 changes: 3 additions & 3 deletions sound/core/seq/seq_clientmgr.c
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ struct snd_seq_client *snd_seq_client_use_ptr(int clientid)
}
}
} else if (clientid >= 64 && clientid < 128) {
int card = (clientid - 64) / 8;
int card = (clientid - 64) / 4;
if (card < snd_ecards_limit) {
if (! card_requested[card]) {
card_requested[card] = 1;
Expand Down Expand Up @@ -2208,12 +2208,12 @@ int snd_seq_create_kernel_client(struct snd_card *card, int client_index,

if (callback == NULL)
return -EINVAL;
if (card && client_index > 7)
if (card && client_index > 3)
return -EINVAL;
if (card == NULL && client_index > 63)
return -EINVAL;
if (card)
client_index += 64 + (card->number << 3);
client_index += 64 + (card->number << 2);

if (down_interruptible(&register_mutex))
return -ERESTARTSYS;
Expand Down
4 changes: 2 additions & 2 deletions sound/drivers/virmidi.c
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ MODULE_DESCRIPTION("Dummy soundcard for virtual rawmidi devices");
MODULE_LICENSE("GPL");
MODULE_SUPPORTED_DEVICE("{{ALSA,Virtual rawmidi device}}");

#define MAX_MIDI_DEVICES 8
#define MAX_MIDI_DEVICES 4

static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX; /* Index 0-MAX */
static char *id[SNDRV_CARDS] = SNDRV_DEFAULT_STR; /* ID for this card */
Expand All @@ -75,7 +75,7 @@ MODULE_PARM_DESC(id, "ID string for virmidi soundcard.");
module_param_array(enable, bool, NULL, 0444);
MODULE_PARM_DESC(enable, "Enable this soundcard.");
module_param_array(midi_devs, int, NULL, 0444);
MODULE_PARM_DESC(midi_devs, "MIDI devices # (1-8)");
MODULE_PARM_DESC(midi_devs, "MIDI devices # (1-4)");

struct snd_card_virmidi {
struct snd_card *card;
Expand Down

0 comments on commit 204bdb1

Please sign in to comment.