Good questions! In general the audio functionalities should not depend on the display activeness. There are even audio-only HDMI devices. So I'll need to make intel_write_eld() work even without information about the current display mode.
Yeah, we'll need to figure out what the ELD should look like with no display active. I think you've got the whole link available, so there shouldn't be any restrictions on formats.
That would be a good feature. For one thing, I find it annoying that the music playback fades out when the screen goes to power saving mode..
I'm not sure we can make it completely seamless without keeping most of the pipe active (which will consume some power). Probably we'll just leave the clock alone while the display is DPMS'd, but if we actually need the resources for another display, I'm afraid there may be some noise on the HDMI audio link. Will need experimentation to figure out how to make this work as nicely as possible.
I was just reading through the reference manual and found that there is a mode that leaves the HDMI running without requiring a pipe or plane, just the FDI PLL. So, audio without display seems pretty simple now; just a matter of a bit of API negotiation between the audio and video drivers.