From: Daniel Vetter <daniel@ffwll.ch>
To: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
Cc: intel-gfx <intel-gfx@lists.freedesktop.org>
Subject: Re: 830GM still woes
Date: Fri, 16 May 2014 18:50:34 +0200 [thread overview]
Message-ID: <20140516165034.GT8790@phenom.ffwll.local> (raw)
In-Reply-To: <20140516160454.GT27580@intel.com>
On Fri, May 16, 2014 at 07:04:54PM +0300, Ville Syrjälä wrote:
> On Fri, May 16, 2014 at 05:09:53PM +0200, Daniel Vetter wrote:
> > On Fri, May 16, 2014 at 03:41:05PM +0100, Chris Wilson wrote:
> > > On Fri, May 16, 2014 at 04:02:48PM +0200, Thomas Richter wrote:
> > > > It's not that I haven't had a patch for it. Really trivial. I wonder
> > > > what keeps you from adding this to the kernel and just make things
> > > > working?
> > >
> > > You mean this patch?
> > >
> > > diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> > > index f671aca..3981898 100644
> > > --- a/drivers/gpu/drm/i915/intel_pm.c
> > > +++ b/drivers/gpu/drm/i915/intel_pm.c
> > > @@ -944,7 +944,7 @@ static const struct intel_watermark_params i915_wm_info = {
> > > static const struct intel_watermark_params i830_wm_info = {
> > > I855GM_FIFO_SIZE,
> > > I915_MAX_WM,
> > > - 1,
> > > + 8,
> > > 2,
> > > I830_FIFO_LINE_SIZE
> > > };
> > > @@ -1001,7 +1001,7 @@ static unsigned long intel_calculate_wm(unsigned long clock_in_khz,
> > > /* Don't promote wm_size to unsigned... */
> > > if (wm_size > (long)wm->max_wm)
> > > wm_size = wm->max_wm;
> > > - if (wm_size <= 0)
> > > + if (wm_size < (long)wm->default_wm)
> > > wm_size = wm->default_wm;
> > > return wm_size;
> > > }
> > >
> > > I haven't spotted any explanation as to why that is, but a rough guess
> > > would be that we program it to read in blocks of 8 superwords and that
> > > it tries and fails to read from memory when the fifo only has room for 1
> > > superword.
> >
> > I have it - we need to proper align watermark limits and fifo sizes and
> > round them apparently. Bspec at least strongly suggests that, and it would
> > perfectly fit Thomas' symptoms.
>
> Where have you seen that? And how should they be aligned? I've never
> seen anything like that in the spec. Also based on tests on my 830
> it doesn't need special alignment, it just needs some kind of minumum
> value that's always somewhere around 6-8 (IIRC).
>
> I do see this note "Up to FIFO Size minus burst length + 32 bytes"
> in one of the tables in the display doc. I can't tell if that means
> 'fifo_size - (burst_size + 32B)' or 'fifo_size - burst_size + 32B'.
> But in any case would actually make the minimum allowed value 7 or 9
> since we always configure the burst size to 8.
>
> On Gen3 the units change to 64B but it still has the same note with
> the +32B, so I'm not sure what should be done there. I guess it's
> just a copy paste fumble and maybe the same minimum value should
> still apply.
Yeah the burst size stuff - afaiu we should select the biggest one
possible and if that's not working out round the watermark up to match the
burst size. I didn't spot the +32/-32bytes anywhere though ... I guess
going with burst_size + 1 should be safest, especially if we make the code
more flexible to also allow a burst size of 4 for the really high-res
stuff.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
next prev parent reply other threads:[~2014-05-16 16:50 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-16 14:02 830GM still woes Thomas Richter
2014-05-16 14:41 ` Chris Wilson
2014-05-16 15:09 ` Daniel Vetter
2014-05-16 16:04 ` Ville Syrjälä
2014-05-16 16:50 ` Daniel Vetter [this message]
[not found] ` <23914_1400259040_537641E0_23914_9298_1_20140516165034.GT8790@phenom.ffwll.local>
2014-05-17 10:58 ` Thomas Richter
2014-05-29 14:10 ` Thomas Richter
2014-05-29 21:19 ` Breaking suspend/resume by the Pipe A quirk Thomas Richter
2014-06-02 8:27 ` Daniel Vetter
2014-06-02 10:34 ` [PATCH] Align i830 watermark to cache lines Thomas Richter
2014-06-02 10:41 ` Breaking suspend/resume by the Pipe A quirk Thomas Richter
2014-06-02 15:27 ` Daniel Vetter
2014-06-02 15:38 ` [Patch] Disabling the pipe A quirk for the Fujitsu S6010 Thomas Richter
2014-06-02 15:56 ` Daniel Vetter
2014-06-02 16:52 ` Thomas Richter
2014-06-02 17:39 ` Daniel Vetter
2014-06-02 18:44 ` Thomas Richter
[not found] ` <1027_1401722832_538C97D0_1027_15897_1_20140602152702.GU19050@phenom.ffwll.local>
2014-06-03 14:38 ` Breaking suspend/resume by the Pipe A quirk Thomas Richter
2014-06-03 14:45 ` Daniel Vetter
2014-06-03 15:04 ` Thomas Richter
2014-06-03 15:14 ` Chris Wilson
2014-06-03 15:19 ` Thomas Richter
2014-06-03 15:26 ` Chris Wilson
2014-06-03 15:50 ` Thomas Richter
2014-06-03 16:03 ` Chris Wilson
[not found] ` <17205_1401811442_538DF1F2_17205_16362_1_20140603160352.GA6129@nuc-i3427.alporthouse.com>
2014-06-04 22:43 ` Bug: Pipe A underrun on resolution switching on 830MG Thomas Richter
2014-06-08 21:20 ` Broken suspend/resume on i830 (with debug information) Thomas Richter
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=20140516165034.GT8790@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
--cc=ville.syrjala@linux.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