[Intel-gfx] [PATCH v5] drm/i915: pass ELD to HDMI/DP audio driver

Christopher White c.white at pulseforce.com
Thu Nov 10 05:10:42 CET 2011


On 11/10/11 4:27 AM, Wu Fengguang wrote:
> Christopher,
>
> Did you enabled CONFIG_SND_DEBUG and CONFIG_SND_DEBUG_VERBOSE in
> kconfig? I've been looking for the error messages related to zeroed
> ELD but never managed to find any in your dmesg.
No, I was unaware of these options, this is the first time you've 
mentioned them. ;-)

However, I am unable to reproduce the 0-byte EDID again. Even after 
multiple reboots, turning the projector on/off, etc. Hmm. We'll have to 
forget that issue since it's not reproducible anymore. It's always odd 
when code does one thing one time and another thing every other time, 
but hopefully it was just some weird fluke, race condition, 
who-knows-what...

Heck it could even be the TX-SR607 receiver that did something odd this 
one time.

I looked at the latest dmesg after yet another reboot and see only a 
single "[drm:intel_hdmi_mode_set], Enabling HDMI audio on pipe A" event, 
and no misreads. I'll attach that file too just for completeness.

Anyway, we know that it reads ELD correctly and writes it to the audio 
register correctly, as we see from the logs. However, my previous 
message ended in a theory that the problem is that the ELD is written to 
the register for port 1 but my device is on port 2. Re-read the bottom 
of the message I sent previously, and it'll detail the idea. It's a 
possibility worth checking out.
> Some analyzes of your dmesg:
>
> - all drm_edid_to_eld() invocations reads valid EDID data:
>
> [    2.560001] [drm:drm_edid_to_eld], ELD monitor TX-SR607
> [    2.560005] [drm:drm_edid_to_eld], ELD size 13, SAD count 8
> [    4.636651] [drm:drm_edid_to_eld], ELD monitor TX-SR607
> [    4.636654] [drm:drm_edid_to_eld], ELD size 13, SAD count 8
> [   10.486889] [drm:drm_edid_to_eld], ELD monitor TX-SR607
> [   10.486893] [drm:drm_edid_to_eld], ELD size 13, SAD count 8
> [   10.976211] [drm:drm_edid_to_eld], ELD monitor TX-SR607
> [   10.976215] [drm:drm_edid_to_eld], ELD size 13, SAD count 8
> [   12.034833] [drm:drm_edid_to_eld], ELD monitor TX-SR607
> [   12.034836] [drm:drm_edid_to_eld], ELD size 13, SAD count 8
> [   12.524615] [drm:drm_edid_to_eld], ELD monitor TX-SR607
> [   12.524618] [drm:drm_edid_to_eld], ELD size 13, SAD count 8
> [   13.015331] [drm:drm_edid_to_eld], ELD monitor TX-SR607
> [   13.015334] [drm:drm_edid_to_eld], ELD size 13, SAD count 8
> [   14.374778] [drm:drm_edid_to_eld], ELD monitor TX-SR607
> [   14.374781] [drm:drm_edid_to_eld], ELD size 13, SAD count 8
> [   16.373820] [drm:drm_edid_to_eld], ELD monitor TX-SR607
> [   16.373824] [drm:drm_edid_to_eld], ELD size 13, SAD count 8
> [   19.912594] [drm:drm_edid_to_eld], ELD monitor TX-SR607
> [   19.912597] [drm:drm_edid_to_eld], ELD size 13, SAD count 8
>
> - all *_write_eld() invocations are writing non-empty ELD to the same pipe A
>
> [    2.674229] [drm:intel_hdmi_mode_set], Enabling HDMI audio on pipe A
> [    2.674231] [drm:intel_write_eld], ELD on [CONNECTOR:14:HDMI-A-2], [ENCODER:13:TMDS-13]
> [    2.674232] [drm:ironlake_write_eld], ELD on pipe A
> [    2.674234] [drm:ironlake_write_eld], Audio directed to unknown port
> [    2.674237] [drm:ironlake_write_eld], ELD size 13
>
> [   13.651210] [drm:intel_hdmi_mode_set], Enabling HDMI audio on pipe A
> [   13.651214] [drm:intel_write_eld], ELD on [CONNECTOR:14:HDMI-A-2], [ENCODER:13:TMDS-13]
> [   13.651218] [drm:ironlake_write_eld], ELD on pipe A
> [   13.651221] [drm:ironlake_write_eld], Audio directed to unknown port
> [   13.651227] [drm:ironlake_write_eld], ELD size 13
>
> - audio driver first got the good ELD:
>
> [   10.268696] HDMI status: Pin=7 Presence_Detect=1 ELD_Valid=1
> [   10.272189] HDMI: detected monitor TX-SR607 at connection type HDMI
> [   10.272190] HDMI: available speakers: FL/FR LFE FC RL/RR RLC/RRC
> [   10.272193] HDMI: supports coding type LPCM: channels = 2, rates = 44100 48000 88200 176400 192000 384000, bits = 16 20 24
> [   10.272196] HDMI: supports coding type LPCM: channels = 8, rates = 44100 48000 88200 176400 192000 384000, bits = 16 20 24
> [   10.272198] HDMI: supports coding type AC-3: channels = 8, rates = 44100 48000 88200, max bitrate = 640000
> [   10.272199] HDMI: supports coding type DTS: channels = 8, rates = 48000 88200, max bitrate = 1536000
> [   10.272201] HDMI: supports coding type DSD (One Bit Audio): channels = 6, rates = 48000
> [   10.272202] HDMI: supports coding type E-AC-3/DD+ (Dolby Digital Plus): channels = 8, rates = 48000 88200
> [   10.272204] HDMI: supports coding type DTS-HD: channels = 8, rates = 48000 88200 176400 192000 384000
> [   10.272206] HDMI: supports coding type MLP (Dolby TrueHD): channels = 8, rates = 88200 192000
>
> [   10.274995] HDMI hot plug event: Pin=7 Presence_Detect=1 ELD_Valid=1
> [   10.275049] HDMI status: Pin=7 Presence_Detect=1 ELD_Valid=1
> [   10.278541] HDMI: detected monitor TX-SR607 at connection type HDMI
> [   10.278543] HDMI: available speakers: FL/FR LFE FC RL/RR RLC/RRC
> [   10.278545] HDMI: supports coding type LPCM: channels = 2, rates = 44100 48000 88200 176400 192000 384000, bits = 16 20 24
> [   10.278548] HDMI: supports coding type LPCM: channels = 8, rates = 44100 48000 88200 176400 192000 384000, bits = 16 20 24
> [   10.278550] HDMI: supports coding type AC-3: channels = 8, rates = 44100 48000 88200, max bitrate = 640000
> [   10.278551] HDMI: supports coding type DTS: channels = 8, rates = 48000 88200, max bitrate = 1536000
> [   10.278553] HDMI: supports coding type DSD (One Bit Audio): channels = 6, rates = 48000
> [   10.278554] HDMI: supports coding type E-AC-3/DD+ (Dolby Digital Plus): channels = 8, rates = 48000 88200
> [   10.278556] HDMI: supports coding type DTS-HD: channels = 8, rates = 48000 88200 176400 192000 384000
> [   10.278558] HDMI: supports coding type MLP (Dolby TrueHD): channels = 8, rates = 88200 192000
>
> [   10.278612] HDMI hot plug event: Pin=7 Presence_Detect=1 ELD_Valid=1
> [   10.278644] HDMI status: Pin=7 Presence_Detect=1 ELD_Valid=1
> [   10.282143] HDMI: detected monitor TX-SR607 at connection type HDMI
> [   10.282145] HDMI: available speakers: FL/FR LFE FC RL/RR RLC/RRC
> [   10.282147] HDMI: supports coding type LPCM: channels = 2, rates = 44100 48000 88200 176400 192000 384000, bits = 16 20 24
> [   10.282149] HDMI: supports coding type LPCM: channels = 8, rates = 44100 48000 88200 176400 192000 384000, bits = 16 20 24
> [   10.282151] HDMI: supports coding type AC-3: channels = 8, rates = 44100 48000 88200, max bitrate = 640000
> [   10.282152] HDMI: supports coding type DTS: channels = 8, rates = 48000 88200, max bitrate = 1536000
> [   10.282154] HDMI: supports coding type DSD (One Bit Audio): channels = 6, rates = 48000
> [   10.282155] HDMI: supports coding type E-AC-3/DD+ (Dolby Digital Plus): channels = 8, rates = 48000 88200
> [   10.282157] HDMI: supports coding type DTS-HD: channels = 8, rates = 48000 88200 176400 192000 384000
> [   10.282159] HDMI: supports coding type MLP (Dolby TrueHD): channels = 8, rates = 88200 192000
>
> - audio driver then read 0 ELD, here we should see some error messages
>    if you enabled CONFIG_SND_DEBUG.
>
> [   13.651210] [drm:intel_hdmi_mode_set], Enabling HDMI audio on pipe A
> [   13.651214] [drm:intel_write_eld], ELD on [CONNECTOR:14:HDMI-A-2], [ENCODER:13:TMDS-13]
> [   13.651218] [drm:ironlake_write_eld], ELD on pipe A
> [   13.651221] [drm:ironlake_write_eld], Audio directed to unknown port
> [   13.651227] [drm:ironlake_write_eld], ELD size 13
> [   13.651306] HDMI hot plug event: Pin=7 Presence_Detect=1 ELD_Valid=0
> [   13.651342] HDMI status: Pin=7 Presence_Detect=1 ELD_Valid=1
> [   13.654884] HDMI hot plug event: Pin=7 Presence_Detect=1 ELD_Valid=1
> [   13.654926] HDMI status: Pin=7 Presence_Detect=1 ELD_Valid=1
>
> Thanks,
> Fengguang
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: dmesgokay.txt
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20111110/a1c3a7c4/attachment.txt>


More information about the Intel-gfx mailing list