[PATCH v5 2/8] dt-bindings: phy: rockchip,rk3588-mipi-dcphy: Add a cell to select TX or RX

Krzysztof Kozlowski krzk at kernel.org
Sat Oct 17 10:22:52 PDT 2026


On Fri, Oct 16, 2026 at 09:01:15AM -0500, Rob Herring wrote:
> On Fri, Oct 16, 2026 at 04:56:36PM +0800, Jason Yang wrote:
> > The Samsung MIPI D-/C-PHY block on RK3588 and RK3576 has a transmitter
> > for DSI and a receiver for CSI-2, and two consumers can use them at the
> > same time. The single cell of this binding selects the mode and refers
> > to the transmitter, so the receiver cannot be described.
> > 
> > Allow a second cell that selects the transmitter or the receiver. With
> > D-PHY:
> > 
> > 	/* the MIPI DSI host, driving the transmitter */
> > 	phys = <&mipidcphy0 PHY_TYPE_DPHY PHY_DIRECTION_TX>;
> > 
> > 	/* the MIPI CSI-2 host, driving the receiver */
> > 	phys = <&mipidcphy0 PHY_TYPE_DPHY PHY_DIRECTION_RX>;
> > 
> > and with C-PHY:
> > 
> > 	phys = <&mipidcphy0 PHY_TYPE_CPHY PHY_DIRECTION_TX>;
> > 	phys = <&mipidcphy0 PHY_TYPE_CPHY PHY_DIRECTION_RX>;
> > 
> > The transmitter and the receiver cannot operate in different modes [1],
> > so the first cell must match in both consumers.
> > 
> > Two cells describe the receiver as well. A single cell keeps referring
> > to the transmitter, so existing device trees are unaffected.
> > 
> > [1] RK3588 TRM: section 22.1 (overview): "The TX and RX only support
> >     operate in the same PHY mode."
> 
> The problem here is this is an ABI break. An existing OS will not know 
> what to do with 2 cells. Perhaps adding flags to the upper bits of the 
> existing cell would work.

Existing OS should ignore surplus cell if the driver is coded properly.
Same as adding new properties or new front-compatible.  The question is
how the existing driver behaves?

Best regards,
Krzysztof




More information about the Linux-rockchip mailing list