On Thu, 04 Apr 2019 15:53:34 +0200, Pierre-Louis Bossart wrote:
- /* set runtime config */
- runtime->hw.info = SNDRV_PCM_INFO_MMAP |
SNDRV_PCM_INFO_MMAP_VALID |
SNDRV_PCM_INFO_INTERLEAVED |
SNDRV_PCM_INFO_PAUSE |
SNDRV_PCM_INFO_RESUME |
SNDRV_PCM_INFO_NO_PERIOD_WAKEUP;
Does SOF support the full resume? That is, the stream gets resumed at the exact position that was suspended. Most devices can't, hence they don't set *_INFO_RESUME flag and let user-space restarting.
Ah this is interesting. All previous Intel drivers set this flag, baytrail/haswell/broadwell, atom-sst and skylake. Only Skylake+ devices can restart at exactly the right position, but it's my understanding that no one ever enabled this mode.
Now I see an awful amount of devices that set this INFO_RESUME flag, and I'd be surprised if they all supported a full resume, could it be that there's a requirement that fell between the cracks on this one?
The SNDRV_PCM_INFO_RESUME is merely a hint, so far, and user-space would eventually fall back to the default restart procedure even if something fails. That is, that's not that important, but it should be dropped if the general SOF framework doesn't support for it at all. But, the framework itself seems supporting the full resume feature, judging from your and others replies, so we can keep it.
thanks,
Takashi