瀏覽代碼

ALSA: sound: usbmidi: Use hweight16

Use hweight16 instead of Brian Kernighan's/Peter Wegner's method

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Akinobu Mita 15 年之前
父節點
當前提交
fbc543915f
共有 1 個文件被更改,包括 2 次插入11 次删除
  1. 2 11
      sound/usb/usbmidi.c

+ 2 - 11
sound/usb/usbmidi.c

@@ -1062,15 +1062,6 @@ static int snd_usbmidi_in_endpoint_create(struct snd_usb_midi* umidi,
 	return 0;
 	return 0;
 }
 }
 
 
-static unsigned int snd_usbmidi_count_bits(unsigned int x)
-{
-	unsigned int bits;
-
-	for (bits = 0; x; ++bits)
-		x &= x - 1;
-	return bits;
-}
-
 /*
 /*
  * Frees an output endpoint.
  * Frees an output endpoint.
  * May be called when ep hasn't been initialized completely.
  * May be called when ep hasn't been initialized completely.
@@ -1914,8 +1905,8 @@ int snd_usb_create_midi_interface(struct snd_usb_audio* chip,
 	out_ports = 0;
 	out_ports = 0;
 	in_ports = 0;
 	in_ports = 0;
 	for (i = 0; i < MIDI_MAX_ENDPOINTS; ++i) {
 	for (i = 0; i < MIDI_MAX_ENDPOINTS; ++i) {
-		out_ports += snd_usbmidi_count_bits(endpoints[i].out_cables);
-		in_ports += snd_usbmidi_count_bits(endpoints[i].in_cables);
+		out_ports += hweight16(endpoints[i].out_cables);
+		in_ports += hweight16(endpoints[i].in_cables);
 	}
 	}
 	err = snd_usbmidi_create_rawmidi(umidi, out_ports, in_ports);
 	err = snd_usbmidi_create_rawmidi(umidi, out_ports, in_ports);
 	if (err < 0) {
 	if (err < 0) {