diff --git a/sound/usb/card.c b/sound/usb/card.c index 893d5a1afc3ce6bf854a61ef0c3f4f54cc552d0d..e769d39777164f8d898991f3b3d7b005102c3bf8 100644 --- a/sound/usb/card.c +++ b/sound/usb/card.c @@ -695,8 +695,9 @@ static int usb_audio_suspend(struct usb_interface *intf, pm_message_t message) chip->autosuspended = 1; } - list_for_each_entry(mixer, &chip->mixer_list, list) - snd_usb_mixer_suspend(mixer); + if (chip->num_suspended_intf == 1) + list_for_each_entry(mixer, &chip->mixer_list, list) + snd_usb_mixer_suspend(mixer); return 0; }