On Tue, 25 Apr 2017 22:27:19 +0200, ville.syrjala@linux.intel.com wrote:
From: Ville Syrjälä ville.syrjala@linux.intel.com
I was wondering why my VLV no longer runtime suspended, and after some thinking I decided it had to be the LPE audio preventing it. Turns out I was right, so here's my attempt at fixing it.
And while looking at the code I couldn't help but notice that it couldn't actually handle multiple pipes playing back audio at the same time. And even having multiple displays active even if only one was playing audio was probably a recipe for failure. So I tried to fix that by registering a separate PCM device for each pipe.
Note that the patch subjects may not reflect the subsystem very well since most of these straddle the border between drm and alsa. I think I just slapped on drm/i915 to most where there was no clear winner.
A nice patchset, thanks for working on it!
One slight concern (other than the jack issue Pierre reported) is the incompatible behavior from the current version. With the pipe-based multiple streams, user would need to choose another one even if the device has a single HDMI output, which is pretty common on BYT/CHV tablets.
Maybe it's no big problem as the users are still limited at the moment. Or, we may need to handle a bit differently, e.g. assigning the PCM stream dynamically per hotplug.
In anyway, with the support of multi streams, alsa-lib config needs to be updated.
Takashi