Hi Rob. On Thu, Jun 18, 2020 at 02:24:47PM -0600, Rob Herring wrote: > Convert the analog TV, DVI, HDMI, and VGA connector bindings to DT schema > format. > > Cc: Sam Ravnborg <sam@xxxxxxxxxxxx> > Cc: Laurent Pinchart <Laurent.pinchart@xxxxxxxxxxxxxxxx> > Cc: Maxime Ripard <mripard@xxxxxxxxxx> > Signed-off-by: Rob Herring <robh@xxxxxxxxxx> > --- > I put myself as maintainer, but would be happy if someone else was like > one of the Cc'ed people. I nominate Laurent for this.... See some comments in the following. Mostly related to required - I may have missed something. Sam > > .../display/connector/analog-tv-connector.txt | 31 -------- > .../connector/analog-tv-connector.yaml | 47 ++++++++++++ > .../display/connector/dvi-connector.txt | 36 --------- > .../display/connector/dvi-connector.yaml | 75 +++++++++++++++++++ > .../display/connector/hdmi-connector.txt | 31 -------- > .../display/connector/hdmi-connector.yaml | 63 ++++++++++++++++ > .../display/connector/vga-connector.txt | 36 --------- > .../display/connector/vga-connector.yaml | 42 +++++++++++ > 8 files changed, 227 insertions(+), 134 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/display/connector/analog-tv-connector.txt > create mode 100644 Documentation/devicetree/bindings/display/connector/analog-tv-connector.yaml > delete mode 100644 Documentation/devicetree/bindings/display/connector/dvi-connector.txt > create mode 100644 Documentation/devicetree/bindings/display/connector/dvi-connector.yaml > delete mode 100644 Documentation/devicetree/bindings/display/connector/hdmi-connector.txt > create mode 100644 Documentation/devicetree/bindings/display/connector/hdmi-connector.yaml > delete mode 100644 Documentation/devicetree/bindings/display/connector/vga-connector.txt > create mode 100644 Documentation/devicetree/bindings/display/connector/vga-connector.yaml > > diff --git a/Documentation/devicetree/bindings/display/connector/analog-tv-connector.txt b/Documentation/devicetree/bindings/display/connector/analog-tv-connector.txt > deleted file mode 100644 > index 883bcb2604c7..000000000000 > --- a/Documentation/devicetree/bindings/display/connector/analog-tv-connector.txt > +++ /dev/null > @@ -1,31 +0,0 @@ > -Analog TV Connector > -=================== > - > -Required properties: > -- compatible: "composite-video-connector" or "svideo-connector" > - > -Optional properties: > -- label: a symbolic name for the connector > -- sdtv-standards: limit the supported TV standards on a connector to the given > - ones. If not specified all TV standards are allowed. > - Possible TV standards are defined in > - include/dt-bindings/display/sdtv-standards.h. > - > -Required nodes: > -- Video port for TV input > - > -Example > -------- > -#include <dt-bindings/display/sdtv-standards.h> > - > -tv: connector { > - compatible = "composite-video-connector"; > - label = "tv"; > - sdtv-standards = <(SDTV_STD_PAL | SDTV_STD_NTSC)>; > - > - port { > - tv_connector_in: endpoint { > - remote-endpoint = <&venc_out>; > - }; > - }; > -}; > diff --git a/Documentation/devicetree/bindings/display/connector/analog-tv-connector.yaml b/Documentation/devicetree/bindings/display/connector/analog-tv-connector.yaml > new file mode 100644 > index 000000000000..d9ac42cb7e04 > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/connector/analog-tv-connector.yaml > @@ -0,0 +1,47 @@ > +# SPDX-License-Identifier: GPL-2.0-only > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/connector/analog-tv-connector.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Analog TV Connector > + > +maintainers: > + - Rob Herring <robh@xxxxxxxxxx> > + > +properties: > + compatible: > + enum: > + - composite-video-connector > + - svideo-connector > + > + label: true > + > + sdtv-standards: > + description: Limit the supported TV standards on a connector to the given > + ones. If not specified all TV standards are allowed. Possible TV > + standards are defined in include/dt-bindings/display/sdtv-standards.h. > + $ref: /schemas/types.yaml#/definitions/uint32 > + > + port: > + description: Connection to controller providing analog TV signals required: - compatible - port ?? > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/display/sdtv-standards.h> > + > + connector { > + compatible = "composite-video-connector"; > + label = "tv"; > + sdtv-standards = <(SDTV_STD_PAL | SDTV_STD_NTSC)>; > + > + port { > + tv_connector_in: endpoint { > + remote-endpoint = <&venc_out>; > + }; > + }; > + }; My personal preference is 4 space indent. Easier to read for me. But we discussed this before - would be good with a recommendation so we know what to expect. Oh, and example-schema uses 6 spaces :-( > + > +... > diff --git a/Documentation/devicetree/bindings/display/connector/dvi-connector.txt b/Documentation/devicetree/bindings/display/connector/dvi-connector.txt > deleted file mode 100644 > index 207e42e9eba0..000000000000 > --- a/Documentation/devicetree/bindings/display/connector/dvi-connector.txt > +++ /dev/null > @@ -1,36 +0,0 @@ > -DVI Connector > -============== > - > -Required properties: > -- compatible: "dvi-connector" > - > -Optional properties: > -- label: a symbolic name for the connector > -- ddc-i2c-bus: phandle to the i2c bus that is connected to DVI DDC > -- analog: the connector has DVI analog pins > -- digital: the connector has DVI digital pins > -- dual-link: the connector has pins for DVI dual-link > -- hpd-gpios: HPD GPIO number > - > -Required nodes: > -- Video port for DVI input > - > -Note: One (or both) of 'analog' or 'digital' must be set. > - > -Example > -------- > - > -dvi0: connector@0 { > - compatible = "dvi-connector"; > - label = "dvi"; > - > - digital; > - > - ddc-i2c-bus = <&i2c3>; > - > - port { > - dvi_connector_in: endpoint { > - remote-endpoint = <&tfp410_out>; > - }; > - }; > -}; > diff --git a/Documentation/devicetree/bindings/display/connector/dvi-connector.yaml b/Documentation/devicetree/bindings/display/connector/dvi-connector.yaml > new file mode 100644 > index 000000000000..aaf61bce64ca > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/connector/dvi-connector.yaml > @@ -0,0 +1,75 @@ > +# SPDX-License-Identifier: GPL-2.0-only > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/connector/dvi-connector.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: DVI Connector > + > +maintainers: > + - Rob Herring <robh@xxxxxxxxxx> > + > +properties: > + compatible: > + const: dvi-connector > + > + type: > + description: The HDMI connector type > + enum: > + - a # Standard full size > + - b # Never deployed? > + - c # Mini > + - d # Micro > + - e # automotive type looks like something that was copied from another binding. It is not part of the .txt binding. > + > + label: true > + > + hpd-gpios: > + description: A GPIO line connected to HPD > + maxItems: 1 > + > + ddc-i2c-bus: > + description: phandle link to the I2C controller used for DDC EDID probing > + $ref: /schemas/types.yaml#/definitions/phandle > + > + analog: > + type: boolean > + description: the connector has DVI analog pins > + > + digital: > + type: boolean > + description: the connector has DVI digital pins > + > + dual-link: > + type: boolean > + description: the connector has pins for DVI dual-link > + > + port: > + description: Connection to controller providing DVI signals > + > +anyOf: > + - required: > + - analog > + - required: > + - digital > + required: - compatible ?? > +additionalProperties: false > + > +examples: > + - | > + connector { > + compatible = "dvi-connector"; > + label = "dvi"; > + > + digital; > + > + ddc-i2c-bus = <&i2c3>; > + > + port { > + dvi_connector_in: endpoint { > + remote-endpoint = <&tfp410_out>; > + }; > + }; > + }; > + > +... > diff --git a/Documentation/devicetree/bindings/display/connector/hdmi-connector.txt b/Documentation/devicetree/bindings/display/connector/hdmi-connector.txt > deleted file mode 100644 > index aeb07c4bd703..000000000000 > --- a/Documentation/devicetree/bindings/display/connector/hdmi-connector.txt > +++ /dev/null > @@ -1,31 +0,0 @@ > -HDMI Connector > -============== > - > -Required properties: > -- compatible: "hdmi-connector" > -- type: the HDMI connector type: "a", "b", "c", "d" or "e" > - > -Optional properties: > -- label: a symbolic name for the connector > -- hpd-gpios: HPD GPIO number > -- ddc-i2c-bus: phandle link to the I2C controller used for DDC EDID probing > -- ddc-en-gpios: signal to enable DDC bus > - > -Required nodes: > -- Video port for HDMI input > - > -Example > -------- > - > -hdmi0: connector@1 { > - compatible = "hdmi-connector"; > - label = "hdmi"; > - > - type = "a"; > - > - port { > - hdmi_connector_in: endpoint { > - remote-endpoint = <&tpd12s015_out>; > - }; > - }; > -}; > diff --git a/Documentation/devicetree/bindings/display/connector/hdmi-connector.yaml b/Documentation/devicetree/bindings/display/connector/hdmi-connector.yaml > new file mode 100644 > index 000000000000..57f0193a12e7 > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/connector/hdmi-connector.yaml > @@ -0,0 +1,63 @@ > +# SPDX-License-Identifier: GPL-2.0-only > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/connector/hdmi-connector.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: HDMI Connector > + > +maintainers: > + - Rob Herring <robh@xxxxxxxxxx> > + > +properties: > + compatible: > + const: hdmi-connector > + > + type: > + description: The HDMI connector type > + enum: > + - a # Standard full size > + - b # Never deployed? > + - c # Mini > + - d # Micro > + - e # automotive > + > + label: true > + > + hpd-gpios: > + description: A GPIO line connected to HPD > + maxItems: 1 > + > + ddc-i2c-bus: > + description: phandle link to the I2C controller used for DDC EDID probing > + $ref: /schemas/types.yaml#/definitions/phandle > + > + ddc-en-gpios: > + description: GPIO signal to enable DDC bus > + maxItems: 1 > + > + port: > + description: Connection to controller providing HDMI signals > + > +required: > + - compatible > + - type port node is also required per .txt binding > + > +additionalProperties: false > + > +examples: > + - | > + connector { > + compatible = "hdmi-connector"; > + label = "hdmi"; > + > + type = "a"; > + > + port { > + hdmi_connector_in: endpoint { > + remote-endpoint = <&tpd12s015_out>; > + }; > + }; > + }; > + > +... > diff --git a/Documentation/devicetree/bindings/display/connector/vga-connector.txt b/Documentation/devicetree/bindings/display/connector/vga-connector.txt > deleted file mode 100644 > index c727f298e7ad..000000000000 > --- a/Documentation/devicetree/bindings/display/connector/vga-connector.txt > +++ /dev/null > @@ -1,36 +0,0 @@ > -VGA Connector > -============= > - > -Required properties: > - > -- compatible: "vga-connector" > - > -Optional properties: > - > -- label: a symbolic name for the connector corresponding to a hardware label > -- ddc-i2c-bus: phandle to the I2C bus that is connected to VGA DDC > - > -Required nodes: > - > -The VGA connector internal connections are modeled using the OF graph bindings > -specified in Documentation/devicetree/bindings/graph.txt. > - > -The VGA connector has a single port that must be connected to a video source > -port. > - > - > -Example > -------- > - > -vga0: connector@0 { > - compatible = "vga-connector"; > - label = "vga"; > - > - ddc-i2c-bus = <&i2c3>; > - > - port { > - vga_connector_in: endpoint { > - remote-endpoint = <&adv7123_out>; > - }; > - }; > -}; > diff --git a/Documentation/devicetree/bindings/display/connector/vga-connector.yaml b/Documentation/devicetree/bindings/display/connector/vga-connector.yaml > new file mode 100644 > index 000000000000..cc1245f471bc > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/connector/vga-connector.yaml > @@ -0,0 +1,42 @@ > +# SPDX-License-Identifier: GPL-2.0-only > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/connector/vga-connector.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: VGA Connector > + > +maintainers: > + - Rob Herring <robh@xxxxxxxxxx> > + > +properties: > + compatible: > + const: vga-connector > + > + label: true > + > + ddc-i2c-bus: > + description: phandle link to the I2C controller used for DDC EDID probing > + $ref: /schemas/types.yaml#/definitions/phandle > + > + port: > + description: Connection to controller providing VGA signals > + required: - compatible - port > +additionalProperties: false > + > +examples: > + - | > + connector { > + compatible = "vga-connector"; > + label = "vga"; > + > + ddc-i2c-bus = <&i2c3>; > + > + port { > + vga_connector_in: endpoint { > + remote-endpoint = <&adv7123_out>; > + }; > + }; > + }; > + > +... > -- > 2.25.1