[alsa-devel] [PATCH] sound: usbmidi: Use hweight16

Takashi Iwai tiwai at suse.de
Fri Nov 20 09:57:11 CET 2009


At Fri, 20 Nov 2009 14:56:52 +0900,
Akinobu Mita wrote:
> 
> Use hweight16 instead of Brian Kernighan's/Peter Wegner's method
> 
> Signed-off-by: Akinobu Mita <akinobu.mita at gmail.com>

Applied now.  Thanks!


Takashi


> Cc: Jaroslav Kysela <perex at perex.cz>
> Cc: Takashi Iwai <tiwai at suse.de>
> Cc: alsa-devel at alsa-project.org
> Cc: Clemens Ladisch <clemens at ladisch.de>
> ---
>  sound/usb/usbmidi.c |   13 ++-----------
>  1 files changed, 2 insertions(+), 11 deletions(-)
> 
> diff --git a/sound/usb/usbmidi.c b/sound/usb/usbmidi.c
> index 0eff19c..e5b0689 100644
> --- a/sound/usb/usbmidi.c
> +++ b/sound/usb/usbmidi.c
> @@ -1062,15 +1062,6 @@ static int snd_usbmidi_in_endpoint_create(struct snd_usb_midi* umidi,
>  	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.
>   * 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;
>  	in_ports = 0;
>  	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);
>  	if (err < 0) {
> -- 
> 1.6.5.1
> 
 


More information about the Alsa-devel mailing list