Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Maxime Ripard <mripard@kernel.org>
Reviewed-by: Rob Herring <robh@kernel.org>

+99 -151
-50
Documentation/devicetree/bindings/display/bridge/adi,adv7123.txt
··· 1 - Analog Devices ADV7123 Video DAC 2 - -------------------------------- 3 - 4 - The ADV7123 is a digital-to-analog converter that outputs VGA signals from a 5 - parallel video input. 6 - 7 - Required properties: 8 - 9 - - compatible: Should be "adi,adv7123" 10 - 11 - Optional properties: 12 - 13 - - psave-gpios: Power save control GPIO 14 - 15 - Required nodes: 16 - 17 - The ADV7123 has two video ports. Their connections are modeled using the OF 18 - graph bindings specified in Documentation/devicetree/bindings/graph.txt. 19 - 20 - - Video port 0 for DPI input 21 - - Video port 1 for VGA output 22 - 23 - 24 - Example 25 - ------- 26 - 27 - adv7123: encoder@0 { 28 - compatible = "adi,adv7123"; 29 - 30 - ports { 31 - #address-cells = <1>; 32 - #size-cells = <0>; 33 - 34 - port@0 { 35 - reg = <0>; 36 - 37 - adv7123_in: endpoint@0 { 38 - remote-endpoint = <&dpi_out>; 39 - }; 40 - }; 41 - 42 - port@1 { 43 - reg = <1>; 44 - 45 - adv7123_out: endpoint@0 { 46 - remote-endpoint = <&vga_connector_in>; 47 - }; 48 - }; 49 - }; 50 - };
-50
Documentation/devicetree/bindings/display/bridge/dumb-vga-dac.txt
··· 1 - Dumb RGB to VGA DAC bridge 2 - --------------------------- 3 - 4 - This binding is aimed for dumb RGB to VGA DAC based bridges that do not require 5 - any configuration. 6 - 7 - Required properties: 8 - 9 - - compatible: Must be "dumb-vga-dac" 10 - 11 - Required nodes: 12 - 13 - This device has two video ports. Their connections are modelled using the OF 14 - graph bindings specified in Documentation/devicetree/bindings/graph.txt. 15 - 16 - - Video port 0 for RGB input 17 - - Video port 1 for VGA output 18 - 19 - Optional properties: 20 - - vdd-supply: Power supply for DAC 21 - 22 - Example 23 - ------- 24 - 25 - bridge { 26 - compatible = "dumb-vga-dac"; 27 - #address-cells = <1>; 28 - #size-cells = <0>; 29 - 30 - ports { 31 - #address-cells = <1>; 32 - #size-cells = <0>; 33 - 34 - port@0 { 35 - reg = <0>; 36 - 37 - vga_bridge_in: endpoint { 38 - remote-endpoint = <&tcon0_out_vga>; 39 - }; 40 - }; 41 - 42 - port@1 { 43 - reg = <1>; 44 - 45 - vga_bridge_out: endpoint { 46 - remote-endpoint = <&vga_con_in>; 47 - }; 48 - }; 49 - }; 50 - };
+99
Documentation/devicetree/bindings/display/bridge/simple-bridge.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/display/bridge/simple-bridge.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Transparent non-programmable DRM bridges 8 + 9 + maintainers: 10 + - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> 11 + - Maxime Ripard <mripard@kernel.org> 12 + 13 + description: | 14 + This binding supports transparent non-programmable bridges that don't require 15 + any configuration, with a single input and a single output. 16 + 17 + properties: 18 + compatible: 19 + oneOf: 20 + - items: 21 + - enum: 22 + - ti,ths8134a 23 + - ti,ths8134b 24 + - const: ti,ths8134 25 + - enum: 26 + - adi,adv7123 27 + - dumb-vga-dac 28 + - ti,opa362 29 + - ti,ths8134 30 + - ti,ths8135 31 + 32 + ports: 33 + type: object 34 + description: | 35 + This device has two video ports. Their connections are modeled using the 36 + OF graph bindings specified in Documentation/devicetree/bindings/graph.txt. 37 + properties: 38 + '#address-cells': 39 + const: 1 40 + 41 + '#size-cells': 42 + const: 0 43 + 44 + port@0: 45 + type: object 46 + description: The bridge input 47 + 48 + port@1: 49 + type: object 50 + description: The bridge output 51 + 52 + required: 53 + - port@0 54 + - port@1 55 + 56 + additionalProperties: false 57 + 58 + enable-gpios: 59 + maxItems: 1 60 + description: GPIO controlling bridge enable 61 + 62 + vdd-supply: 63 + maxItems: 1 64 + description: Power supply for the bridge 65 + 66 + required: 67 + - compatible 68 + - ports 69 + 70 + additionalProperties: false 71 + 72 + examples: 73 + - | 74 + bridge { 75 + compatible = "ti,ths8134a", "ti,ths8134"; 76 + 77 + ports { 78 + #address-cells = <1>; 79 + #size-cells = <0>; 80 + 81 + port@0 { 82 + reg = <0>; 83 + 84 + vga_bridge_in: endpoint { 85 + remote-endpoint = <&tcon0_out_vga>; 86 + }; 87 + }; 88 + 89 + port@1 { 90 + reg = <1>; 91 + 92 + vga_bridge_out: endpoint { 93 + remote-endpoint = <&vga_con_in>; 94 + }; 95 + }; 96 + }; 97 + }; 98 + 99 + ...
-51
Documentation/devicetree/bindings/display/bridge/ti,ths813x.txt
··· 1 - THS8134 and THS8135 Video DAC 2 - ----------------------------- 3 - 4 - This is the binding for Texas Instruments THS8134, THS8134A, THS8134B and 5 - THS8135 Video DAC bridges. 6 - 7 - Required properties: 8 - 9 - - compatible: Must be one of 10 - "ti,ths8134" 11 - "ti,ths8134a," "ti,ths8134" 12 - "ti,ths8134b", "ti,ths8134" 13 - "ti,ths8135" 14 - 15 - Required nodes: 16 - 17 - This device has two video ports. Their connections are modelled using the OF 18 - graph bindings specified in Documentation/devicetree/bindings/graph.txt. 19 - 20 - - Video port 0 for RGB input 21 - - Video port 1 for VGA output 22 - 23 - Example 24 - ------- 25 - 26 - vga-bridge { 27 - compatible = "ti,ths8135"; 28 - #address-cells = <1>; 29 - #size-cells = <0>; 30 - 31 - ports { 32 - #address-cells = <1>; 33 - #size-cells = <0>; 34 - 35 - port@0 { 36 - reg = <0>; 37 - 38 - vga_bridge_in: endpoint { 39 - remote-endpoint = <&lcdc_out_vga>; 40 - }; 41 - }; 42 - 43 - port@1 { 44 - reg = <1>; 45 - 46 - vga_bridge_out: endpoint { 47 - remote-endpoint = <&vga_con_in>; 48 - }; 49 - }; 50 - }; 51 - };