On 01/04/2013 05:02 PM, David Henningsson wrote:
A patch in the 3.2 kernel caused regression with hotplugging the M-Audio Fast track pro, or sound after suspend. I don't have the device so I haven't done a full analysis, but it seems userspace (both udev and pulseaudio) got confused when a card was created, immediately destroyed, and then created again.
Since there were no counter proposal patches and the below code actually fixes a problem for users, would you mind committing it?
However, at least one person in the bug report (martin djfun) reports that this patch resolves the issue for him. It also leaves a message in the log: "snd-usb-audio: probe of 1-1.1:1.1 failed with error -5" which is a bit misleading. It is better than non-working audio, but maybe there's a more elegant solution?
BugLink: https://bugs.launchpad.net/bugs/1095315 Signed-off-by: David Henningsson david.henningsson@canonical.com
sound/usb/quirks.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
...oh, and if you end up taking this patch as it is, you should probably add cc to stable (3.2+).
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c index acc12f0..e71fc8b 100644 --- a/sound/usb/quirks.c +++ b/sound/usb/quirks.c @@ -387,11 +387,13 @@ static int snd_usb_fasttrackpro_boot_quirk(struct usb_device *dev) * rules */ err = usb_driver_set_configuration(dev, 2);
if (err < 0) {
if (err < 0) snd_printdd("error usb_driver_set_configuration: %d\n", err);
return -ENODEV;
}
/* Always return an error, so that we stop creating a device
that will just be destroyed and recreated with a new
configuration */
} else snd_printk(KERN_INFO "usb-audio: Fast Track Pro config OK\n");return -ENODEV;