Re: [PATCH v2 05/66] dt-bindings: sun6i-a31-mipi-dphy: Add optional direction property

From: Laurent Pinchart
Date: Fri Feb 11 2022 - 15:48:02 EST


On Fri, Feb 11, 2022 at 04:12:29PM +0100, Paul Kocialkowski wrote:
> Hi Rob,
>
> On Fri 11 Feb 22, 09:03, Rob Herring wrote:
> > On Sat, Feb 05, 2022 at 07:53:28PM +0100, Paul Kocialkowski wrote:
> > > The Allwinner A31 MIPI D-PHY block supports both tx and rx directions,
> > > although each instance of the block is meant to be used in one
> > > direction only. There will typically be one instance for MIPI DSI and
> > > one for MIPI CSI-2 (it seems unlikely to ever see a shared instance).
> > >
> > > Describe the direction with a new allwinner,direction property.
> > > For backwards compatibility, the property is optional and tx mode
> > > should be assumed by default.
> > >
> > > Signed-off-by: Paul Kocialkowski <paul.kocialkowski@xxxxxxxxxxx>
> > > ---
> > > .../bindings/phy/allwinner,sun6i-a31-mipi-dphy.yaml | 12 ++++++++++++
> > > 1 file changed, 12 insertions(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/phy/allwinner,sun6i-a31-mipi-dphy.yaml b/Documentation/devicetree/bindings/phy/allwinner,sun6i-a31-mipi-dphy.yaml
> > > index d0b541a461f3..22636c9fdab8 100644
> > > --- a/Documentation/devicetree/bindings/phy/allwinner,sun6i-a31-mipi-dphy.yaml
> > > +++ b/Documentation/devicetree/bindings/phy/allwinner,sun6i-a31-mipi-dphy.yaml
> > > @@ -37,6 +37,18 @@ properties:
> > > resets:
> > > maxItems: 1
> > >
> > > + allwinner,direction:
> > > + $ref: '/schemas/types.yaml#/definitions/string'
> > > + description: |
> > > + Direction of the D-PHY:
> > > + - "rx" for receiving (e.g. when used with MIPI CSI-2);
> > > + - "tx" for transmitting (e.g. when used with MIPI DSI).
> > > +
> > > + enum:
> > > + - tx
> > > + - rx
> > > + default: tx
> >
> > Can you the phy mode to imply the direction?
>
> So there was a first attempt at this which introduced a PHY submode but
> it was concluded after discussions that the direction is not really a
> mode of operation choice, in the sense that the D-PHY cannot be reconfigured
> to behave in Rx or Tx mode: it is instead statically assigned to one role
> or the other. This is why it feels more appropriate to describe it in the
> device-tree.

Another option could be different compatible strings, as the RX and TX
PHYs actually have very little in common. I don't mind much either way.

> See this thread from the previous iteration:
> https://patchwork.linuxtv.org/project/linux-media/patch/20210115200141.1397785-3-paul.kocialkowski@xxxxxxxxxxx/#128800

--
Regards,

Laurent Pinchart