2019-07-25 15:19:44

by Torsten Duwe

[permalink] [raw]
Subject: [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding

The anx6345 is an ultra-low power DisplayPort/eDP transmitter designed
for portable devices.

Add a binding document for it.

Signed-off-by: Icenowy Zheng <[email protected]>
Signed-off-by: Vasily Khoruzhick <[email protected]>
Reviewed-by: Rob Herring <[email protected]>
Signed-off-by: Torsten Duwe <[email protected]>
Reviewed-by: Laurent Pinchart <[email protected]>
---
.../devicetree/bindings/display/bridge/anx6345.yaml | 90 ++++++++++
1 file changed, 90 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/bridge/anx6345.yaml

diff --git a/Documentation/devicetree/bindings/display/bridge/anx6345.yaml b/Documentation/devicetree/bindings/display/bridge/anx6345.yaml
new file mode 100644
index 000000000000..0af092d101c5
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/bridge/anx6345.yaml
@@ -0,0 +1,90 @@
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/bridge/anx6345.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Analogix ANX6345 eDP Transmitter Device Tree Bindings
+
+maintainers:
+ - Torsten Duwe <[email protected]>
+
+description: |
+ The ANX6345 is an ultra-low power Full-HD eDP transmitter designed for
+ portable devices.
+
+properties:
+ compatible:
+ const: analogix,anx6345
+
+ reg:
+ maxItems: 1
+ description: I2C address of the device
+
+ reset-gpios:
+ maxItems: 1
+ description: active low GPIO to use for reset
+
+ dvdd12-supply:
+ maxItems: 1
+ description: Regulator for 1.2V digital core power.
+ $ref: /schemas/types.yaml#/definitions/phandle
+
+ dvdd25-supply:
+ maxItems: 1
+ description: Regulator for 2.5V digital core power.
+ $ref: /schemas/types.yaml#/definitions/phandle
+
+ ports:
+ type: object
+ minItems: 1
+ maxItems: 2
+ description: |
+ Video port 0 for LVTTL input,
+ Video port 1 for eDP output (panel or connector)
+ using the DT bindings defined in
+ Documentation/devicetree/bindings/media/video-interfaces.txt
+
+required:
+ - compatible
+ - reg
+ - reset-gpios
+ - dvdd12-supply
+ - dvdd25-supply
+ - ports
+
+examples:
+ - |
+ anx6345: anx6345@38 {
+ compatible = "analogix,anx6345";
+ reg = <0x38>;
+ reset-gpios = <&pio 3 24 GPIO_ACTIVE_LOW>; /* PD24 */
+ dvdd25-supply = <&reg_dldo2>;
+ dvdd12-supply = <&reg_fldo1>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ anx6345_in: port@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+ anx6345_in_tcon0: endpoint@0 {
+ reg = <0>;
+ remote-endpoint = <&tcon0_out_anx6345>;
+ };
+ };
+
+ anx6345_out: port@1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <1>;
+
+ anx6345_out_panel: endpoint@0 {
+ reg = <0>;
+ remote-endpoint = <&panel_in_edp>;
+ };
+ };
+ };
+ };


2019-07-26 19:31:11

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding

Hi,

On Thu, Jul 25, 2019 at 05:18:29PM +0200, Torsten Duwe wrote:
> The anx6345 is an ultra-low power DisplayPort/eDP transmitter designed
> for portable devices.
>
> Add a binding document for it.
>
> Signed-off-by: Icenowy Zheng <[email protected]>
> Signed-off-by: Vasily Khoruzhick <[email protected]>
> Reviewed-by: Rob Herring <[email protected]>
> Signed-off-by: Torsten Duwe <[email protected]>
> Reviewed-by: Laurent Pinchart <[email protected]>
> ---
> .../devicetree/bindings/display/bridge/anx6345.yaml | 90 ++++++++++
> 1 file changed, 90 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/bridge/anx6345.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/bridge/anx6345.yaml b/Documentation/devicetree/bindings/display/bridge/anx6345.yaml
> new file mode 100644
> index 000000000000..0af092d101c5
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/bridge/anx6345.yaml
> @@ -0,0 +1,90 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/bridge/anx6345.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Analogix ANX6345 eDP Transmitter Device Tree Bindings
> +
> +maintainers:
> + - Torsten Duwe <[email protected]>
> +
> +description: |
> + The ANX6345 is an ultra-low power Full-HD eDP transmitter designed for
> + portable devices.
> +
> +properties:
> + compatible:
> + const: analogix,anx6345
> +
> + reg:
> + maxItems: 1
> + description: I2C address of the device
> +
> + reset-gpios:
> + maxItems: 1
> + description: active low GPIO to use for reset
> +
> + dvdd12-supply:
> + maxItems: 1
> + description: Regulator for 1.2V digital core power.
> + $ref: /schemas/types.yaml#/definitions/phandle
> +
> + dvdd25-supply:
> + maxItems: 1
> + description: Regulator for 2.5V digital core power.
> + $ref: /schemas/types.yaml#/definitions/phandle

