dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
From: bugzilla-daemon@freedesktop.org
To: dri-devel@lists.freedesktop.org
Subject: [Bug 56139] [bisected] kernel 3.7.0-rc1 breaks 6950 (boot/grub2 and suspend/resume) (CAYMAN)
Date: Tue, 13 Nov 2012 15:15:10 +0000	[thread overview]
Message-ID: <bug-56139-502-CDH3t9nc04@http.bugs.freedesktop.org/> (raw)
In-Reply-To: <bug-56139-502@http.bugs.freedesktop.org/>


[-- Attachment #1.1: Type: text/plain, Size: 2514 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=56139

--- Comment #29 from Alex Deucher <agd5f@yahoo.com> ---
(In reply to comment #28)
> Alex, a simple question: you said bit 0 in EVERGREEN_CRTC_CONTROL stops the
> CRTC sync. With the culprit commit, when is it set? I mean, I had a quick
> look in the driver's code and I couldn't find it. When going in suspend
> state, shouldn't it be set to 0? Then, on resume, shouldn't it be set to 1?
> I may just have missed it, but could this be something missing? Same
> questions goes for GPU soft reset.

It's set by the vbios at boot before the OS loads.  Once the driver loads, it's
then handled by the modesetting code.  crtcs are enabled or disabled based on
what's connected and what displays the user has chosen to enable.

These functions have nothing to do with system suspend/hibernate and resume
directly.  evergreen_mc_stop() and evergreen_mc_resume() are for disabling MC
clients when we make changes to the GPU memory controller.  System
suspend/hibernate are handled by radeon_suspend_kms() and radeon_resume_kms(). 
radeon_suspend_kms() explicitly disables all of the display hardware:

list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
       drm_helper_connector_dpms(connector, DRM_MODE_DPMS_OFF);
}

And then the displays are enabled again in radeon_resume_kms():

/* blat the mode back in */
drm_helper_resume_force_mode(dev);
/* turn on display hw */
list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
    drm_helper_connector_dpms(connector, DRM_MODE_DPMS_ON);
}

> 
> Before the culprit commit, we were setting bit 0 to 0 on stop and setting it
> back to 1 on resume, which was working great. Why aren't we doing it anymore
> when suspending and resuming?

The previous code[1] didn't do that.  It set bit 0 to 0 in evergreen_mc_stop()
and then left it disabled in evergreen_mc_resume().  The crtc was not
subsequently re-enabled until the displays were set up later by the modesetting
code.  Prior to that patch[1], we just saved and restored the value of the
register which is basically what you are proposing, but that didn't work
otherwise we wouldn't have needed the subsequent patches.

We'd like to avoid disabling the crtc during driver load or GPU reset to avoid
the visible flicker it causes.

[1]:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commitdiff;h=81ee8fb6b52ec69eeed37fe7943446af1dccecc5

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 3617 bytes --]

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

  parent reply	other threads:[~2012-11-13 15:15 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-18 13:48 [Bug 56139] New: [bisected] kernel 3.7.0-rc1 breaks 6950 (CAYMAN) bugzilla-daemon
2012-10-18 13:51 ` [Bug 56139] " bugzilla-daemon
2012-10-18 14:16 ` bugzilla-daemon
2012-10-18 23:46 ` bugzilla-daemon
2012-10-22  5:57 ` bugzilla-daemon
2012-10-26  3:17 ` bugzilla-daemon
2012-10-26 14:08 ` bugzilla-daemon
2012-10-27  4:51 ` bugzilla-daemon
2012-10-31 18:29 ` bugzilla-daemon
2012-10-31 19:13 ` bugzilla-daemon
2012-11-01  0:38 ` bugzilla-daemon
2012-11-01  5:30 ` bugzilla-daemon
2012-11-05  6:58 ` bugzilla-daemon
2012-11-05 14:03 ` bugzilla-daemon
2012-11-05 14:28 ` bugzilla-daemon
2012-11-05 14:55 ` bugzilla-daemon
2012-11-05 16:20 ` bugzilla-daemon
2012-11-05 16:34 ` bugzilla-daemon
2012-11-05 22:46 ` bugzilla-daemon
2012-11-06  0:33 ` bugzilla-daemon
2012-11-06  1:02 ` bugzilla-daemon
2012-11-06 22:32 ` bugzilla-daemon
2012-11-06 22:50 ` bugzilla-daemon
2012-11-06 22:55 ` bugzilla-daemon
2012-11-06 22:56 ` bugzilla-daemon
2012-11-06 22:59 ` bugzilla-daemon
2012-11-11 18:55 ` bugzilla-daemon
2013-04-17  9:11   ` Huacai Chen
2012-11-12  4:04 ` [Bug 56139] [bisected] kernel 3.7.0-rc1 breaks 6950 (boot/grub2 and suspend/resume) (CAYMAN) bugzilla-daemon
2012-11-12  4:27 ` bugzilla-daemon
2012-11-12  5:32 ` bugzilla-daemon
2012-11-12 23:31 ` bugzilla-daemon
2012-11-13 15:15 ` bugzilla-daemon [this message]
2012-11-13 15:45 ` bugzilla-daemon
2012-11-14 16:14 ` bugzilla-daemon
2012-11-18 17:05 ` bugzilla-daemon
2012-11-18 19:04 ` bugzilla-daemon
2012-11-18 19:40 ` bugzilla-daemon
2012-11-18 19:41 ` bugzilla-daemon
2012-11-19 14:05 ` bugzilla-daemon
2012-11-19 14:18 ` bugzilla-daemon
2012-11-19 14:19 ` bugzilla-daemon
2012-11-19 23:31 ` bugzilla-daemon
2012-11-20  6:08 ` bugzilla-daemon
2012-11-20 15:23 ` bugzilla-daemon
2012-11-28  6:44 ` bugzilla-daemon
2012-11-28 14:29 ` bugzilla-daemon
2012-11-28 17:08 ` bugzilla-daemon
2013-01-05  5:57 ` bugzilla-daemon
2013-01-31  0:52 ` bugzilla-daemon
2013-01-31 13:35 ` bugzilla-daemon
2013-02-20  5:34 ` bugzilla-daemon
2013-02-23 10:28 ` bugzilla-daemon
2013-02-24  3:21 ` bugzilla-daemon
2013-02-25  1:56 ` bugzilla-daemon
2013-02-25 13:57 ` bugzilla-daemon
2013-03-11  4:41 ` bugzilla-daemon
2013-03-11  4:51 ` bugzilla-daemon
2013-03-11 13:38 ` bugzilla-daemon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-56139-502-CDH3t9nc04@http.bugs.freedesktop.org/ \
    --to=bugzilla-daemon@freedesktop.org \
    --cc=dri-devel@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).