[alsa-devel] [PATCH] hda-intel: reorder HDMI audio enabling sequence
Reorder HDMI audio enabling sequence so that 1) the sink knows about the coming audio stream 2) unmute 3) start transferring audio samples
The theory is that in the path A=>B=>C, we first make C ready, and then enable B, and lastly allow A to send audio samples.
Signed-off-by: Wu Fengguang wfg@linux.intel.com --- sound/pci/hda/patch_intelhdmi.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)
--- sound-2.6.orig/sound/pci/hda/patch_intelhdmi.c +++ sound-2.6/sound/pci/hda/patch_intelhdmi.c @@ -312,16 +312,16 @@ static void hdmi_write_dip_byte(struct h
static void hdmi_enable_output(struct hda_codec *codec) { - /* Enable pin out and unmute */ - snd_hda_sequence_write(codec, pinout_enable_verb); - if (get_wcaps(codec, PIN_NID) & AC_WCAP_OUT_AMP) - snd_hda_codec_write(codec, PIN_NID, 0, - AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE); - /* Enable Audio InfoFrame Transmission */ hdmi_set_dip_index(codec, PIN_NID, 0x0, 0x0); snd_hda_codec_write(codec, PIN_NID, 0, AC_VERB_SET_HDMI_DIP_XMIT, AC_DIPXMIT_BEST); + /* Unmute */ + if (get_wcaps(codec, PIN_NID) & AC_WCAP_OUT_AMP) + snd_hda_codec_write(codec, PIN_NID, 0, + AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE); + /* Enable pin out */ + snd_hda_sequence_write(codec, pinout_enable_verb); }
static void hdmi_disable_output(struct hda_codec *codec)
At Mon, 17 Nov 2008 16:57:33 +0800, Wu Fengguang wrote:
Reorder HDMI audio enabling sequence so that
- the sink knows about the coming audio stream
- unmute
- start transferring audio samples
The theory is that in the path A=>B=>C, we first make C ready, and then enable B, and lastly allow A to send audio samples.
Signed-off-by: Wu Fengguang wfg@linux.intel.com
Looks good. Applied this one, too. Thanks!
Takashi
On Mon, Nov 17, 2008 at 11:05:48AM +0200, Takashi Iwai wrote:
At Mon, 17 Nov 2008 16:57:33 +0800, Wu Fengguang wrote:
Reorder HDMI audio enabling sequence so that
- the sink knows about the coming audio stream
- unmute
- start transferring audio samples
The theory is that in the path A=>B=>C, we first make C ready, and then enable B, and lastly allow A to send audio samples.
Signed-off-by: Wu Fengguang wfg@linux.intel.com
Looks good. Applied this one, too. Thanks!
Thank you :-)
Fengguang
participants (2)
-
Takashi Iwai
-
Wu Fengguang