[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <530DFF4C.8080807@ti.com>
Date: Wed, 26 Feb 2014 16:50:52 +0200
From: Tomi Valkeinen <tomi.valkeinen@...com>
To: Philipp Zabel <p.zabel@...gutronix.de>
CC: Russell King - ARM Linux <linux@....linux.org.uk>,
Mauro Carvalho Chehab <m.chehab@...sung.com>,
Grant Likely <grant.likely@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
Sylwester Nawrocki <s.nawrocki@...sung.com>,
Laurent Pinchart <laurent.pinchart@...asonboard.com>,
Kyungmin Park <kyungmin.park@...sung.com>,
<linux-kernel@...r.kernel.org>, <linux-media@...r.kernel.org>,
<devicetree@...r.kernel.org>,
Guennadi Liakhovetski <g.liakhovetski@....de>
Subject: Re: [PATCH v4 3/3] Documentation: of: Document graph bindings
On 26/02/14 16:57, Philipp Zabel wrote:
> Hi Tomi,
>
> Am Mittwoch, den 26.02.2014, 15:14 +0200 schrieb Tomi Valkeinen:
>> On 25/02/14 16:58, Philipp Zabel wrote:
>>
>>> +Optional endpoint properties
>>> +----------------------------
>>> +
>>> +- remote-endpoint: phandle to an 'endpoint' subnode of a remote device node.
>>
>> Why is that optional? What use is an endpoint, if it's not connected to
>> something?
>
> This allows to include the an empty endpoint template in a SoC dtsi for
> the convenience of board dts writers. Also, the same property is
> currently listed as optional in video-interfaces.txt.
>
> soc.dtsi:
> display-controller {
> port {
> disp0: endpoint { };
> };
> };
>
> board.dts:
> #include "soc.dtsi"
> &disp0 {
> remote-endpoint = <&panel_input>;
> };
> panel {
> port {
> panel_in: endpoint {
> remote-endpoint = <&disp0>;
> };
> };
> };
>
> Any board not using that port can just leave the endpoint disconnected.
Hmm I see. I'm against that.
I think the SoC dtsi should not contain endpoint node, or even port node
(at least usually). It doesn't know how many endpoints, if any, a
particular board has. That part should be up to the board dts.
I've done this with OMAP as (much simplified):
SoC.dtsi:
dss: dss@...00000 {
status = "disabled";
};
Nothing else (relevant here). The binding documentation states that dss
has one port, and information what data is needed for the port and endpoint.
board.dts:
&dss {
status = "ok";
pinctrl-names = "default";
pinctrl-0 = <&dss_dpi_pins>;
dpi_out: endpoint {
remote-endpoint = <&tfp410_in>;
data-lines = <24>;
};
};
That's using the shortened version without port node.
Of course, it's up to the developer how his dts looks like. But to me it
makes sense to require the remote-endpoint property, as the endpoint, or
even the port, doesn't make much sense if there's nothing to connect to.
Tomi
Download attachment "signature.asc" of type "application/pgp-signature" (902 bytes)
Powered by blists - more mailing lists