devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Thierry Reding <thierry.reding@gmail.com>
To: Doug Anderson <dianders@chromium.org>
Cc: "Mark Rutland" <mark.rutland@arm.com>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
	"dri-devel@lists.freedesktop.org"
	<dri-devel@lists.freedesktop.org>,
	"Rob Herring" <robh+dt@kernel.org>,
	"Stéphane Marchesin" <marcheu@chromium.org>
Subject: Re: [PATCH v2 1/2] dt-bindings: add Starry KR122EA0SRA panel binding
Date: Mon, 13 Jun 2016 13:28:44 +0200	[thread overview]
Message-ID: <20160613112844.GB27930@ulmo.ba.sec> (raw)
In-Reply-To: <CAD=FV=XunjDGJYY1+-GPC+hN=kNxLiWbrtZD0_BO1ywerSLhfQ@mail.gmail.com>


[-- Attachment #1.1: Type: text/plain, Size: 3339 bytes --]

On Fri, Jun 10, 2016 at 12:52:41PM -0700, Doug Anderson wrote:
> Rob,
> 
> On Fri, Jun 10, 2016 at 11:43 AM, Rob Clark <robdclark@gmail.com> wrote:
> > On Fri, Jun 10, 2016 at 1:02 PM, Douglas Anderson <dianders@chromium.org> wrote:
> >> The Starry KR122EA0SRA is a 12.2", 1920x1200 TFT-LCD panel connected
> >> using eDP interfaces.
> >
> > so drive-by comment... but shouldn't eDP be probe-able?  Not sure why
> > we need panel drivers or DT bindings?
> 
> I was wondering about that too.  As far as I can tell:
> 
> 1. We need a panel driver because that appears to be what owns a
> reference to the backlight / panel power regulator and that part is
> not auto-probable.

Yes, that's one of the reasons why we still need DT nodes for panels,
even on a probe-able bus.

eDP has a mechanism to allow brightness control via DPCD, but I've never
actually seen it implemented. Even if we had that, we'd likely need to
represent supplies and GPIOs for the backlight, and we'd be back to
square one.

DSI also provides a means to control backlight brightness, but in the
same way that eDP doesn't go all the way, we'd require external
resources to be hooked up via DT again.

> 2. As far as I could tell, there is no way to declare a generic
> (unspecified) panel in the device tree.  Everyone seems to include
> "simple-panel" in their compatible string but as far as I can tell
> nothing in the kernel looks at it.

The ones that do are wrong and should eventually be updated. This was
originally done, and the driver used to match on simple-panel as well,
but in retrospect that didn't make any sense at all so it was removed
from the driver again.

One of the reasons why it doesn't make any sense is because even if you
have an EDID that's reachable, the EDID itself doesn't fully specify the
panel. Power sequences are one example of data that's not represented in
EDID.

> 3. In theory, all the info specified here should match the EDID
> exactly and thus (as you said) be probable.  However, it sounds like
> (for power sequencing reasons) there might be reasons why you'd want
> to know exactly what panel was present beforehand.  You might need to
> power the panel and backlight in very specific sequences, for
> instance.  I'm not sure it's always 100% possible in all embedded
> designs to read the EDID before you know how the sequencing should
> work (but, of course, I'm a NOOB).

It doesn't really matter whether you can access EDID or not, because
EDID contains absolutely nothing on the power sequences for the panel.
Even if it did, there'd be no way to relate that information to the
device tree binding phandles.

> 4. Reading the EDID can be slow.  If you happen to know all the info
> on the panel beforehand you can significantly speed up boot speed,
> notably how fast you can get something on the screen.

The motivation for potentially duplicating this information was not that
it's slow to read EDID, but that occasionally you might not be able to
access EDID. There could be a number of reasons why this might happen: a
device might end up with an erased or invalid EDID or the DDC used to
get at the EDID might be broken (I've been told that it's fairly common
for OEMs to not wire through the DDC wires in cables to reduce costs).

Thierry

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  parent reply	other threads:[~2016-06-13 11:28 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-10 17:02 [PATCH v2 1/2] dt-bindings: add Starry KR122EA0SRA panel binding Douglas Anderson
2016-06-10 18:43 ` Rob Clark
2016-06-10 19:52   ` Doug Anderson
2016-06-10 22:03     ` Rob Clark
     [not found]       ` <CAF6AEGsZxZuSVUCqVH=8FUOTMiWBVT52xQ+Qcaqt3yF=pRmf3w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-06-10 22:08         ` Stéphane Marchesin
2016-06-13 11:39           ` Thierry Reding
2016-06-13 11:28     ` Thierry Reding [this message]
     [not found] ` <1465578127-30330-1-git-send-email-dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
2016-06-10 17:26   ` Emil Velikov
2016-06-10 18:03     ` Doug Anderson
2016-06-14 20:00   ` Rob Herring
2016-07-11 12:07 ` Thierry Reding

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=20160613112844.GB27930@ulmo.ba.sec \
    --to=thierry.reding@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dianders@chromium.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marcheu@chromium.org \
    --cc=mark.rutland@arm.com \
    --cc=robh+dt@kernel.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;
as well as URLs for NNTP newsgroup(s).