Bug 27731 - HDMI port power management problems.
HDMI port power management problems.
Status: NEW
Product: xorg
Classification: Unclassified
Component: Driver/Radeon
git
x86-64 (AMD64) Linux (All)
: medium normal
Assigned To: xf86-video-ati maintainers
Xorg Project Team
:
: 33438 (view as bug list)
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2010-04-19 01:35 UTC by bugs
Modified: 2012-08-29 09:39 UTC (History)
2 users (show)

See Also:


Attachments
Xorg.0.log (39.61 KB, text/plain)
2010-04-19 01:35 UTC, bugs
no flags Details
lspci (10.06 KB, text/plain)
2010-04-19 01:36 UTC, bugs
no flags Details
xorg.conf (171 bytes, text/plain)
2010-04-19 01:37 UTC, bugs
no flags Details
force dvi mode (1.88 KB, patch)
2010-11-12 08:02 UTC, Alex Deucher
no flags Details | Splinter Review
dmesg from patched kernel (55.80 KB, text/plain)
2010-11-14 10:21 UTC, Alex Wright
no flags Details
alternate patch (2.04 KB, patch)
2011-01-24 15:33 UTC, Alex Deucher
no flags Details | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description bugs 2010-04-19 01:35:38 UTC
Created attachment 35153 [details]
Xorg.0.log

I have a BENQ E2220HD monitor connected via HDMI to a RV710 [Radeon HD 4350].

This works correctly, except when the monitor goes into standby, or suspend.
Normal wake up actions (wiggling the mouse) fails to wake up the monitor.
Power cycling the monitor, then wiggling the mouse eventually wakes the monitor, but only after 30 seconds, or so.

I'm running git versions of ati driver, mesa, xorg etc.
Comment 1 bugs 2010-04-19 01:36:15 UTC
Created attachment 35154 [details]
lspci
Comment 2 bugs 2010-04-19 01:37:05 UTC
Created attachment 35155 [details]
xorg.conf
Comment 3 Alex Deucher 2010-10-19 19:42:18 UTC
Is this still an issue with a newer kernel?
Comment 4 Alex Wright 2010-11-12 00:24:25 UTC
Hi, Sorry for the delay!

Yes, I'm currently running:
Linux path 2.6.36-gentoo #1 SMP PREEMPT Thu Nov 11 15:18:31 GMT 2010 x86_64 AMD Athlon(tm) II X4 620 Processor AuthenticAMD GNU/Linux

Git versions of:
x11-libs/libdrm
x11-proto/dri2proto
x11-drivers/xf86-video-ati
media-libs/mesa

I still have the same issue.

I dual boot to Windows (very) occasionally, and there is no similar problem there.

Any other information I can provide?
Comment 5 Alex Deucher 2010-11-12 08:02:42 UTC
Created attachment 40237 [details] [review]
force dvi mode

