diff options
author | Daniel Mack <zonque@gmail.com> | 2013-03-17 13:07:24 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2013-03-18 08:47:04 +0100 |
commit | 2fcdb06d4919da89ed6d52742dcc83ae4669ac30 (patch) | |
tree | 02cefac4b439af920296a6e9d6a0655ef0bc5dee /sound/usb/format.c | |
parent | ALSA: usb-audio: Trust fields given in the quirk (diff) | |
download | linux-2fcdb06d4919da89ed6d52742dcc83ae4669ac30.tar.xz linux-2fcdb06d4919da89ed6d52742dcc83ae4669ac30.zip |
ALSA: snd-usb: handle the bmFormats field as unsigned int
This field may use up to 32 bits, so it should be handled as unsigned
int.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Reported-by: Andreas Koch <andreas@akdesigninc.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb/format.c')
-rw-r--r-- | sound/usb/format.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/sound/usb/format.c b/sound/usb/format.c index e831ee4238bb..b30d6fb89b40 100644 --- a/sound/usb/format.c +++ b/sound/usb/format.c @@ -43,7 +43,7 @@ */ static u64 parse_audio_format_i_type(struct snd_usb_audio *chip, struct audioformat *fp, - int format, void *_fmt, + unsigned int format, void *_fmt, int protocol) { int sample_width, sample_bytes; @@ -353,7 +353,7 @@ err: * parse the format type I and III descriptors */ static int parse_audio_format_i(struct snd_usb_audio *chip, - struct audioformat *fp, int format, + struct audioformat *fp, unsigned int format, struct uac_format_type_i_continuous_descriptor *fmt, struct usb_host_interface *iface) { @@ -473,8 +473,9 @@ static int parse_audio_format_ii(struct snd_usb_audio *chip, return ret; } -int snd_usb_parse_audio_format(struct snd_usb_audio *chip, struct audioformat *fp, - int format, struct uac_format_type_i_continuous_descriptor *fmt, +int snd_usb_parse_audio_format(struct snd_usb_audio *chip, + struct audioformat *fp, unsigned int format, + struct uac_format_type_i_continuous_descriptor *fmt, int stream, struct usb_host_interface *iface) { int err; |