drm/i915: always update ELD connector type after get modes
drm_edid_to_eld() initializes the connector ELD to zero, overwriting the
ELD connector type initialized in intel_audio_codec_enable(). If
userspace does getconnector and thus get_modes after modeset, a
subsequent audio component i915_audio_component_get_eld() call will
receive an ELD without the connector type properly set. It's fine for
HDMI, but screws up audio for DP.
Always set the ELD connector type at intel_connector_update_modes()
based on the connector type. We can drop the connector type update from
intel_audio_codec_enable().
Credits to Joseph Nuzman <email address hidden> for figuring this out.
Cc: Ville Syrjälä <email address hidden>
Cc: Joseph Nuzman <email address hidden>
Reported-by: Joseph Nuzman <email address hidden>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101583
Reviewed-by: Ville Syrjälä <email address hidden>
Tested-by: Joseph Nuzman <email address hidden>
Cc: <email address hidden> # v4.10+, maybe earlier
Signed-off-by: Jani Nikula <email address hidden>
Link: https://patchwork<email address hidden>
(cherry picked from commit d81fb7fd9436e81fda67e5bc8ed0713aa28d3db2)
Signed-off-by: Rodrigo Vivi <email address hidden>
It has "Cc: <email address hidden>" so it'll get pulled into Ubuntu's kernel.
This commit fixes the issue:
commit 2d8f63297b9f0b4 30c96329893667c 0bfdcbd47e
Author: Jani Nikula <email address hidden>
Date: Tue Sep 19 18:38:13 2017 +0300
drm/i915: always update ELD connector type after get modes
drm_ edid_to_ eld() initializes the connector ELD to zero, overwriting the codec_enable( ). If component_ get_eld( ) call will
ELD connector type initialized in intel_audio_
userspace does getconnector and thus get_modes after modeset, a
subsequent audio component i915_audio_
receive an ELD without the connector type properly set. It's fine for
HDMI, but screws up audio for DP.
Always set the ELD connector type at intel_connector _update_ modes() audio_codec_ enable( ).
based on the connector type. We can drop the connector type update from
intel_
Credits to Joseph Nuzman <email address hidden> for figuring this out.
Cc: Ville Syrjälä <email address hidden> /bugs.freedeskt op.org/ show_bug. cgi?id= 101583 /patchwork<email address hidden> fda67e5bc8ed071 3aa28d3db2)
Cc: Joseph Nuzman <email address hidden>
Reported-by: Joseph Nuzman <email address hidden>
Bugzilla: https:/
Reviewed-by: Ville Syrjälä <email address hidden>
Tested-by: Joseph Nuzman <email address hidden>
Cc: <email address hidden> # v4.10+, maybe earlier
Signed-off-by: Jani Nikula <email address hidden>
Link: https:/
(cherry picked from commit d81fb7fd9436e81
Signed-off-by: Rodrigo Vivi <email address hidden>
It has "Cc: <email address hidden>" so it'll get pulled into Ubuntu's kernel.