diff options
Diffstat (limited to 'sound/usb/card.c')
| -rw-r--r-- | sound/usb/card.c | 18 | 
1 files changed, 2 insertions, 16 deletions
diff --git a/sound/usb/card.c b/sound/usb/card.c index da1346bd485..7a8ac1d81be 100644 --- a/sound/usb/card.c +++ b/sound/usb/card.c @@ -236,7 +236,6 @@ static int snd_usb_create_streams(struct snd_usb_audio *chip, int ctrlif)  	}  	case UAC_VERSION_2: { -		struct uac_clock_source_descriptor *cs;  		struct usb_interface_assoc_descriptor *assoc =  			usb_ifnum_to_if(dev, ctrlif)->intf_assoc; @@ -245,21 +244,6 @@ static int snd_usb_create_streams(struct snd_usb_audio *chip, int ctrlif)  			return -EINVAL;  		} -		/* FIXME: for now, we expect there is at least one clock source -		 * descriptor and we always take the first one. -		 * We should properly support devices with multiple clock sources, -		 * clock selectors and sample rate conversion units. */ - -		cs = snd_usb_find_csint_desc(host_iface->extra, host_iface->extralen, -						NULL, UAC2_CLOCK_SOURCE); - -		if (!cs) { -			snd_printk(KERN_ERR "CLOCK_SOURCE descriptor not found\n"); -			return -EINVAL; -		} - -		chip->clock_id = cs->bClockID; -  		for (i = 0; i < assoc->bInterfaceCount; i++) {  			int intf = assoc->bFirstInterface + i; @@ -481,6 +465,8 @@ static void *snd_usb_audio_probe(struct usb_device *dev,  			goto __error;  	} +	chip->ctrl_intf = alts; +  	if (err > 0) {  		/* create normal USB audio interfaces */  		if (snd_usb_create_streams(chip, ifnum) < 0 ||  |