From: Daniel Vetter <daniel@ffwll.ch>
To: Bob Paauwe <bob.j.paauwe@intel.com>
Cc: intel-gfx <intel-gfx@lists.freedesktop.org>
Subject: Re: [RFC 09/12] drm/i915/config: Add VBT settings configuration.
Date: Wed, 27 May 2015 14:23:41 +0200 [thread overview]
Message-ID: <20150527122341.GN8341@phenom.ffwll.local> (raw)
In-Reply-To: <20150526142000.536e4bb0@bpaauwe-desk.fm.intel.com>
On Tue, May 26, 2015 at 02:20:00PM -0700, Bob Paauwe wrote:
> On Thu, 21 May 2015 10:37:07 +0200
> Daniel Vetter <daniel@ffwll.ch> wrote:
>
> > On Wed, May 20, 2015 at 10:07:58AM -0700, Bob Paauwe wrote:
> > > On Fri, 15 May 2015 12:39:20 +0300
> > > Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> > >
> > > > On Tue, Feb 24, 2015 at 09:52:16PM +0100, Daniel Vetter wrote:
> > > > > On Tue, Feb 24, 2015 at 10:37:10AM -0800, Bob Paauwe wrote:
> > > > > > On Tue, 24 Feb 2015 14:57:48 +0100
> > > > > > Daniel Vetter <daniel@ffwll.ch> wrote:
> > > > > > > As Jani points out we already have vbt headaches, it would be good if we
> > > > > > > only have those once ;-)
> > > > > > > -Daniel
> > > > > >
> > > > > > I've been trying to think of a better way but not really coming up with
> > > > > > something that scales well. EMGD took the approach of create
> > > > > > configuration for only those values that we had customer requests for.
> > > > > > And that was primarily just the panel power up/down timing sequence and
> > > > > > some backlight control. We never tried to replicate everything that
> > > > > > could be set via vbt.
> > > > >
> > > > > If it's only a very few select things we could just add them as atomic
> > > > > properties to connectors. No need for anything special, and we could even
> > > > > use that to debug panel issues at runtime.
> > > >
> > > > I think properties should only be used for something that the user
> > > > might actually want to configure. Not sure what exactly we're talking
> > > > about here, but eg. panel timings are definitely not in that category
> > > > IMO.
> > > >
> > > I did create an implementation that used properties for this (and a
> > > couple of other things) and that was my conclusion as well. These would
> > > probably have to be read-only properties with the values set by some
> > > configuration framework (like the ACPI property framework this was
> > > originally part of).
> > >
> > > I also did an implementation where I set these via module parameters
> > > and, to me, that seems more reasonable. It's easy to implement and a
> > > fairly simple patch to maintain.
> > >
> > > Given the small number of items that EMGD can currently configure at
> > > driver load that i915 can't, I'm really questioning the need for a
> > > full configuration framework. I'm also trying to determine if we even
> > > have requirements for these anymore or if they were added in to EMGD at
> > > some point to workaround broken firmware. If we do end up with a
> > > customer requirement to configure the panel power sequence, maintaining
> > > an embedded only patch to add module parameters may suffice.
> > >
> > > The two other items that EMGD has currently are backlight related (max
> > > and level) and DPCD max link rate. I'm also trying to determine if
> > > there's really a requirement for overriding these. If there is, module
> > > parameters would be the easiest way here too.
> > >
> > > When I started looking at configuration at driver load I thought we
> > > had a lot of different things that needed to be configured, which is
> > > why I discounted using module parameters and was looking at a larger
> > > framework solution. Another consideration that has come into play is
> > > that a framework solution, like the ACPI one that I posted, has
> > > negative impact on driver load time. And driver load time is
> > > very important to some customers.
> >
> > For me the big reason for an entire framework was that we also wanted to
> > spec the initial modeset, including any kind of splash screen loaded as
> > firmware blobs. That's also the reason for aiming for properties by
> > default (that's the new transport for all things modeset after all), and
> > using hidden configuration variables only for cases where a prop really
> > doesn't make any sense.
> >
> > But if that initial modeset use-cases is nuked too I agreee there's indeed
> > not much left to justify an entire framework ...
> > -Daniel
>
> The initial mode set use-case isn't nuked but that use-case exist
> to try and parallelize the mode in the kernel boot phase as a way to
> reduce time to first flip. Right now, the ACPI functions add enough
> overhead that I'm concerned it will negate the advantage of doing the
> initial mode set in the driver.
>
> With the framework, read-only properties is compelling. I'm
> experimenting with an number of different implementations and trying to
> get feedback on all of them. Nothing yet has jumped out as the perfect
> implementation.
>
> This is mostly back-burned right now as I wait for all the atomic
> mode setting code to land.
Yeah that shiny new world of exposing everything modeset related in a
unified way as a property has unfortunately not yet materialized. Makes
sense to figure out first what we really need.
-Daniel
--
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
next prev parent reply other threads:[~2015-05-27 12:21 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-12 23:41 [RFC 00/12] i915 init-time configuration Bob Paauwe
2015-02-12 23:41 ` [RFC 01/12] drm/i915/config: Initial framework Bob Paauwe
2015-02-13 8:19 ` Jani Nikula
2015-02-24 16:17 ` Daniel Vetter
2015-02-24 17:41 ` Bob Paauwe
2015-02-24 20:47 ` Daniel Vetter
2015-02-12 23:41 ` [RFC 02/12] drm/i915/config: Introduce intel_output_name Bob Paauwe
2015-02-13 8:12 ` Jani Nikula
2015-02-12 23:41 ` [RFC 03/12] drm/i915/config: Add init-time configuration of bits per color Bob Paauwe
2015-02-12 23:41 ` [RFC 04/12] drm/i915/config: Set dp panel fitter property based on init-time config Bob Paauwe
2015-02-12 23:41 ` [RFC 05/12] drm/i915/config: Set general connector properties using config Bob Paauwe
2015-02-12 23:41 ` [RFC 06/12] drm/i915/config: Split out allocation of list nodes Bob Paauwe
2015-02-13 8:15 ` Jani Nikula
2015-02-12 23:41 ` [RFC 07/12] drm/i915/config: Get workaround information from configuration Bob Paauwe
2015-02-24 13:51 ` Daniel Vetter
2015-02-24 17:54 ` Bob Paauwe
2015-02-12 23:41 ` [RFC 08/12] drm/i915/config: Use workarounds list " Bob Paauwe
2015-02-12 23:41 ` [RFC 09/12] drm/i915/config: Add VBT settings configuration Bob Paauwe
2015-02-24 13:57 ` Daniel Vetter
2015-02-24 18:37 ` Bob Paauwe
2015-02-24 20:52 ` Daniel Vetter
2015-02-24 22:23 ` Bob Paauwe
2015-05-15 9:39 ` Ville Syrjälä
2015-05-20 17:07 ` Bob Paauwe
2015-05-21 8:37 ` Daniel Vetter
2015-05-26 21:20 ` Bob Paauwe
2015-05-27 12:23 ` Daniel Vetter [this message]
2015-02-12 23:41 ` [RFC 10/12] drm/i915/config: Introduce a test table and code to make use of it Bob Paauwe
2015-02-12 23:41 ` [RFC 11/12] drm/i915/config: Add workaround properties to ACPI table Bob Paauwe
2015-02-12 23:41 ` [RFC 12/12] drm/i915/config: Add ACPI device examples for VBT configuration Bob Paauwe
2015-02-13 8:08 ` [RFC 00/12] i915 init-time configuration Jani Nikula
2015-02-13 17:17 ` Bob Paauwe
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=20150527122341.GN8341@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=bob.j.paauwe@intel.com \
--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