Does this patch help?
Comment 6 Alex Wright 2010-11-14 10:21:58 UTC
Created attachment 40274 [details]
dmesg from patched kernel
Comment 7 Alex Wright 2010-11-14 10:23:14 UTC
(In reply to comment #5)
> Created an attachment (id=40237) [details]
> force dvi mode
> 
> Does this patch help?

It would appear so, I'll test for longer suspend times to be sure though.

Thanks!
Comment 8 Alex Wright 2010-11-14 12:42:12 UTC
(In reply to comment #7)
> (In reply to comment #5)
> > Created an attachment (id=40237) [details] [details]
> > force dvi mode
> > 
> > Does this patch help?
> 
> It would appear so, I'll test for longer suspend times to be sure though.

Confirmed: That patch fixed it.

Do you need any more information to confirm?

Cheers!
Comment 9 Alex Deucher 2011-01-24 15:20:39 UTC
*** Bug 33438 has been marked as a duplicate of this bug. ***
Comment 10 Alex Deucher 2011-01-24 15:33:10 UTC
Created attachment 42421 [details] [review]
alternate patch

Does this patch help?  add radeon.audio=0 to your kernel command line in grub.
Comment 11 Micael Dias 2011-01-24 18:37:11 UTC
(In reply to comment #10)
> Created an attachment (id=42421) [details]
> alternate patch
> 
> Does this patch help?  add radeon.audio=0 to your kernel command line in grub.

The patch (against current kernel git) and kernel command line fixes it.
Comment 12 Micael Dias 2011-01-26 17:36:23 UTC
Just posting to make sure this last patch isn't the definitive solution.

Also, is there any estimates on when will there be a proper fix? Maybe on 2.6.39? Because as I see it's a major problem since some people won't know what to do after they see a black screen...


Thank you for all your work on this driver :)
Comment 13 Florian Mickler 2011-06-30 03:30:22 UTC
A patch referencing this bug report has been merged in Linux v3.0-rc3:

commit 805c22168da76a65c978017d0fe0d59cd048e995
Author: Alex Deucher <alexdeucher@gmail.com>
Date:   Mon Jun 6 17:39:16 2011 -0400

    drm/radeon/kms: disable hdmi audio by default
Comment 14 Rafał Miłecki 2012-02-08 08:05:44 UTC
Micael: I've request to you, could you switch to some updated kernel and try radeon.audio=1 option in GRUB?

In case of 3.0, please use 3.0.18 or newer.
In case of 3.1, please use 3.1.10 or newer.
In case of 3.2. please use 3.2.2 or newer.
Of course 3.3-rc1 is good as well.

The commit I want you to have is:

commit d21e9677f82d619967c6c918038343fe12bb0f4a
Author: Rafał Miłecki <zajec5@gmail.com>
Date:   Fri Dec 23 20:32:18 2011 +0100

    drm/radeon/kms: workaround invalid AVI infoframe checksum issue

Does you BENQ work fine with radeon after using radeon.audio=1?
Comment 15 Micael Dias 2012-02-08 08:25:52 UTC
(In reply to comment #14)
> Micael: I've request to you, could you switch to some updated kernel and try
> radeon.audio=1 option in GRUB?
> 
> In case of 3.0, please use 3.0.18 or newer.
> In case of 3.1, please use 3.1.10 or newer.
> In case of 3.2. please use 3.2.2 or newer.
> Of course 3.3-rc1 is good as well.
> 
> The commit I want you to have is:
> 
> commit d21e9677f82d619967c6c918038343fe12bb0f4a
> Author: Rafał Miłecki <zajec5@gmail.com>
> Date:   Fri Dec 23 20:32:18 2011 +0100
> 
>     drm/radeon/kms: workaround invalid AVI infoframe checksum issue
> 
> Does you BENQ work fine with radeon after using radeon.audio=1?

My monitor is not a BENQ, it is a Samsung SyncMaster T260, but my bug report #33438 was marked as a duplicate of this one.

However, I can confirm that using radeon.audio=1 with kernel 3.2.2 (arch linux) is now working fine.

I don't know which kernel version fixed it though since I've been using radeon.audio=0 since about a year ago.
Comment 16 Rafał Miłecki 2012-02-08 08:48:05 UTC
Micael: thanks for testing and sorry for messing two reports. Glad your Samsung it working now :)
Comment 17 Rafał Miłecki 2012-02-08 08:49:16 UTC
Alex Wright: can you perform test as requested in comment #14 please?
Comment 18 Alex Wright 2012-02-08 09:21:46 UTC
I can in the next few days. Thank you for your work :-)
Comment 19 Rafał Miłecki 2012-06-11 01:46:31 UTC
Alex: any news on this?
Comment 20 Alex Wright 2012-06-11 08:50:45 UTC
Hi,

I've booted with the latest kernel, 3.4.0 and I'm afraid that I still have the problem with radeon.audio=1

So, no, not fixed yet.
Comment 21 Thomas Vander Stichele 2012-08-29 09:39:36 UTC
I have the same issue.  When my screen goes blank, the thing that works for me is to switch to console (ctrl-alt-Fx) and then back to X.

I have a Fedora 16 box, with HDMI output going to a Sony AV, and then to a Sony TV.

(I also use this machine a lot for audio playback using pulseaudio from my desktop, a bunch of meters away.  Annoyingly right now that means I need to go over and 'wake up' the video again, but that's beside the point now)

When sound stops, this is a related message in dmesg:

[338173.088914] radeon 0000:01:00.0: Disabling not enabled HDMI

After waking it up again, I get this:

[475218.002803] [drm:drm_edid_block_valid] *ERROR* EDID checksum is invalid, remainder is 220


Some of these messages get repeated (not sure why it repeatedly tries to disable), and sometimes I get raw EDID dumps too.

[15507.482647] radeon 0000:01:00.0: Disabling not enabled HDMI
[15508.113106] radeon 0000:01:00.0: Disabling not enabled HDMI
[15508.240386] radeon 0000:01:00.0: Disabling not enabled HDMI
[15508.863102] radeon 0000:01:00.0: Disabling not enabled HDMI
[100442.985122] radeon 0000:01:00.0: Disabling not enabled HDMI
[100443.615132] radeon 0000:01:00.0: Disabling not enabled HDMI
[191169.540320] [drm:drm_edid_block_valid] *ERROR* EDID checksum is invalid, remainder is 186
[191169.540328] Raw EDID:
[191169.540333]  	00 ff ff ff ff ff ff 00 4d d9 01 0b 01 01 01 01
[191169.540339]  	1c 11 01 03 80 a0 5a 78 0a 0d c9 a0 57 47 98 27
[191169.540344]  	12 48 4c 20 00 00 01 01 01 01 01 01 01 01 01 01
[191169.540348]  	01 07 ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[191169.540353]  	ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[191169.540358]  	ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[191169.540362]  	ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[191169.540367]  	ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff



Tracing the message through the code, I see r600_hdmi_disable in drivers/gpu/drm/radeon which prints it, and gets called from radeon_atom_encoder_disable.

However, I assume the suspend is being done correctly, and it's the wakeup code that causes the problem, and I'm not sure what the entry point is there.


How can I assist in debugging this ? I'm interested enough to learn how to hack on this particular kernel module if necessary.