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@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. 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
Attachment:
signature.asc
Description: OpenPGP digital signature