From: Sylwester Nawrocki <sylvester.nawrocki@gmail.com>
To: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Thierry Reding <thierry.reding@gmail.com>,
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>,
Rob Herring <rob.herring@calxeda.com>,
Pawel Moll <pawel.moll@arm.com>,
Mark Rutland <mark.rutland@arm.com>,
Stephen Warren <swarren@wwwdotorg.org>,
Ian Campbell <ijc+devicetree@hellion.org.uk>,
devicetree@vger.kernel.org, linux-fbdev@vger.kernel.org,
dri-devel@lists.freedesktop.org, Dave Airlie <airlied@gmail.com>,
linux-media@vger.kernel.org,
Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Subject: Re: [RFR 2/2] drm/panel: Add simple panel support
Date: Fri, 25 Oct 2013 12:54:36 +0200 [thread overview]
Message-ID: <526A4DEC.2000603@gmail.com> (raw)
In-Reply-To: <5268FBE3.80000@ti.com>
On 10/24/2013 12:52 PM, Tomi Valkeinen wrote:
> On 24/10/13 13:40, Laurent Pinchart wrote:
>
>>> panel {
>>> remote =<&remote-endpoint>;
>>> common-video-property =<asd>;
>>> };
>>>
>>> panel {
>>> port {
>>> endpoint {
>>> remote =<&remote-endpoint>;
>>> common-video-property =<asd>;
>>> };
>>> };
>>> };
>>
>> Please note that the common video properties would be in the panel node, not
>> in the endpoint node (unless you have specific requirements to do so, which
>> isn't the common case).
>
> Hmm, well, the panel driver must look for its properties either in the
> panel node, or in the endpoint node (I guess it could look them from
> both, but that doesn't sound good).
Presumably the OS could be searching for port node and any endpoint node
inside it first. If that's not found then it could be parsing the panel
node.
Please note that a port node may be required even if there is only one
port, when there are multiple physical bus interfaces, e.g. at an LCD
controller and only one of them is used. The reg property would select
the physical bus interface.
I wonder if a property like #video-port or #video-endpoint could be used
to indicate that a node contains video bus properties. Probably it's too
late to introduce it now and make it a required property for the endpoint
nodes or nodes containing the common video properties.
> If you write the panel driver, and in all your cases the properties work
> fine in the panel node, does that mean they'll work fine with everybody?
It's likely not safe to assume so. In V4L data bus properties are specified
a both the receiver and the transmitter endpoint nodes separately.
> I guess there are different kinds of properties. Something like a
> regulator is obviously property of the panel. But anything related to
> the video itself, like DPI's bus width, or perhaps even something like
> "orientation" if the panel supports such, could need to be in the
> endpoint node.
If we use port/endpoint nodes it all seems clear, the video bus properties
are put in an endpoint node.
But since we are considering a simplified binding all the properties would
be placed in the panel or display controller node.
> But yes, I understand what you mean. With "common-video-property" I
> meant common properties like DPI bus width.
>
>>> If that can be supported in the SW by adding complexity to a few functions,
>>> and it covers practically all the panels, isn't it worth it?
>>>
>>> Note that I have not tried this, so I don't know if there are issues.
>>> It's just a thought. Even if there's need for a endpoint node, perhaps
>>> the port node can be made optional.
>>
>> It can be worth it, as long as we make sure that simplified bindings cover the
>> needs of the generic code.
>>
>> We could assume that, if the port subnode isn't present, the device will have
>> a single port, with a single endpoint. However, isn't the number of endpoints
>
> Right.
>
>> a system property rather than a device property ? If a port of a device is
>
> Yes.
>
>> connected to two remote ports it will require two endpoints. We could select
>> the simplified or full bindings based on the system topology though.
Yes, I guess it's all about the system topology. Any simplified binding
would
work only for very simple configuration like single-output LCD
controller with
single panel attached to it.
> The drivers should not know about simplified/normal bindings. They
> should use CDF DT helper functions to get the port and endpoint
> information. The helper functions would do the assuming.
Yes, anyway all the parsing is supposed to be done within the helpers.
--
Thanks,
Sylwester
next prev parent reply other threads:[~2013-10-25 10:54 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-16 18:25 [RFR 0/2] DRM display panel support Thierry Reding
[not found] ` <1381947912-11741-1-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-16 18:25 ` [RFR 1/2] drm: Add " Thierry Reding
2013-10-16 18:25 ` [RFR 2/2] drm/panel: Add simple " Thierry Reding
[not found] ` <1381947912-11741-3-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-17 0:47 ` Laurent Pinchart
2013-10-17 8:28 ` Dave Airlie
[not found] ` <CAPM=9tzU36cwcM0pH0J_Vgc6UOj5MHdVNDvn3wpGNuihbMqdQQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-10-17 8:49 ` Tomi Valkeinen
[not found] ` <525FA4B0.8060504-l0cyMroinI0@public.gmane.org>
2013-10-17 9:16 ` Thierry Reding
[not found] ` <20131017091614.GC2502-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-17 9:52 ` Tomi Valkeinen
[not found] ` <525FB368.6020003-l0cyMroinI0@public.gmane.org>
2013-10-17 10:48 ` Thierry Reding
[not found] ` <20131017104856.GA10993-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-17 11:07 ` Laurent Pinchart
2013-10-20 22:07 ` Stephen Warren
[not found] ` <52645428.9080607-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-24 11:20 ` Laurent Pinchart
2013-10-24 22:06 ` Stephen Warren
[not found] ` <526999DA.7080409-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-25 8:13 ` Thierry Reding
[not found] ` <20131025081314.GC19622-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-25 13:47 ` Laurent Pinchart
2013-10-25 14:10 ` Thierry Reding
[not found] ` <20131025141029.GD1551-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-25 14:22 ` Laurent Pinchart
2013-10-25 11:33 ` Laurent Pinchart
2013-10-25 12:29 ` Thierry Reding
[not found] ` <20131025122925.GA24720-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-25 13:49 ` Laurent Pinchart
2013-10-25 15:29 ` Stephen Warren
2013-10-17 11:21 ` Tomi Valkeinen
2013-10-20 22:01 ` Stephen Warren
2013-10-17 8:53 ` Thierry Reding
[not found] ` <20131017085342.GB2502-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-17 10:22 ` Tomi Valkeinen
[not found] ` <525FBA5D.9000001-l0cyMroinI0@public.gmane.org>
2013-10-17 11:05 ` Thierry Reding
[not found] ` <20131017110517.GC10993-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-17 11:15 ` Laurent Pinchart
2013-10-17 12:06 ` Thierry Reding
[not found] ` <20131017120646.GE10993-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-17 12:23 ` Laurent Pinchart
2013-10-17 12:55 ` Thierry Reding
2013-10-17 11:50 ` Tomi Valkeinen
[not found] ` <525FCF07.6070006-l0cyMroinI0@public.gmane.org>
2013-10-17 12:12 ` Thierry Reding
2013-10-17 11:02 ` Laurent Pinchart
2013-10-17 11:35 ` Tomi Valkeinen
[not found] ` <525FCB95.6070401-l0cyMroinI0@public.gmane.org>
2013-10-17 11:51 ` Laurent Pinchart
2013-10-17 11:59 ` Tomi Valkeinen
[not found] ` <525FD12D.3000200-l0cyMroinI0@public.gmane.org>
2013-10-17 12:17 ` Laurent Pinchart
2013-10-17 12:32 ` Tomi Valkeinen
[not found] ` <525FD8DD.3090509-l0cyMroinI0@public.gmane.org>
2013-10-20 19:29 ` Sylwester Nawrocki
2013-10-24 10:40 ` Laurent Pinchart
2013-10-24 10:52 ` Tomi Valkeinen
2013-10-25 10:54 ` Sylwester Nawrocki [this message]
2013-10-17 11:41 ` Thierry Reding
[not found] ` <20131017114139.GD10993-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-17 12:14 ` Laurent Pinchart
2013-10-17 12:46 ` Thierry Reding
[not found] ` <20131017124619.GG10993-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-24 11:05 ` Laurent Pinchart
2013-10-24 11:48 ` Thierry Reding
[not found] ` <20131024114823.GC11296-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-25 11:27 ` Laurent Pinchart
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=526A4DEC.2000603@gmail.com \
--to=sylvester.nawrocki@gmail.com \
--cc=airlied@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=g.liakhovetski@gmx.de \
--cc=ijc+devicetree@hellion.org.uk \
--cc=laurent.pinchart+renesas@ideasonboard.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=pawel.moll@arm.com \
--cc=rob.herring@calxeda.com \
--cc=swarren@wwwdotorg.org \
--cc=thierry.reding@gmail.com \
--cc=tomi.valkeinen@ti.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;
as well as URLs for NNTP newsgroup(s).