Hi David,
-----Original Message----- From: David Henningsson [mailto:david.henningsson@canonical.com] Sent: Thursday, November 05, 2015 5:07 PM To: Yang, Libin; Takashi Iwai Cc: Lin, Mengdong; Raymond Yau; airlied@linux.ie; tanuk@iki.fi; ALSA Development Mailing List; Girdwood, Liam R; Lu, Han; Nikula, Jani Subject: Re: [alsa-devel] DP1.2 MST audio support discussion
On 2015-11-04 15:17, Yang, Libin wrote:
- Jani, who is from Intel gfx team.
-----Original Message----- From: David Henningsson [mailto:david.henningsson@canonical.com] Sent: Monday, November 02, 2015 3:55 PM To: Yang, Libin; Takashi Iwai Cc: Lin, Mengdong; Raymond Yau; airlied@linux.ie; tanuk@iki.fi; ALSA Development Mailing List; Girdwood, Liam R; Lu, Han Subject: Re: [alsa-devel] DP1.2 MST audio support discussion
On 2015-11-02 08:30, Yang, Libin wrote:
- power management
If we close the PCM when disconnecting monitor, the driver will
return
-ENODEV, and we assume user space will close the PCM at once .
... if we implement it. Actually this behavior (returning -ENODEV) is not mandatory and needs investigation beforehand, whether this breaks any applications, especially PA.
Yes. I heard that PA has dummy PCM and when there is no HW to play the audio, PA can smoothly move the PCM from HW to dummy PCM. If it's true, stopping PCM will not break PA, I think.
Well, in most cases (not all) there will be an analog output available, so we're more likely to move there than to a dummy PCM. The problem is that PA does not currently figure out that a -ENODEV means that one should switch from a digital to an analog profile. So, at least at this point, don't expect a "smooth move".
I'm not sure if this is a good idea or not, but just brainstorming here:
If PA (or other application) tries to play back to a PCM, and that PCM is currently unassigned. What would happen if we actually assigned a converter node at that point, but no pin node connected to that converter node? Would that give a backwards compatible behaviour?
I
e, audio userspace could successfully play back audio through the converter node, but then the audio goes nowhere because there is no pin node assigned?
GFX team hope us that if there is no monitor connected, audio should release gfx so gfx driver can enter power save mode. Based on the requirement, audio driver may need stop playback as soon as the monitor is disconnected.
I'm not talking about continuous playback here, so power consumption should not be a big concern. E g, if it takes a second or so before PA reroutes audio somewhere else, it's not a big deal from a power save perspective.
So I'm asking my question again. What would happen (on Intel hardware), if you stream audio to a converter node on the audio codec, and there is no pin node connected to that converter node?
I changed the audio driver and did the test today. The test is: 1. Pin 5 connect to converter 2 and playback, there is sound from pin 5. 2. Pin 5 connect to converter 2 (no other pin is connected to cvt2), no sound. 3. Pin 5 connect back to cvt 2, there is sound, playback is normal.
And in step 2, the playback is still ongoing but no sound is out from any pin.
-- David Henningsson, Canonical Ltd. https://launchpad.net/~diwic