Lines 1027-1033
static int azx_suspend(struct device *dev)
Link Here
|
1027 |
chip = card->private_data; |
1027 |
chip = card->private_data; |
1028 |
bus = azx_bus(chip); |
1028 |
bus = azx_bus(chip); |
1029 |
snd_power_change_state(card, SNDRV_CTL_POWER_D3hot); |
1029 |
snd_power_change_state(card, SNDRV_CTL_POWER_D3hot); |
1030 |
__azx_runtime_suspend(chip); |
1030 |
pm_runtime_force_suspend(dev); |
1031 |
if (bus->irq >= 0) { |
1031 |
if (bus->irq >= 0) { |
1032 |
free_irq(bus->irq, chip); |
1032 |
free_irq(bus->irq, chip); |
1033 |
bus->irq = -1; |
1033 |
bus->irq = -1; |
Lines 1055-1061
static int azx_resume(struct device *dev)
Link Here
|
1055 |
chip->msi = 0; |
1055 |
chip->msi = 0; |
1056 |
if (azx_acquire_irq(chip, 1) < 0) |
1056 |
if (azx_acquire_irq(chip, 1) < 0) |
1057 |
return -EIO; |
1057 |
return -EIO; |
1058 |
__azx_runtime_resume(chip, false); |
1058 |
pm_runtime_force_resume(dev); |
1059 |
snd_power_change_state(card, SNDRV_CTL_POWER_D0); |
1059 |
snd_power_change_state(card, SNDRV_CTL_POWER_D0); |
1060 |
|
1060 |
|
1061 |
trace_azx_resume(chip); |
1061 |
trace_azx_resume(chip); |
Lines 2005-2011
static int azx_first_init(struct azx *chip)
Link Here
|
2005 |
/* codec detection */ |
2005 |
/* codec detection */ |
2006 |
if (!azx_bus(chip)->codec_mask) { |
2006 |
if (!azx_bus(chip)->codec_mask) { |
2007 |
dev_err(card->dev, "no codecs found!\n"); |
2007 |
dev_err(card->dev, "no codecs found!\n"); |
2008 |
return -ENODEV; |
2008 |
/* keep running the rest for the runtime PM */ |
2009 |
} |
2009 |
} |
2010 |
|
2010 |
|
2011 |
if (azx_acquire_irq(chip, 0) < 0) |
2011 |
if (azx_acquire_irq(chip, 0) < 0) |
Lines 2292-2300
static int azx_probe_continue(struct azx *chip)
Link Here
|
2292 |
#endif |
2292 |
#endif |
2293 |
|
2293 |
|
2294 |
/* create codec instances */ |
2294 |
/* create codec instances */ |
2295 |
err = azx_probe_codecs(chip, azx_max_codecs[chip->driver_type]); |
2295 |
if (bus->codec_mask) { |
2296 |
if (err < 0) |
2296 |
err = azx_probe_codecs(chip, azx_max_codecs[chip->driver_type]); |
2297 |
goto out_free; |
2297 |
if (err < 0) |
|
|
2298 |
goto out_free; |
2299 |
} |
2298 |
|
2300 |
|
2299 |
#ifdef CONFIG_SND_HDA_PATCH_LOADER |
2301 |
#ifdef CONFIG_SND_HDA_PATCH_LOADER |
2300 |
if (chip->fw) { |
2302 |
if (chip->fw) { |
Lines 2308-2314
static int azx_probe_continue(struct azx *chip)
Link Here
|
2308 |
#endif |
2310 |
#endif |
2309 |
} |
2311 |
} |
2310 |
#endif |
2312 |
#endif |
2311 |
if ((probe_only[dev] & 1) == 0) { |
2313 |
if (bus->codec_mask && !(probe_only[dev] & 1)) { |
2312 |
err = azx_codec_configure(chip); |
2314 |
err = azx_codec_configure(chip); |
2313 |
if (err < 0) |
2315 |
if (err < 0) |
2314 |
goto out_free; |
2316 |
goto out_free; |