From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: intel-gfx@lists.freedesktop.org, Paulo Zanoni <paulo.r.zanoni@intel.com>
Subject: Re: [PATCH 4/6] drm/i915: set ILK_DPFC_FENCE_YOFF to 0 on SNB
Date: Thu, 9 Jul 2015 20:22:32 +0300 [thread overview]
Message-ID: <20150709172232.GK5176@intel.com> (raw)
In-Reply-To: <20150709171004.GA7410@phenom.ffwll.local>
On Thu, Jul 09, 2015 at 07:10:04PM +0200, Daniel Vetter wrote:
> On Wed, Jul 08, 2015 at 05:58:57PM -0300, Paulo Zanoni wrote:
> > From: Paulo Zanoni <paulo.r.zanoni@intel.com>
> >
> > The doc is pretty clear that this register should be set to 0 on SNB.
> > We already write y_offset to DPFC_CPU_FENCE_OFFSET a few lines below.
> >
> > Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
>
> Hm, do we have testcases where we have a sufficiently big y offset? We can
> just allocate 128 lines more and use that as the offset, that should be
> big enough everywhere. Actually make that 129 lines to check the tile-size
> rounding ;-)
>
> Ofc this means we need to have two sets of testcases for all the affected
> tests (i.e. everything that tries to test the gtt hw tracking).
>
> Another funny corner case (which we're getting wrong on skl even without
> fbc) is x offsets > 2048 pixels (since x/y offset registers don't hold
> bigger values and then it wraps).
>
> I.e. I'd like this patch (and the others) to be augmented with a Testcase:
> tag.
I think the entire Y offset thing is currently being misprogrammed.
IIRC the offset is from the display base address but we program in
the offset from the start of the FB.
>
> Cheers, Daniel
>
> > ---
> > drivers/gpu/drm/i915/intel_fbc.c | 7 ++++++-
> > 1 file changed, 6 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_fbc.c b/drivers/gpu/drm/i915/intel_fbc.c
> > index 0373cbc..0a24e96 100644
> > --- a/drivers/gpu/drm/i915/intel_fbc.c
> > +++ b/drivers/gpu/drm/i915/intel_fbc.c
> > @@ -216,7 +216,12 @@ static void ilk_fbc_enable(struct intel_crtc *crtc)
> > dpfc_ctl |= obj->fence_reg;
> >
> > y_offset = get_crtc_fence_y_offset(crtc);
> > - I915_WRITE(ILK_DPFC_FENCE_YOFF, y_offset);
> > +
> > + if (IS_GEN5(dev_priv))
> > + I915_WRITE(ILK_DPFC_FENCE_YOFF, y_offset);
> > + else
> > + I915_WRITE(ILK_DPFC_FENCE_YOFF, 0);
> > +
> > I915_WRITE(ILK_FBC_RT_BASE, i915_gem_obj_ggtt_offset(obj) | ILK_FBC_RT_VALID);
> > /* enable it... */
> > I915_WRITE(ILK_DPFC_CONTROL, dpfc_ctl | DPFC_CTL_EN);
> > --
> > 2.1.4
> >
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
> --
> Daniel Vetter
> Software Engineer, Intel Corporation
> http://blog.ffwll.ch
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2015-07-09 17:23 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-08 20:58 [PATCH 0/6] More small FBC fixes Paulo Zanoni
2015-07-08 20:58 ` [PATCH 1/6] drm/i915: make sure we're not changing the FBC CFB with FBC enabled Paulo Zanoni
2015-07-08 20:58 ` [PATCH 2/6] drm/i915: fix the FBC work allocation failure path Paulo Zanoni
2015-07-08 22:05 ` Chris Wilson
2015-07-09 19:27 ` Paulo Zanoni
2015-07-08 20:58 ` [PATCH 3/6] drm/i915: fix FBC for cases where crtc->base.y is non-zero Paulo Zanoni
2015-07-08 20:58 ` [PATCH 4/6] drm/i915: set ILK_DPFC_FENCE_YOFF to 0 on SNB Paulo Zanoni
2015-07-09 17:10 ` Daniel Vetter
2015-07-09 17:15 ` Paulo Zanoni
2015-07-09 17:18 ` Paulo Zanoni
2015-07-09 17:22 ` Ville Syrjälä [this message]
2015-07-09 17:31 ` Paulo Zanoni
2015-07-09 17:39 ` Ville Syrjälä
2015-07-14 19:01 ` Paulo Zanoni
2015-07-08 20:58 ` [PATCH 5/6] drm/i915: check for the supported strides on HSW+ FBC Paulo Zanoni
2015-07-09 17:15 ` Daniel Vetter
2015-07-09 17:28 ` Paulo Zanoni
2015-07-09 19:29 ` Paulo Zanoni
2015-07-14 18:55 ` Paulo Zanoni
2015-07-08 20:58 ` [PATCH 6/6] drm/i915: try a little harder to find an FBC CRTC Paulo Zanoni
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=20150709172232.GK5176@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=daniel@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
--cc=paulo.r.zanoni@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.