diff options
| -rw-r--r-- | sound/pci/hda/hda_intel.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c index eb88c528e120..1da8a5c9b9e1 100644 --- a/sound/pci/hda/hda_intel.c +++ b/sound/pci/hda/hda_intel.c | |||
| @@ -2630,6 +2630,9 @@ static int azx_suspend(struct device *dev) | |||
| 2630 | struct azx *chip = card->private_data; | 2630 | struct azx *chip = card->private_data; |
| 2631 | struct azx_pcm *p; | 2631 | struct azx_pcm *p; |
| 2632 | 2632 | ||
| 2633 | if (chip->disabled) | ||
| 2634 | return 0; | ||
| 2635 | |||
| 2633 | snd_power_change_state(card, SNDRV_CTL_POWER_D3hot); | 2636 | snd_power_change_state(card, SNDRV_CTL_POWER_D3hot); |
| 2634 | azx_clear_irq_pending(chip); | 2637 | azx_clear_irq_pending(chip); |
| 2635 | list_for_each_entry(p, &chip->pcm_list, list) | 2638 | list_for_each_entry(p, &chip->pcm_list, list) |
| @@ -2655,6 +2658,9 @@ static int azx_resume(struct device *dev) | |||
| 2655 | struct snd_card *card = dev_get_drvdata(dev); | 2658 | struct snd_card *card = dev_get_drvdata(dev); |
| 2656 | struct azx *chip = card->private_data; | 2659 | struct azx *chip = card->private_data; |
| 2657 | 2660 | ||
| 2661 | if (chip->disabled) | ||
| 2662 | return 0; | ||
| 2663 | |||
| 2658 | pci_set_power_state(pci, PCI_D0); | 2664 | pci_set_power_state(pci, PCI_D0); |
| 2659 | pci_restore_state(pci); | 2665 | pci_restore_state(pci); |
| 2660 | if (pci_enable_device(pci) < 0) { | 2666 | if (pci_enable_device(pci) < 0) { |
