Bug 110932 - [CI][RESUME]igt@kms_chamelium@dp-audio-edid - fail - Failed assertion: eld_get_igt(&eld)
Summary: [CI][RESUME]igt@kms_chamelium@dp-audio-edid - fail - Failed assertion: eld_ge...
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: DRI git
Hardware: Other All
: high normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
Whiteboard: ReadyForDev
Depends on:
Reported: 2019-06-18 04:35 UTC by Lakshmi
Modified: 2019-10-22 18:48 UTC (History)
3 users (show)

See Also:
i915 platform: ICL
i915 features: display/Other


Description Lakshmi 2019-06-18 04:35:58 UTC

Starting subtest: dp-audio-edid
(kms_chamelium:1237) CRITICAL: Test assertion failure function test_display_audio_edid, file ../tests/kms_chamelium.c:1471:
(kms_chamelium:1237) CRITICAL: Failed assertion: eld_get_igt(&eld)
(kms_chamelium:1237) CRITICAL: Last errno: 2, No such file or directory
Subtest dp-audio-edid failed.
Comment 2 Jani Saarinen 2019-06-18 05:46:00 UTC
Simon, can you comment impact of this and if this is real issue and where?
Comment 3 emersion 2019-06-18 06:00:43 UTC
This one sounds like an IGT issue, the test seems broken. Working on a fix.

Impact is no test coverage for ensuring monitors supporting audio connected via DP are supported.
Comment 4 emersion 2019-06-18 06:59:36 UTC
Bleh, I can't reproduce this bug on my setup no matter what I try. I thought that maybe IGT wasn't properly re-probing connectors after setting an EDID but that's not the case, we do it properly.

In the dmesg for both logs there is:

<4> [449.746542] snd_hda_codec_hdmi hdaudioC0D2: HDMI: pin nid 5 not registered

Might just be due to the same bug as https://bugs.freedesktop.org/show_bug.cgi?id=110879
Comment 5 emersion 2019-06-18 13:46:24 UTC
I can reproduce on re-icl-u with the mini-DP port and a real screen:

1. Unplug everything, boot the machine, run `cat /proc/asound/eld*`: no ELD present
2. Plug an external screen which supports audio
3. Run dmesg. Grep for "ELD". Notice the lines "[drm:drm_add_edid_modes] ELD monitor <monitor name>" and "[drm:drm_add_edid_modes] ELD size 36, SAD count 1"
3. Run `cat /proc/asound/eld*`: still no monitor present
4. Play a sound with aplay
5. Run dmesg. A bunch of "[drm:i915_audio_component_get_eld [i915]] Not valid for port <port>" messages appear.
5. Run `cat /proc/asound/eld*`: monitor appears

Are we supposed to start playing audio to get the correct value in /proc/asound/eld*?
Comment 6 emersion 2019-06-18 13:49:09 UTC
Additionally, disconnecting the mini-DP cable doesn't make the /proc/asound/eld* entry go away, it's still saying the monitor is connected.

I believe this is a driver bug, it's not updating /proc/asound/eld* correctly.
Comment 7 Ville Syrjala 2019-06-18 13:57:16 UTC
The eld should appear/disappear when there is a modeset. If no one is reacting ot the hpd events and doing a modesets then the eld will not change state either.
Comment 8 emersion 2019-06-18 14:01:49 UTC
We reprobe the connector and set a mode, so the ELD should definitely be updated.
Comment 9 Lakshmi 2019-08-01 09:43:45 UTC
This bug needs input from audio team.
Comment 10 emersion 2019-08-16 13:04:39 UTC
Last seen 4 weeks ago. (It used to be seen every week.)

Improved ELD logging reveals that the old ELD (coming from the default Chamelium EDID) is staying around after hotplug with a new EDID:

(kms_chamelium:1152) igt_eld-DEBUG: Skipping non-IGT ELD: /proc/asound/card0/eld#2.6 (monitor name: AthenaDP)
Comment 11 Vanshidhar Konda 2019-10-22 18:48:28 UTC
This bug has not been observed in 3 months now. It used to occur twice a day prior to July 18, 2019.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.