[PATCH v8 2/4] dt-bindings: display: ti: Add schema for AM625 OLDI Transmitter
Michael Walle
mwalle at kernel.org
Tue May 27 06:06:42 UTC 2025
Hi Aradhya,
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/ti/ti,am625-oldi.yaml
> @@ -0,0 +1,80 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/ti/ti,am625-oldi.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Texas Instruments AM625 OLDI Transmitter
> +
> +maintainers:
> + - Tomi Valkeinen <tomi.valkeinen at ideasonboard.com>
> + - Aradhya Bhatia <aradhya.bhatia at linux.dev>
> +
> +description:
> + The AM625 TI Keystone OpenLDI transmitter (OLDI TX) supports serialized RGB
> + pixel data transmission between host and flat panel display over LVDS (Low
> + Voltage Differential Sampling) interface. The OLDI TX consists of 7-to-1 data
> + serializers, and 4-data and 1-clock LVDS outputs. It supports the LVDS output
> + formats "jeida-18", "jeida-24" and "vesa-18", and can accept 24-bit RGB or
> + padded and un-padded 18-bit RGB bus formats as input.
> +
> +properties:
> + reg:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> + description: serial clock input for the OLDI transmitters
> +
> + clock-names:
> + const: serial
> +
> + ti,companion-oldi:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description:
> + phandle to companion OLDI transmitter. This property is mandatory for the
> + primarty OLDI TX if the OLDI TXes are expected to work either in dual-lvds
primary
> + mode or in clone mode. This property should point to the secondary OLDI
> + TX.
You should mention that the second OLDI should also point back to
the primary OLDI using this property.
> + ti,secondary-oldi:
> + type: boolean
> + description:
> + Boolean property to mark the OLDI transmitter as the secondary one, when the
> + OLDI hardware is expected to run as a companion HW, in cases of dual-lvds
> + mode or clone mode. The primary OLDI hardware is responsible for all the
> + hardware configuration.
> +
> --- a/Documentation/devicetree/bindings/display/ti/ti,am65x-dss.yaml
> +++ b/Documentation/devicetree/bindings/display/ti/ti,am65x-dss.yaml
..
> @@ -190,3 +244,105 @@ examples:
> };
> };
> };
> +
> + - |
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> + #include <dt-bindings/interrupt-controller/irq.h>
> + #include <dt-bindings/soc/ti,sci_pm_domain.h>
> +
> + bus {
> + #address-cells = <2>;
> + #size-cells = <2>;
> + dss1: dss at 30200000 {
> + compatible = "ti,am625-dss";
> + reg = <0x00 0x30200000 0x00 0x1000>, /* common */
> + <0x00 0x30202000 0x00 0x1000>, /* vidl1 */
> + <0x00 0x30206000 0x00 0x1000>, /* vid */
> + <0x00 0x30207000 0x00 0x1000>, /* ovr1 */
> + <0x00 0x30208000 0x00 0x1000>, /* ovr2 */
> + <0x00 0x3020a000 0x00 0x1000>, /* vp1 */
> + <0x00 0x3020b000 0x00 0x1000>, /* vp2 */
> + <0x00 0x30201000 0x00 0x1000>; /* common1 */
> + reg-names = "common", "vidl1", "vid",
> + "ovr1", "ovr2", "vp1", "vp2", "common1";
> + power-domains = <&k3_pds 186 TI_SCI_PD_EXCLUSIVE>;
> + clocks = <&k3_clks 186 6>,
> + <&vp1_clock>,
> + <&k3_clks 186 2>;
> + clock-names = "fck", "vp1", "vp2";
> + interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
> + oldi-transmitters {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + oldi0: oldi at 0 {
> + reg = <0>;
> + clocks = <&k3_clks 186 0>;
> + clock-names = "serial";
> + ti,companion-oldi = <&oldi1>;
> + ti,oldi-io-ctrl = <&dss_oldi_io_ctrl>;
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + port at 0 {
> + reg = <0>;
> + oldi0_in: endpoint {
> + remote-endpoint = <&dpi0_out0>;
> + };
> + };
> + port at 1 {
> + reg = <1>;
> + oldi0_out: endpoint {
> + remote-endpoint = <&panel_in0>;
> + };
> + };
> + };
> + };
> + oldi1: oldi at 1 {
> + reg = <1>;
> + clocks = <&k3_clks 186 0>;
> + clock-names = "serial";
.. and update this example :)
-michael
> + ti,secondary-oldi;
> + ti,oldi-io-ctrl = <&dss_oldi_io_ctrl>;
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + port at 0 {
> + reg = <0>;
> + oldi1_in: endpoint {
> + remote-endpoint = <&dpi0_out1>;
> + };
> + };
> + port at 1 {
> + reg = <1>;
> + oldi1_out: endpoint {
> + remote-endpoint = <&panel_in1>;
> + };
> + };
> + };
> + };
> + };
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + port at 0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> + dpi0_out0: endpoint at 0 {
> + reg = <0>;
> + remote-endpoint = <&oldi0_in>;
> + };
> + dpi0_out1: endpoint at 1 {
> + reg = <1>;
> + remote-endpoint = <&oldi1_in>;
> + };
> + };
> + port at 1 {
> + reg = <1>;
> + dpi1_out: endpoint {
> + remote-endpoint = <&hdmi_bridge>;
> + };
> + };
> + };
> + };
> + };
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 297 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20250527/2208fe82/attachment-0001.sig>
More information about the dri-devel
mailing list