Commit 18a02062 authored by Laurent Pinchart's avatar Laurent Pinchart
Browse files

dt-bindings: display: bridge: Convert simple-bridge bindings to YAML



The simple-bridge driver supports multiple simple or dumb bridges,
covered by different compatible strings but otherwise identical DT
bindings. Some of those bridges have undocumented bindings, while others
are documented in text form in separate files. Group them all in a
single binding and convert it to YAML.

The psave-gpios property of the adi,adv7123 is dropped, as it isn't
supported by the driver and isn't specified in any DT file upstream.
Support for power saving is available through the enable-gpios property
that should cover all the needs of the ADV7123 (as the device only has a
/PSAVE pin and no enable pin).

Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: default avatarMaxime Ripard <mripard@kernel.org>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
parent 82e0e5fe
Loading
Loading
Loading
Loading
+0 −50
Original line number Diff line number Diff line
Analog Devices ADV7123 Video DAC
--------------------------------

The ADV7123 is a digital-to-analog converter that outputs VGA signals from a
parallel video input.

Required properties:

- compatible: Should be "adi,adv7123"

Optional properties:

- psave-gpios: Power save control GPIO

Required nodes:

The ADV7123 has two video ports. Their connections are modeled using the OF
graph bindings specified in Documentation/devicetree/bindings/graph.txt.

- Video port 0 for DPI input
- Video port 1 for VGA output


Example
-------

	adv7123: encoder@0 {
		compatible = "adi,adv7123";

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			port@0 {
				reg = <0>;

				adv7123_in: endpoint@0 {
					remote-endpoint = <&dpi_out>;
				};
			};

			port@1 {
				reg = <1>;

				adv7123_out: endpoint@0 {
					remote-endpoint = <&vga_connector_in>;
				};
			};
		};
	};
+0 −50
Original line number Diff line number Diff line
Dumb RGB to VGA DAC bridge
---------------------------

This binding is aimed for dumb RGB to VGA DAC based bridges that do not require
any configuration.

Required properties:

- compatible: Must be "dumb-vga-dac"

Required nodes:

This device has two video ports. Their connections are modelled using the OF
graph bindings specified in Documentation/devicetree/bindings/graph.txt.

- Video port 0 for RGB input
- Video port 1 for VGA output

Optional properties:
- vdd-supply: Power supply for DAC

Example
-------

bridge {
	compatible = "dumb-vga-dac";
	#address-cells = <1>;
	#size-cells = <0>;

	ports {
		#address-cells = <1>;
		#size-cells = <0>;

		port@0 {
			reg = <0>;

			vga_bridge_in: endpoint {
				remote-endpoint = <&tcon0_out_vga>;
			};
		};

		port@1 {
			reg = <1>;

			vga_bridge_out: endpoint {
				remote-endpoint = <&vga_con_in>;
			};
		};
	};
};
+99 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/bridge/simple-bridge.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Transparent non-programmable DRM bridges

maintainers:
  - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
  - Maxime Ripard <mripard@kernel.org>

description: |
  This binding supports transparent non-programmable bridges that don't require
  any configuration, with a single input and a single output.

properties:
  compatible:
    oneOf:
      - items:
        - enum:
          - ti,ths8134a
          - ti,ths8134b
        - const: ti,ths8134
      - enum:
        - adi,adv7123
        - dumb-vga-dac
        - ti,opa362
        - ti,ths8134
        - ti,ths8135

  ports:
    type: object
    description: |
      This device has two video ports. Their connections are modeled using the
      OF graph bindings specified in Documentation/devicetree/bindings/graph.txt.
    properties:
      '#address-cells':
        const: 1

      '#size-cells':
        const: 0

      port@0:
        type: object
        description: The bridge input

      port@1:
        type: object
        description: The bridge output

    required:
      - port@0
      - port@1

    additionalProperties: false

  enable-gpios:
    maxItems: 1
    description: GPIO controlling bridge enable

  vdd-supply:
    maxItems: 1
    description: Power supply for the bridge

required:
  - compatible
  - ports

additionalProperties: false

examples:
  - |
    bridge {
        compatible = "ti,ths8134a", "ti,ths8134";

        ports {
            #address-cells = <1>;
            #size-cells = <0>;

            port@0 {
                reg = <0>;

                vga_bridge_in: endpoint {
                    remote-endpoint = <&tcon0_out_vga>;
                };
            };

            port@1 {
                reg = <1>;

                vga_bridge_out: endpoint {
                    remote-endpoint = <&vga_con_in>;
                };
            };
        };
    };

...
+0 −51
Original line number Diff line number Diff line
THS8134 and THS8135 Video DAC
-----------------------------

This is the binding for Texas Instruments THS8134, THS8134A, THS8134B and
THS8135 Video DAC bridges.

Required properties:

- compatible: Must be one of
  "ti,ths8134"
  "ti,ths8134a," "ti,ths8134"
  "ti,ths8134b", "ti,ths8134"
  "ti,ths8135"

Required nodes:

This device has two video ports. Their connections are modelled using the OF
graph bindings specified in Documentation/devicetree/bindings/graph.txt.

- Video port 0 for RGB input
- Video port 1 for VGA output

Example
-------

vga-bridge {
	compatible = "ti,ths8135";
	#address-cells = <1>;
	#size-cells = <0>;

	ports {
		#address-cells = <1>;
		#size-cells = <0>;

		port@0 {
			reg = <0>;

			vga_bridge_in: endpoint {
				remote-endpoint = <&lcdc_out_vga>;
			};
		};

		port@1 {
			reg = <1>;

			vga_bridge_out: endpoint {
				remote-endpoint = <&vga_con_in>;
			};
		};
	};
};