Am Mittwoch, den 26.02.2014, 16:50 +0200 schrieb Tomi Valkeinen: > 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). Well, at least the port is a physical thing. I see no reason not to have it in the dtsi. > 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@58000000 { > 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. Ok, that looks compact enough. I still don't see the need to change make the remote-endpoint property required to achieve this, though. On the other hand, I wouldn't object to making it mandatory either. > 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. Please let's not make it mandatory for a port node to contain an endpoint. For any device with multiple ports we can't use the simplified form above, and only adding the (correctly numbered) port in all the board device trees would be a pain. regards Philipp -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html