Re: [PATCH v5 2/3] dt-bindings: display: ti: Add schema for AM625 OLDI Transmitter
From: Rob Herring (Arm)
Date: Wed Feb 19 2025 - 09:24:28 EST
On Sun, 09 Feb 2025 21:39:24 +0530, Aradhya Bhatia wrote:
> From: Aradhya Bhatia <a-bhatia1@xxxxxx>
>
> The OLDI transmitters (TXes) do not have registers of their own, and are
> dependent on the source video-ports (VPs) from the DSS to provide
> configuration data. This hardware doesn't directly sit on the internal
> bus of the SoC, but does so via the DSS. Hence, the OLDI TXes are
> supposed to be child nodes under the DSS, and not independent devices.
>
> Two of the OLDI TXes can function in tandem to output dual-link OLDI
> output, or cloned single-link outputs. In these cases, one OLDI will be
> the primary OLDI, and the other one, a companion. The following diagram
> represents such a configuration.
>
> +-----+-----+ +-------+
> | | | | |
> | | VP1 +----+--->+ OLDI0 | (Primary - may need companion)
> | | | | | |
> | DSS +-----+ | +-------+
> | | | |
> | | VP2 | | +-------+
> | | | | | |
> +-----+-----+ +--->+ OLDI1 | (Companion OLDI)
> | |
> +-------+
>
> The DSS in AM625 SoC has a configuration like the one above. The AM625
> DSS VP1 (port@0) can connect and control 2 OLDI TXes, to use them in
> dual-link or cloned single-link OLDI modes. It is only the VP1 that can
> connect to either OLDI TXes for the AM625 DSS, and not the VP2.
>
> Alternatively, on some future TI SoCs, along with the above
> configuration, the OLDI TX can _also_ connect to separate video sources,
> making them work entirely independent of each other. In this case,
> neither of the OLDIs are "companion" or "secondary" OLDIs, and nor do
> they require one. They both are independent and primary OLDIs. The
> following diagram represents such a configuration.
>
> +-----+-----+ +-------+
> | | | | |
> | | VP1 +--+----------->+ OLDI0 | (Primary - may need companion)
> | | | | | |
> | +-----+ | +-------+
> | | | |
> | | VP2 | |
> | | | |
> | DSS +-----+ | +---+ +-------+
> | | | +-->+ M | | |
> | | VP3 +----->+ U +--->+ OLDI1 | (Companion or Primary)
> | | | | X | | |
> | +-----+ +---+ +-------+
> | | |
> | | VP4 |
> | | |
> +-----+-----+
>
> Note that depending on the mux configuration, the OLDIs can either be
> working together in tandem - sourced by VP1, OR, they could be working
> independently sourced by VP1 and VP3 respectively.
> The idea is to support all the configurations with this OLDI TX schema.
>
> The OLDI functionality is further supported by a system-control module,
> which contains a few registers to control OLDI IO power and other
> electrical characteristics of the IO lanes.
>
> Add devicetree binding schema for the OLDI TXes to support various
> configurations, and extend their support to the AM625 DSS.
>
> Signed-off-by: Aradhya Bhatia <a-bhatia1@xxxxxx>
> Signed-off-by: Aradhya Bhatia <aradhya.bhatia@xxxxxxxxx>
> ---
> .../bindings/display/ti/ti,am625-oldi.yaml | 88 ++++++++++
> .../bindings/display/ti/ti,am65x-dss.yaml | 154 ++++++++++++++++++
> MAINTAINERS | 1 +
> 3 files changed, 243 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/ti/ti,am625-oldi.yaml
>
Reviewed-by: Rob Herring (Arm) <robh@xxxxxxxxxx>