[alsa-devel] [PATCH 4/4] ALSA: hdspm - Fix midi port initialization

Adrian Knoth adi at drcomp.erfurt.thur.de
Mon Feb 28 15:14:50 CET 2011


Depending on the model and the presence of a TCO module, the number of
midi ports varies. Some have 1 port (MADIface), some have 2 (default),
with TCO, there are 3.

Don't hardcode the number of midi ports to initialize.

This patch also fixes a boot lockup on MADIface.

Signed-off-by: Adrian Knoth <adi at drcomp.erfurt.thur.de>

diff --git a/sound/pci/rme9652/hdspm.c b/sound/pci/rme9652/hdspm.c
index 78f6ab5..3224766 100644
--- a/sound/pci/rme9652/hdspm.c
+++ b/sound/pci/rme9652/hdspm.c
@@ -6291,8 +6291,11 @@ static int __devinit snd_hdspm_create_pcm(struct snd_card *card,
 
 static inline void snd_hdspm_initialize_midi_flush(struct hdspm * hdspm)
 {
-	snd_hdspm_flush_midi_input(hdspm, 0);
-	snd_hdspm_flush_midi_input(hdspm, 1);
+	int i;
+
+	for (i=0; i < hdspm->midiPorts; i++) {
+		snd_hdspm_flush_midi_input(hdspm, i);
+	}
 }
 
 static int __devinit snd_hdspm_create_alsa_devices(struct snd_card *card,
-- 
1.7.4.1



More information about the Alsa-devel mailing list