|
@@ -1235,7 +1235,8 @@ static int azx_setup_periods(struct azx *chip,
|
|
|
pos_adj = 0;
|
|
|
} else {
|
|
|
ofs = setup_bdle(substream, azx_dev,
|
|
|
- &bdl, ofs, pos_adj, 1);
|
|
|
+ &bdl, ofs, pos_adj,
|
|
|
+ !substream->runtime->no_period_wakeup);
|
|
|
if (ofs < 0)
|
|
|
goto error;
|
|
|
}
|
|
@@ -1247,7 +1248,8 @@ static int azx_setup_periods(struct azx *chip,
|
|
|
period_bytes - pos_adj, 0);
|
|
|
else
|
|
|
ofs = setup_bdle(substream, azx_dev, &bdl, ofs,
|
|
|
- period_bytes, 1);
|
|
|
+ period_bytes,
|
|
|
+ !substream->runtime->no_period_wakeup);
|
|
|
if (ofs < 0)
|
|
|
goto error;
|
|
|
}
|
|
@@ -1515,7 +1517,8 @@ static struct snd_pcm_hardware azx_pcm_hw = {
|
|
|
/* No full-resume yet implemented */
|
|
|
/* SNDRV_PCM_INFO_RESUME |*/
|
|
|
SNDRV_PCM_INFO_PAUSE |
|
|
|
- SNDRV_PCM_INFO_SYNC_START),
|
|
|
+ SNDRV_PCM_INFO_SYNC_START |
|
|
|
+ SNDRV_PCM_INFO_NO_PERIOD_WAKEUP),
|
|
|
.formats = SNDRV_PCM_FMTBIT_S16_LE,
|
|
|
.rates = SNDRV_PCM_RATE_48000,
|
|
|
.rate_min = 48000,
|