From: Sam Ravnborg <sam@ravnborg.org>
To: Xin Ji <xji@analogixsemi.com>
Cc: devel@driverdev.osuosl.org, Nicolas Boichat <drinkcat@google.com>,
Jernej Skrabec <jernej.skrabec@siol.net>,
Nicolas Boichat <drinkcat@chromium.org>,
Jonas Karlman <jonas@kwiboo.se>, David Airlie <airlied@linux.ie>,
Neil Armstrong <narmstrong@baylibre.com>,
linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
Andrzej Hajda <a.hajda@samsung.com>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Pi-Hsun Shih <pihsun@chromium.org>,
Dan Carpenter <dan.carpenter@oracle.com>,
Sheng Pan <span@analogixsemi.com>
Subject: Re: [PATCH v8 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding
Date: Mon, 27 Apr 2020 20:49:09 +0200 [thread overview]
Message-ID: <20200427184909.GA15880@ravnborg.org> (raw)
In-Reply-To: <67ccead807b7d0a50df479cab2c9d325041224bc.1587880280.git.xji@analogixsemi.com>
Hi Xin Ji
On Mon, Apr 27, 2020 at 02:17:46PM +0800, Xin Ji wrote:
> The ANX7625 is an ultra-low power 4K Mobile HD Transmitter designed
> for portable device. It converts MIPI to DisplayPort 1.3 4K.
Thanks for providing this binding.
When you re-submit please also send to devicetree@vger.kernel.org.
Running the binding through dt_binding_check gives me:
/home/sam/drm/linux.git/Documentation/devicetree/bindings/display/bridge/anx7625.yaml: ignoring, error in schema:
warning: no schema found in file: /home/sam/drm/linux.git/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
make[2]: *** [/home/sam/drm/linux.git/Documentation/devicetree/bindings/Makefile:42: Documentation/devicetree/bindings/processed-schema.yaml] Error 255
make[2]: *** Waiting for unfinished jobs....
/home/sam/drm/linux.git/Documentation/devicetree/bindings/display/bridge/anx7625.yaml: Additional properties are not allowed ('example' was unexpected)
/home/sam/drm/linux.git/Documentation/devicetree/bindings/display/bridge/anx7625.yaml: Additional properties are not allowed ('example' was unexpected)
See writing-schemas.rst for instruction installing tools etc.
>
> You can add support to your board with binding.
>
> Example:
> anx7625_bridge: encoder@58 {
> compatible = "analogix,anx7625";
> reg = <0x58>;
> status = "okay";
> panel-flags = <1>;
> enable-gpios = <&pio 45 GPIO_ACTIVE_HIGH>;
> reset-gpios = <&pio 73 GPIO_ACTIVE_HIGH>;
> #address-cells = <1>;
> #size-cells = <0>;
>
> port@0 {
> reg = <0>;
> anx_1_in: endpoint {
> remote-endpoint = <&mipi_dsi>;
> };
> };
>
> port@2 {
> reg = <2>;
> anx_1_out: endpoint {
> remote-endpoint = <&panel_in>;
> };
> };
> };
>
> Signed-off-by: Xin Ji <xji@analogixsemi.com>
> ---
> .../bindings/display/bridge/anx7625.yaml | 91 ++++++++++++++++++++++
> 1 file changed, 91 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/bridge/anx7625.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/bridge/anx7625.yaml b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
> new file mode 100644
> index 0000000..1149ebb
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
Name the file "analogix,anx7625.yaml".
(We should rename anx6345.yaml, so others do not omit the company name)
> @@ -0,0 +1,91 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +# Copyright 2019 Analogix Semiconductor, Inc.
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/display/bridge/anx7625.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
> +
> +title: Analogix ANX7625 SlimPort (4K Mobile HD Transmitter)
> +
> +maintainers:
> + - Xin Ji <xji@analogixsemi.com>
> +
> +description: |
> + The ANX7625 is an ultra-low power 4K Mobile HD Transmitter
> + designed for portable devices.
> +
> +properties:
> + "#address-cells": true
> + "#size-cells": true
> +
> + compatible:
> + items:
> + - const: analogix,anx7625
> +
> + reg:
> + maxItems: 1
> +
> + panel-flags:
> + description: indicate the panel is internal or external.
> + maxItems: 1
This property hint at something needs to be modelled in a different way.
I do not recall other bindings need similar info.
> +
> + interrupts:
> + maxItems: 1
A description would be nice.
> +
> + enable-gpios:
> + description: used for power on chip control, POWER_EN pin D2.
> + maxItems: 1
> +
> + reset-gpios:
> + description: used for reset chip control, RESET_N pin B7.
> + maxItems: 1
> +
> + port@0:
> + type: object
> + description:
> + A port node pointing to MIPI DSI host port node.
> +
> + port@1:
> + type: object
> + description:
> + A port node pointing to MIPI DPI host port node.
Maybe explain how it differs from port@0 and why it is optional.
> +
> + port@2:
> + type: object
> + description:
> + A port node pointing to panel port node.
Unless there is a good reason not to then please use a ports node, like
you see in almost (all?) other bridge bindings.
> +
> +required:
> + - "#address-cells"
> + - "#size-cells"
> + - compatible
> + - reg
> + - port@0
> + - port@2
additionalProperties: false??
> +
> +example:
It must be named "examples:" - this is what dt_binding_check complains
about.
> + - |
> + anx7625_bridge: encoder@58 {
> + compatible = "analogix,anx7625";
> + reg = <0x58>;
> + status = "okay";
No status in examples.
> + panel-flags = <1>;
> + enable-gpios = <&pio 45 GPIO_ACTIVE_HIGH>;
You need to include a header file to pull in GPIO_ACTIVE_HIGH - see what
other bindings do.
> + reset-gpios = <&pio 73 GPIO_ACTIVE_HIGH>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
Be consistent with indent. My personal preference is 4 spaces.
> + anx_1_in: endpoint {
> + remote-endpoint = <&mipi_dsi>;
> + };
> + };
> +
> + port@2 {
> + reg = <2>;
> + anx_1_out: endpoint {
> + remote-endpoint = <&panel_in>;
> + };
> + };
> + };
Lot's of small comments. But if this is your first binding then this is
expected.
Looks forward for v2.
Sam
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
WARNING: multiple messages have this Message-ID (diff)
From: Sam Ravnborg <sam@ravnborg.org>
To: Xin Ji <xji@analogixsemi.com>
Cc: devel@driverdev.osuosl.org,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Andrzej Hajda <a.hajda@samsung.com>,
Nicolas Boichat <drinkcat@google.com>,
Jernej Skrabec <jernej.skrabec@siol.net>,
Nicolas Boichat <drinkcat@chromium.org>,
Pi-Hsun Shih <pihsun@chromium.org>,
Jonas Karlman <jonas@kwiboo.se>, David Airlie <airlied@linux.ie>,
Neil Armstrong <narmstrong@baylibre.com>,
linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
Sheng Pan <span@analogixsemi.com>,
Dan Carpenter <dan.carpenter@oracle.com>
Subject: Re: [PATCH v8 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding
Date: Mon, 27 Apr 2020 20:49:09 +0200 [thread overview]
Message-ID: <20200427184909.GA15880@ravnborg.org> (raw)
In-Reply-To: <67ccead807b7d0a50df479cab2c9d325041224bc.1587880280.git.xji@analogixsemi.com>
Hi Xin Ji
On Mon, Apr 27, 2020 at 02:17:46PM +0800, Xin Ji wrote:
> The ANX7625 is an ultra-low power 4K Mobile HD Transmitter designed
> for portable device. It converts MIPI to DisplayPort 1.3 4K.
Thanks for providing this binding.
When you re-submit please also send to devicetree@vger.kernel.org.
Running the binding through dt_binding_check gives me:
/home/sam/drm/linux.git/Documentation/devicetree/bindings/display/bridge/anx7625.yaml: ignoring, error in schema:
warning: no schema found in file: /home/sam/drm/linux.git/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
make[2]: *** [/home/sam/drm/linux.git/Documentation/devicetree/bindings/Makefile:42: Documentation/devicetree/bindings/processed-schema.yaml] Error 255
make[2]: *** Waiting for unfinished jobs....
/home/sam/drm/linux.git/Documentation/devicetree/bindings/display/bridge/anx7625.yaml: Additional properties are not allowed ('example' was unexpected)
/home/sam/drm/linux.git/Documentation/devicetree/bindings/display/bridge/anx7625.yaml: Additional properties are not allowed ('example' was unexpected)
See writing-schemas.rst for instruction installing tools etc.
>
> You can add support to your board with binding.
>
> Example:
> anx7625_bridge: encoder@58 {
> compatible = "analogix,anx7625";
> reg = <0x58>;
> status = "okay";
> panel-flags = <1>;
> enable-gpios = <&pio 45 GPIO_ACTIVE_HIGH>;
> reset-gpios = <&pio 73 GPIO_ACTIVE_HIGH>;
> #address-cells = <1>;
> #size-cells = <0>;
>
> port@0 {
> reg = <0>;
> anx_1_in: endpoint {
> remote-endpoint = <&mipi_dsi>;
> };
> };
>
> port@2 {
> reg = <2>;
> anx_1_out: endpoint {
> remote-endpoint = <&panel_in>;
> };
> };
> };
>
> Signed-off-by: Xin Ji <xji@analogixsemi.com>
> ---
> .../bindings/display/bridge/anx7625.yaml | 91 ++++++++++++++++++++++
> 1 file changed, 91 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/bridge/anx7625.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/bridge/anx7625.yaml b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
> new file mode 100644
> index 0000000..1149ebb
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
Name the file "analogix,anx7625.yaml".
(We should rename anx6345.yaml, so others do not omit the company name)
> @@ -0,0 +1,91 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +# Copyright 2019 Analogix Semiconductor, Inc.
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/display/bridge/anx7625.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
> +
> +title: Analogix ANX7625 SlimPort (4K Mobile HD Transmitter)
> +
> +maintainers:
> + - Xin Ji <xji@analogixsemi.com>
> +
> +description: |
> + The ANX7625 is an ultra-low power 4K Mobile HD Transmitter
> + designed for portable devices.
> +
> +properties:
> + "#address-cells": true
> + "#size-cells": true
> +
> + compatible:
> + items:
> + - const: analogix,anx7625
> +
> + reg:
> + maxItems: 1
> +
> + panel-flags:
> + description: indicate the panel is internal or external.
> + maxItems: 1
This property hint at something needs to be modelled in a different way.
I do not recall other bindings need similar info.
> +
> + interrupts:
> + maxItems: 1
A description would be nice.
> +
> + enable-gpios:
> + description: used for power on chip control, POWER_EN pin D2.
> + maxItems: 1
> +
> + reset-gpios:
> + description: used for reset chip control, RESET_N pin B7.
> + maxItems: 1
> +
> + port@0:
> + type: object
> + description:
> + A port node pointing to MIPI DSI host port node.
> +
> + port@1:
> + type: object
> + description:
> + A port node pointing to MIPI DPI host port node.
Maybe explain how it differs from port@0 and why it is optional.
> +
> + port@2:
> + type: object
> + description:
> + A port node pointing to panel port node.
Unless there is a good reason not to then please use a ports node, like
you see in almost (all?) other bridge bindings.
> +
> +required:
> + - "#address-cells"
> + - "#size-cells"
> + - compatible
> + - reg
> + - port@0
> + - port@2
additionalProperties: false??
> +
> +example:
It must be named "examples:" - this is what dt_binding_check complains
about.
> + - |
> + anx7625_bridge: encoder@58 {
> + compatible = "analogix,anx7625";
> + reg = <0x58>;
> + status = "okay";
No status in examples.
> + panel-flags = <1>;
> + enable-gpios = <&pio 45 GPIO_ACTIVE_HIGH>;
You need to include a header file to pull in GPIO_ACTIVE_HIGH - see what
other bindings do.
> + reset-gpios = <&pio 73 GPIO_ACTIVE_HIGH>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
Be consistent with indent. My personal preference is 4 spaces.
> + anx_1_in: endpoint {
> + remote-endpoint = <&mipi_dsi>;
> + };
> + };
> +
> + port@2 {
> + reg = <2>;
> + anx_1_out: endpoint {
> + remote-endpoint = <&panel_in>;
> + };
> + };
> + };
Lot's of small comments. But if this is your first binding then this is
expected.
Looks forward for v2.
Sam
next prev parent reply other threads:[~2020-04-27 18:49 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-27 6:16 [PATCH v8 0/2] Add initial support for slimport anx7625 Xin Ji
2020-04-27 6:16 ` Xin Ji
2020-04-27 6:17 ` [PATCH v8 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding Xin Ji
2020-04-27 6:17 ` Xin Ji
2020-04-27 18:49 ` Sam Ravnborg [this message]
2020-04-27 18:49 ` Sam Ravnborg
2020-04-30 6:01 ` Xin Ji
2020-04-30 6:01 ` Xin Ji
2020-04-27 6:18 ` [PATCH v8 2/2] drm/bridge: anx7625: Add anx7625 MIPI DSI/DPI to DP bridge driver Xin Ji
2020-04-27 6:18 ` Xin Ji
2020-04-27 20:00 ` Sam Ravnborg
2020-04-27 20:00 ` Sam Ravnborg
2020-04-30 6:24 ` Xin Ji
2020-04-30 6:24 ` Xin Ji
2020-04-30 7:03 ` Sam Ravnborg
2020-04-30 7:03 ` Sam Ravnborg
2020-04-30 7:11 ` Xin Ji
2020-04-30 7:11 ` Xin Ji
2020-04-29 2:10 ` Nicolas Boichat
2020-04-29 2:10 ` Nicolas Boichat
2020-04-30 6:30 ` Xin Ji
2020-04-30 6:30 ` Xin Ji
2020-04-27 18:53 ` [PATCH v8 0/2] Add initial support for slimport anx7625 Sam Ravnborg
2020-04-27 18:53 ` Sam Ravnborg
2020-04-30 6:03 ` Xin Ji
2020-04-30 6:03 ` Xin Ji
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200427184909.GA15880@ravnborg.org \
--to=sam@ravnborg.org \
--cc=a.hajda@samsung.com \
--cc=airlied@linux.ie \
--cc=dan.carpenter@oracle.com \
--cc=devel@driverdev.osuosl.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=drinkcat@chromium.org \
--cc=drinkcat@google.com \
--cc=jernej.skrabec@siol.net \
--cc=jonas@kwiboo.se \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=narmstrong@baylibre.com \
--cc=pihsun@chromium.org \
--cc=span@analogixsemi.com \
--cc=xji@analogixsemi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.