[alsa-devel] [BUG] [REGRESSION] [BISECTED] -rc1 breaks audio over HDMI for i915

Takashi Iwai tiwai at suse.de
Mon Feb 22 15:12:52 CET 2016


On Mon, 22 Feb 2016 15:02:56 +0100,
Martin Kepplinger wrote:
> > And how about my questions in the previous mail?  Does
> > i915_audio_component_get_eld() is called and returns 0?
> > And is monitor_present set true or false?
> 
> i915_audio_component_get_eld() returns 0 and monitor_present is 0.
> > 
> > If i915_audio_component_get_eld() is called but returns zero, track
> > the code flow there.  It means either intel_encoder is NULL or
> > intel_dig_port->audio_connector is NULL.
> 
> intel_dig_port->audio_connector is NULL!
> 
> (when called during boot and during HDMI plugin)

Interesting.  The relevant code flow should be like:

  intel_audio_codec_enable()
  -> acomp->audio_ops->pin_eld_notify()
    -> intel_pin_eld_notify()
      -> check_presence_and_report()
        -> hdmi_present_sense()
	  -> sync_eld_via_acomp()
	    -> snd_hdac_acomp_get_eld()
	      -> i915_audio_component_get_eld()

So, at first, check whether intel_dig_port in both
intel_audio_codec_enable() and i915_audio_component_get_eld() points
to the same object address.  The audio_connector must be set in
intel_audio_codec_enable(), thus basically it must be non-NULL at
i915_audio_component_get_eld(), too.


thanks,

Takashi


More information about the Alsa-devel mailing list