There's no need to specify the type here, all the properties ending in
-supply are already checked for that type

> + ports:
> + type: object
> + minItems: 1
> + maxItems: 2
> + description: |
> + Video port 0 for LVTTL input,
> + Video port 1 for eDP output (panel or connector)
> + using the DT bindings defined in
> + Documentation/devicetree/bindings/media/video-interfaces.txt

You should probably describe the port@0 and port@1 nodes here as
well. It would allow you to express that the port 0 is mandatory and
the port 1 optional, which got dropped in the conversion.

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

2019-07-29 14:28:14

by Torsten Duwe

[permalink] [raw]
Subject: Re: [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding

On Fri, Jul 26, 2019 at 06:36:01PM +0200, Maxime Ripard wrote:
> > +
> > + dvdd12-supply:
> > + maxItems: 1
> > + description: Regulator for 1.2V digital core power.
> > + $ref: /schemas/types.yaml#/definitions/phandle
> > +
> > + dvdd25-supply:
> > + maxItems: 1
> > + description: Regulator for 2.5V digital core power.
> > + $ref: /schemas/types.yaml#/definitions/phandle
>
> There's no need to specify the type here, all the properties ending in
> -supply are already checked for that type

Ok, thanks for the hint.

> > + ports:
> > + type: object
> > + minItems: 1
> > + maxItems: 2
> > + description: |
> > + Video port 0 for LVTTL input,
> > + Video port 1 for eDP output (panel or connector)
> > + using the DT bindings defined in
> > + Documentation/devicetree/bindings/media/video-interfaces.txt
>
> You should probably describe the port@0 and port@1 nodes here as
> well. It would allow you to express that the port 0 is mandatory and
> the port 1 optional, which got dropped in the conversion.

I would have liked to, but have not discovered yet a comprehensive source
of information about recommended syntax and semantics of the YAML schemes.

Is there some central reference for these types of issues? I mean not the
"here is a git repo with the meta-schemes" but sort of a cookbook?

Torsten


2019-07-30 03:40:16

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding

On Mon, Jul 29, 2019 at 8:23 AM Torsten Duwe <[email protected]> wrote:
>
> On Fri, Jul 26, 2019 at 06:36:01PM +0200, Maxime Ripard wrote:
> > > +
> > > + dvdd12-supply:
> > > + maxItems: 1
> > > + description: Regulator for 1.2V digital core power.
> > > + $ref: /schemas/types.yaml#/definitions/phandle
> > > +
> > > + dvdd25-supply:
> > > + maxItems: 1
> > > + description: Regulator for 2.5V digital core power.
> > > + $ref: /schemas/types.yaml#/definitions/phandle
> >
> > There's no need to specify the type here, all the properties ending in
> > -supply are already checked for that type
>
> Ok, thanks for the hint.
>
> > > + ports:
> > > + type: object
> > > + minItems: 1
> > > + maxItems: 2
> > > + description: |
> > > + Video port 0 for LVTTL input,
> > > + Video port 1 for eDP output (panel or connector)
> > > + using the DT bindings defined in
> > > + Documentation/devicetree/bindings/media/video-interfaces.txt
> >
> > You should probably describe the port@0 and port@1 nodes here as
> > well. It would allow you to express that the port 0 is mandatory and
> > the port 1 optional, which got dropped in the conversion.
>
> I would have liked to, but have not discovered yet a comprehensive source
> of information about recommended syntax and semantics of the YAML schemes.

The language is json-schema.

> Is there some central reference for these types of issues? I mean not the
> "here is a git repo with the meta-schemes" but sort of a cookbook?

Documentation/devicetree/writing-schema.md (soon .rst) and
Documentation/devicetree/bindings/example-schema.yaml attempt to do
this. Any feedback on them would be helpful.

For this case specifically, we do need to define a common graph
schema, but haven't yet. You can assume we do and only really need to
capture what Maxime said above.

Rob