Re: [PATCH 0/2] Graph fixes for using multiple endpoints per port

From: Tony Lindgren
Date: Tue Dec 11 2018 - 19:20:02 EST


* Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> [181211 23:16]:
>
> Hi Tony
>
> > The issue I have with that it does not then follow the binding doc :)
> >
> > See this part in Documentation/devicetree/bindings/graph.txt:
> >
> > "If a single port is connected to more than one remote device, an
> > 'endpoint' child node must be provided for each link."
> >
> > Isn't the I2C TDM case the same as "single port connecected to
> > more than one remote device" rather than multiple ports?
> >
> > To me it seems we're currently only handling the multiple ports
> > case, and not multiple endpoints for a port. Other than fixing
> > that, things should work just as earlier with my two patches.
> > That is unless I accidentally broke something.
> >
> > So just trying to correct the binding usage. Or am I missing
> > something?
>
> I'm not 100% sure your "I2C TDM case", but you can check
> multi-endpoint sample on "Example: Multi DAI with DPCM" below.
> "pcm3168a" is using multi-endpoint.
> Does this help you ?
>
> https://patchwork.kernel.org/patch/10712877/

Hmm, so do you have multiple separate ports at the "&sound" node
hardware? If so then yeah multiple ports make sense.

But if you only a single physical (I2S?) port at the
"&sound" node hardware, then IMO you should only have one
port and multiple endpoints there according to the graph.txt
binding doc.

In my McBSP case there is only a single physical I2S port
that can be TDM split into timeslots.

Regards,

Tony