summaryrefslogtreecommitdiffstats
path: root/sound/usb/usbmidi.c
diff options
context:
space:
mode:
authorJeff Garzik <jeff@garzik.org>2006-03-24 09:24:04 -0500
committerJeff Garzik <jeff@garzik.org>2006-03-24 09:24:04 -0500
commit11ed56fb7899f9eb9eaef8e5919db1bf08f1b07e (patch)
treeb01421cb139b11065d776ed361a7a12b3a1aecc9 /sound/usb/usbmidi.c
parent54da9a3968448681d0ddf193ec90f2480c5cba1c (diff)
parent2cc432eed0491df66e14b578139bba2c75fb3f9a (diff)
downloadtalos-obmc-linux-11ed56fb7899f9eb9eaef8e5919db1bf08f1b07e.tar.gz
talos-obmc-linux-11ed56fb7899f9eb9eaef8e5919db1bf08f1b07e.zip
Merge branch 'upstream'
Conflicts: drivers/scsi/sata_vsc.c
Diffstat (limited to 'sound/usb/usbmidi.c')
-rw-r--r--sound/usb/usbmidi.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sound/usb/usbmidi.c b/sound/usb/usbmidi.c
index f15b021c3ce8..2b9d940c8064 100644
--- a/sound/usb/usbmidi.c
+++ b/sound/usb/usbmidi.c
@@ -871,10 +871,10 @@ static int snd_usbmidi_in_endpoint_create(struct snd_usb_midi* umidi,
static unsigned int snd_usbmidi_count_bits(unsigned int x)
{
- unsigned int bits = 0;
+ unsigned int bits;
- for (; x; x >>= 1)
- bits += x & 1;
+ for (bits = 0; x; ++bits)
+ x &= x - 1;
return bits;
}
@@ -1082,6 +1082,8 @@ static struct {
{ USB_ID(0x0582, 0x004d), 0, "%s MIDI" },
{ USB_ID(0x0582, 0x004d), 1, "%s 1" },
{ USB_ID(0x0582, 0x004d), 2, "%s 2" },
+ /* Edirol UM-3EX */
+ { USB_ID(0x0582, 0x009a), 3, "%s Control" },
/* M-Audio MidiSport 8x8 */
{ USB_ID(0x0763, 0x1031), 8, "%s Control" },
{ USB_ID(0x0763, 0x1033), 8, "%s Control" },
@@ -1574,7 +1576,7 @@ int snd_usb_create_midi_interface(struct snd_usb_audio* chip,
sizeof(struct snd_usb_midi_endpoint_info));
err = snd_usbmidi_detect_endpoints(umidi, &endpoints[0], 1);
break;
- case QUIRK_MIDI_MIDITECH:
+ case QUIRK_MIDI_CME:
err = snd_usbmidi_detect_per_port_endpoints(umidi, endpoints);
break;
default:
OpenPOWER on IntegriCloud