On Tue, 10 Apr 2018, "Shi, Yang A" <yang.a....@intel.com> wrote:
> issue: snd_soc_skl meet "failed to add i915 component master (-19)"
> when platform don't connect any display output.
> i915 do initialization before than skl_probe, but if there is no
> display output connect, in function drm_dp_dpcd_access, there is a 32
> retry for aux i2c transactions. It will meet timeout and do
> usleep. Then skl_probe function will be scheduled. It will call
> snd_hdac_i915_init, and it will meet "failed to add i915 component
> master" error. And whole snd_soc_skl initialization will be failed,
> audio can't work normally anymore.
> So i915 driver need to move intel_audio_init at the beginning of
> intel_modeset_init. This will make sure i915_audio_component_init
> process before snd_hdac_i915_init call it.
We do intel_audio_init() and register the audio component when we are
ready to handle the audio component calls. We are ready at
i915_driver_register(). We are not ready at intel_modeset_init().
Jani Nikula, Intel Open Source Technology Center
Intel-gfx mailing list