From: Jesse Barnes <jbarnes@virtuousgeek.org>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: "intel-gfx@lists.freedesktop.org" <intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH 0/6] Enabling DRRS support in the kernel
Date: Thu, 5 Dec 2013 07:52:42 -0800 [thread overview]
Message-ID: <20131205075242.78b4e6df@jbarnes-desktop> (raw)
In-Reply-To: <20131128131409.GI27344@phenom.ffwll.local>
On Thu, 28 Nov 2013 14:14:09 +0100
Daniel Vetter <daniel@ffwll.ch> wrote:
> > [Vandana/Pradeep] This patch series is for seamless DRRS
> > support and has to be a separate path from mode set as we just
> > toggle the PIPE_CONF_RR_SWTICH for seamless RR transition without
> > flicker. Complete modeset using setCrtc will result in partial
> > blanking or flicker. We are not implementing fast boot as part of
> > this series. Most eDP panels today which support multiple refresh
> > rates, support seamless DRRS. This means that hardware capability
> > is made use of by toggling a bit in pipe config to switch between
> > refresh rates on the fly. The patch series is aimed to take
> > advantage of this capability to switch refresh rates based on
> > idleness or video playback requirement. Hence, we chose the
> > connector attribute/ set property path. Also in order to support
> > the Media refresh rates of 50/48 we thought it incorrect to
> > populate those modes in probed_mode list as those values are not
> > from the EDID. So in order for User space to know the media
> > refresh rates supported we have exposed a set_property interface
> > which makes User space aware of these media refresh rates. Also we
> > do not intend to do a complete mode set on media use cases in
> > which case we think using setCrtc is not needed. Using setCrtc
> > will invariably result in intermittant blanking or flicker which
> > cannot be avoided, and gives undesirable effect during playback.
> > Seamless DRRS doesn't need a complete modeset and hence no flicker
> > or temporary blanking. Changing the toggle RR bit in PIPE_CONF is
> > faster. Also since BDW has only single M/N/TU register the current
> > code takes care of it easily. Kindly let us know your opinion.
> > Since Seamless DRRS for eDP is separate path from modeset we can
> > keep the connector property attribute as it is.
>
> First the technical stuff:
>
> - Adding the additional modes to the mode list is imo totally ok and as
> the design intents. We are already adding other modes from the vbt here
> if those are available. The only restriction is that the kernel may not
> add modes which don't work. But as long as the vbt tells us that 48Hz
> will work we can (and imo should) use it.
>
> - Second changing the frequency changes the refresh rate. Atm both our
> userspace and the kernel support code assume that this can only be done
> through a SetCrtc call. So adjusting the dotclock is actually the right
> interface and we don't need any additional property.
>
> Now the more political stuff:
>
> - We have the long-term goal of solid fastboot support. We've the designed
> we've picked that actually means 95% effort to get flicker-free SetCrtc
> going and 5% actual code for fastboot. We're not there yet, there's only
> a preview available which is disabled by default and uses a few hacks.
> But generally all features that are relevant need to use the new
> infrastructure and help move things forward.
>
> - Upstream has a time horizon of 5-10 years for the kernel/userspace
> interface. Which means quick hacks are not allowed. And in my opinion
> your property is a quick hack, which nicely simplified the
> implementation.
>
> So in short I know that my request extends the scope of your patches. But
> upstream also imposes differing constraints than a product tree.
It should be possible to still merge the automatic, in-kernel only DRRS
bits though, right? Then work on making dotclock/refresh changes from
mode sets flicker free (shouldn't be a massive amount of work).
--
Jesse Barnes, Intel Open Source Technology Center
prev parent reply other threads:[~2013-12-05 15:51 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-19 6:06 [PATCH 0/6] Enabling DRRS support in the kernel Vandana Kannan
2013-11-19 6:06 ` [PATCH 1/6] drm/i915: Adding VBT fields to support eDP DRRS feature Vandana Kannan
2013-11-19 6:07 ` [PATCH 2/6] drm/i915: Parse EDID probed modes for DRRS support Vandana Kannan
2013-11-19 6:07 ` [PATCH 3/6] drm/i915: Add support for DRRS set property to switch RR Vandana Kannan
2013-11-19 6:07 ` [PATCH 4/6] drm/i915: Idleness detection for DRRS Vandana Kannan
2013-11-19 6:07 ` [PATCH 5/6] drm/i915: Support to read DMRRS field from VBT structure Vandana Kannan
2013-11-19 6:07 ` [PATCH 6/6] drm/i915: Adding support for DMRRS for media playback Vandana Kannan
2013-11-26 18:26 ` [PATCH 0/6] Enabling DRRS support in the kernel Daniel Vetter
2013-11-28 10:22 ` Kannan, Vandana
2013-11-28 13:14 ` Daniel Vetter
2013-12-05 15:52 ` Jesse Barnes [this message]
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=20131205075242.78b4e6df@jbarnes-desktop \
--to=jbarnes@virtuousgeek.org \
--cc=daniel@ffwll.ch \
--cc=intel-gfx@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