From: David John <davidjon@xenontk.org>
To: Jesse Barnes <jbarnes@virtuousgeek.org>, yakui.zhao@intel.com
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Fix For Korg Bug #14897 (GM45 Display Flicker)
Date: Wed, 27 Jan 2010 15:01:58 +0530 [thread overview]
Message-ID: <4B60080E.2000508@xenontk.org> (raw)
Hi Jesse, Yakui,
Sorry for the delay, but I was busy with other work last week. I got
some time to look into this on Monday and the problem seems to be this:
With the external display connected on VGA, intel_update_watermarks
calls update_wm a couple of times in sequence with the following params:
1) planea_clock = 148500 planeb_clock = 0, sr_hdisplay=1920 (VGA)
2) planea_clock = 148500 planeb_clock = 72330, sr_hdisplay=1366 (LVDS)
In update_wm (in my case g4x_update_wm), for 1) sr_entries is calculated
correctly and self refresh is enabled. For 2) sr_entries remains zero
and the SR watermark is set as such. However, SR remains
active. On mode switch to console, this causes a FIFO underrun and the
display flicker.
The solution that I see is to simply disable SR if more than one pipe is
enabled. I've written a patch that does this. Also another point is that
the G45 docs state that a particular sequence has to be followed if SR
is to be used when only one pipe is active for Cantiga (Pg 30, G45 Vol
3). I didn't see any code doing this, but I did not see any untoward
behaviour either, with only my patch applied.
I've updated the patch to fix i965 and i9xx as I assume the same problem
will occur on those chipsets as well, but this has _not_been tested as I
don't have the relevant platforms.
Patch follows this mail. Please let me know if any changes are required.
The VGA output powering-on on mode change mentioned in my bug report is
a separate DRM bug for which I will send a patch later.
Regards,
David.
next reply other threads:[~2010-01-27 9:31 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-01-27 9:31 David John [this message]
2010-01-27 9:49 ` [PATCH] Disable SR when more than one pipe is enabled David John
2010-01-27 16:51 ` Jesse Barnes
2010-01-28 6:58 ` David John
2010-02-04 16:35 ` Eric Anholt
2010-01-27 13:52 ` Fix For Korg Bug #14897 (GM45 Display Flicker) ykzhao
2010-01-27 14:59 ` David John
2010-01-27 16:56 ` Jesse Barnes
2010-01-27 16:48 ` Jesse Barnes
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=4B60080E.2000508@xenontk.org \
--to=davidjon@xenontk.org \
--cc=jbarnes@virtuousgeek.org \
--cc=linux-kernel@vger.kernel.org \
--cc=yakui.zhao@intel.com \
/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