[PATCH v1 1/2] arm64: dts: imx8mp: Add CSIS DT nodes

Marco Felsch m.felsch at pengutronix.de
Mon Apr 17 06:15:53 PDT 2023


On 23-04-17, Adam Ford wrote:

...

> > > > > > If we would add:
> > > > > >                                                 mipi_csi_0_in:
> > endpoint {};
> > > > > >
> > > > > > here we could refernce it from overlays/board dts files more easily.
> > > > >
> > > > > Isn't there an unwritten rule (or consensus) that an endpoint should
> > > > > always have a remote-endpoint property ?
> > > >
> > > > I don't know if there is one.
> > > >
> > > > > While ports describe hardware properties of a device and should always
> > > > > be there regardless of connections, endpoints describe connections and
> > > > > I don't think they should be instantiated with a valid
> > > > > remote-endpoint.
> > > >
> > > > I know, therefore I mentioned it as idea to make it 'easier' to add
> > > > camera nodes.
> > >
> > > As a middleground, would it be useful to have a label for the port ?
> > > Something like
> > >
> > >       mipi_csi_0: csi at 32e40000 {
> > >               ports {
> > >                       mipi_csi_0_port_0: port at 0 {
> > >                       };
> > >               };
> > >       };
> > >
> > > An overlay could then reference that and create the endpoint. I'm not
> > > entirely sure how useful that would be though, as the overlay would need
> > > to enable the CSI node anyway. Compare
> > >
> > > --------
> > > &mipi_csi_0 {
> > >       status = "okay";
> > > };
> > >
> > > &mipi_csi_0_port_0 {
> > >       mipi_csi_0_in: endpoint {
> > >               remote-endpoint = <&imx327_out>;
> > >       };
> > > };
> > > --------
> > >
> > > with
> > >
> > > --------
> > > &mipi_csi_0 {
> > >       status = "okay";
> > >
> > >       ports {
> > >               port at 0 {
> > >                       mipi_csi_0_in: endpoint {
> > >                               remote-endpoint = <&imx327_out>;
> > >                       };
> > >               };
> > >       };
> > > };
> > > --------
> > >
> > > I have a slight preference for the latter as it groups all the CSI0 data
> > > in a single overlay target, but if the former is generally preferred,
> > > I'm fine with that too.
> >
> > The former is more compact, but also raises the following dtc warnings while
> > creating the .dtbo:
> > Warning (graph_endpoint): /fragment at 4/__overlay__: graph endpoint node name
> > should be 'endpoint'
> > Warning (graph_endpoint): /fragment at 4/__overlay__: graph connection to node '/
> > fragment at 1/__overlay__/ports/port at 1/endpoint' is not bidirectional
> >
> > for the following snippet:
> >
> > &mipi_csi_0_out {
> >         remote-endpoint = <&isp1_in>;
> > };
> >
> > I'm not sure if there is a chance to fix at all.
> 
> Once there is consensus on how this should be generically plumbed,
> please keep me in the loop, so I can add the corresponding imx8m Nano
> trees as well.  I've tested Laurent's work for a while on the Nano
> that I have.  I was going to push DT updates for Nano, then I saw this
> conversation, so I decided to hold off for now.

This was just an idea nothing serious. Maybe Krzysztof have a strong
opinion on that.

Regards,
  Marco



More information about the linux-arm-kernel mailing list