diff options
| author | Mark Brown <[email protected]> | 2015-10-12 18:09:27 +0100 | 
|---|---|---|
| committer | Mark Brown <[email protected]> | 2015-10-12 18:09:27 +0100 | 
| commit | 79828b4fa835f73cdaf4bffa48696abdcbea9d02 (patch) | |
| tree | 5e0fa7156acb75ba603022bc807df8f2fedb97a8 /drivers/usb/gadget/function/f_midi.c | |
| parent | 721b51fcf91898299d96f4b72cb9434cda29dce6 (diff) | |
| parent | 8c1a9d6323abf0fb1e5dad96cf3f1c783505ea5a (diff) | |
Merge remote-tracking branch 'asoc/fix/rt5645' into asoc-fix-rt5645
Diffstat (limited to 'drivers/usb/gadget/function/f_midi.c')
| -rw-r--r-- | drivers/usb/gadget/function/f_midi.c | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/usb/gadget/function/f_midi.c b/drivers/usb/gadget/function/f_midi.c index 6316aa5b1c49..a287a4829273 100644 --- a/drivers/usb/gadget/function/f_midi.c +++ b/drivers/usb/gadget/function/f_midi.c @@ -329,6 +329,10 @@ static int f_midi_set_alt(struct usb_function *f, unsigned intf, unsigned alt)  	unsigned i;  	int err; +	/* For Control Device interface we do nothing */ +	if (intf == 0) +		return 0; +  	err = f_midi_start_ep(midi, f, midi->in_ep);  	if (err)  		return err; @@ -1145,7 +1149,7 @@ static struct usb_function *f_midi_alloc(struct usb_function_instance *fi)  	if (opts->id && !midi->id) {  		status = -ENOMEM;  		mutex_unlock(&opts->lock); -		goto kstrdup_fail; +		goto setup_fail;  	}  	midi->in_ports = opts->in_ports;  	midi->out_ports = opts->out_ports; @@ -1164,8 +1168,6 @@ static struct usb_function *f_midi_alloc(struct usb_function_instance *fi)  	return &midi->func; -kstrdup_fail: -	f_midi_unregister_card(midi);  setup_fail:  	for (--i; i >= 0; i--)  		kfree(midi->in_port[i]);  |