From: Chris Wilson <chris@chris-wilson.co.uk>
To: Keith Packard <keithp@keithp.com>, intel-gfx@lists.freedesktop.org
Subject: Re: FBC patchset
Date: Fri, 08 Jul 2011 23:08:01 +0100 [thread overview]
Message-ID: <aefc95$nu0qs@orsmga001.jf.intel.com> (raw)
In-Reply-To: <yuny608v4vw.fsf@aiko.keithp.com>
On Fri, 08 Jul 2011 14:28:35 -0700, Keith Packard <keithp@keithp.com> wrote:
> On Fri, 08 Jul 2011 21:19:29 +0100, Chris Wilson <chris@chris-wilson.co.uk> wrote:
> > On Fri, 08 Jul 2011 13:00:09 -0700, Keith Packard <keithp@keithp.com> wrote:
> > > On Fri, 08 Jul 2011 20:43:47 +0100, Chris Wilson <chris@chris-wilson.co.uk> wrote:
> > During intel_crtc_mode_set() and friends we only call into
> > intel_update_fbc() which just clears the FBC enabled bit and schedules a
> > delayed task to do the rest, if required.
>
> Does a further call into intel_crtc_mode_set push out the delayed task
> so that it now occurs at least 50ms after the later call? That seems
> useful, although it might not be necessary.
Yes, each call to intel_enable_fbc() resets the timer on the task,
delaying it further. The original purpose of this was to make sure that the
task did not kick off whilst the application was still page-flipping, and
it works equally well in the case of multiple calls during modeset or
very quick changes.
> We could, of course, make sure that a certain number of vblank intervals
> have passed instead of using a fixed timeout. Or we could compute the
> vblank interval from the mode and then just make sure the timeout used
> is sufficient. Or we could just use 100ms and assume that no-one will
> ever set a mode of less than 10Hz.
We already do make the assumption that 20Hz is the minimum refresh anybody
is likely to set, as a fallback for vblank timeouts. Maybe it is time we
formalized that assumption, #define VBLANK_TIMEOUT_MS 50, or
static inline int intel_get_vblank_timeout(dev, pipe) { return 50; }?
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
next prev parent reply other threads:[~2011-07-08 22:08 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-08 11:22 FBC patchset Chris Wilson
2011-07-08 11:22 ` [PATCH 1/8] drm/i915: Only export the generic intel_disable_fbc() interface Chris Wilson
2011-07-08 11:22 ` [PATCH 2/8] drm/i915: Replace direct calls to vfunc.disable_fbc with intel_disable_fbc() Chris Wilson
2011-07-08 11:22 ` [PATCH 3/8] drm/i915: Remove vestigial pitch from post-gen2 FBC control routines Chris Wilson
2011-07-08 17:20 ` Keith Packard
2011-07-08 11:22 ` [PATCH 4/8] drm/i915: Use of a CPU fence is mandatory to update FBC regions upon CPU writes Chris Wilson
2011-07-08 11:22 ` [PATCH 5/8] drm/i915: Set persistent-mode for ILK/SNB framebuffer compression Chris Wilson
2011-07-08 11:22 ` [PATCH 6/8] drm/i915: Disable FBC across page-flipping Chris Wilson
2011-07-08 11:22 ` [PATCH 7/8] drm/i915: Perform intel_enable_fbc() from a delayed task Chris Wilson
2011-07-08 11:22 ` [PATCH 8/8] drm/i915: Share the common work of disabling active FBC before updating Chris Wilson
2011-07-08 19:43 ` FBC patchset Chris Wilson
2011-07-08 20:00 ` Keith Packard
2011-07-08 20:19 ` Chris Wilson
2011-07-08 21:28 ` Keith Packard
2011-07-08 22:08 ` Chris Wilson [this message]
2012-01-17 16:18 ` Daniel Vetter
2012-01-17 16:57 ` Chris Wilson
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='aefc95$nu0qs@orsmga001.jf.intel.com' \
--to=chris@chris-wilson.co.uk \
--cc=intel-gfx@lists.freedesktop.org \
--cc=keithp@keithp.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