All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Anson Huang <Anson.Huang@nxp.com>
Cc: linus.walleij@linaro.org, bgolaszewski@baylibre.com,
	stefan@agner.ch, linux-gpio@vger.kernel.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	Linux-imx@nxp.com
Subject: Re: [PATCH] dt-bindings: gpio: Convert vf610 to json-schema
Date: Thu, 6 Aug 2020 08:08:25 -0600	[thread overview]
Message-ID: <20200806140825.GB766974@bogus> (raw)
In-Reply-To: <1596553308-13190-1-git-send-email-Anson.Huang@nxp.com>

On Tue, Aug 04, 2020 at 11:01:48PM +0800, Anson Huang wrote:
> Convert the vf610 gpio binding to DT schema format using json-schema.
> 
> Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
> ---
>  .../devicetree/bindings/gpio/gpio-vf610.txt        | 63 -----------------
>  .../devicetree/bindings/gpio/gpio-vf610.yaml       | 79 ++++++++++++++++++++++
>  2 files changed, 79 insertions(+), 63 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-vf610.txt
>  create mode 100644 Documentation/devicetree/bindings/gpio/gpio-vf610.yaml
> 
> diff --git a/Documentation/devicetree/bindings/gpio/gpio-vf610.txt b/Documentation/devicetree/bindings/gpio/gpio-vf610.txt
> deleted file mode 100644
> index ae254aa..0000000
> --- a/Documentation/devicetree/bindings/gpio/gpio-vf610.txt
> +++ /dev/null
> @@ -1,63 +0,0 @@
> -* Freescale VF610 PORT/GPIO module
> -
> -The Freescale PORT/GPIO modules are two adjacent modules providing GPIO
> -functionality. Each pair serves 32 GPIOs. The VF610 has 5 instances of
> -each, and each PORT module has its own interrupt.
> -
> -Required properties for GPIO node:
> -- compatible : Should be "fsl,<soc>-gpio", below is supported list:
> -	       "fsl,vf610-gpio"
> -	       "fsl,imx7ulp-gpio"
> -- reg : The first reg tuple represents the PORT module, the second tuple
> -  the GPIO module.
> -- interrupts : Should be the port interrupt shared by all 32 pins.
> -- gpio-controller : Marks the device node as a gpio controller.
> -- #gpio-cells : Should be two. The first cell is the pin number and
> -  the second cell is used to specify the gpio polarity:
> -      0 = active high
> -      1 = active low
> -- interrupt-controller: Marks the device node as an interrupt controller.
> -- #interrupt-cells : Should be 2.  The first cell is the GPIO number.
> -  The second cell bits[3:0] is used to specify trigger type and level flags:
> -      1 = low-to-high edge triggered.
> -      2 = high-to-low edge triggered.
> -      4 = active high level-sensitive.
> -      8 = active low level-sensitive.
> -
> -Optional properties:
> --clocks:	Must contain an entry for each entry in clock-names.
> -		See common clock-bindings.txt for details.
> --clock-names:	A list of clock names. For imx7ulp, it must contain
> -		"gpio", "port".
> -
> -Note: Each GPIO port should have an alias correctly numbered in "aliases"
> -node.
> -
> -Examples:
> -
> -aliases {
> -	gpio0 = &gpio1;
> -	gpio1 = &gpio2;
> -};
> -
> -gpio1: gpio@40049000 {
> -	compatible = "fsl,vf610-gpio";
> -	reg = <0x40049000 0x1000 0x400ff000 0x40>;
> -	interrupts = <0 107 IRQ_TYPE_LEVEL_HIGH>;
> -	gpio-controller;
> -	#gpio-cells = <2>;
> -	interrupt-controller;
> -	#interrupt-cells = <2>;
> -	gpio-ranges = <&iomuxc 0 0 32>;
> -};
> -
> -gpio2: gpio@4004a000 {
> -	compatible = "fsl,vf610-gpio";
> -	reg = <0x4004a000 0x1000 0x400ff040 0x40>;
> -	interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>;
> -	gpio-controller;
> -	#gpio-cells = <2>;
> -	interrupt-controller;
> -	#interrupt-cells = <2>;
> -	gpio-ranges = <&iomuxc 0 32 32>;
> -};
> diff --git a/Documentation/devicetree/bindings/gpio/gpio-vf610.yaml b/Documentation/devicetree/bindings/gpio/gpio-vf610.yaml
> new file mode 100644
> index 0000000..315ffde
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/gpio/gpio-vf610.yaml
> @@ -0,0 +1,79 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/gpio/gpio-vf610.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Freescale VF610 PORT/GPIO module
> +
> +maintainers:
> +  - Stefan Agner <stefan@agner.ch>
> +
> +description: |
> +  The Freescale PORT/GPIO modules are two adjacent modules providing GPIO
> +  functionality. Each pair serves 32 GPIOs. The VF610 has 5 instances of
> +  each, and each PORT module has its own interrupt.
> +
> +  Note: Each GPIO port should have an alias correctly numbered in "aliases"
> +  node.
> +
> +properties:
> +  compatible:
> +    enum:
> +      - fsl,vf610-gpio
> +      - fsl,imx7ulp-gpio
> +
> +  reg:
> +    description: The first reg tuple represents the PORT module, the second tuple
> +      represents the GPIO module.
> +    maxItems: 1
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  interrupt-controller: true
> +
> +  "#interrupt-cells":
> +    const: 2
> +
> +  "#gpio-cells":
> +    const: 2
> +
> +  gpio-controller: true
> +
> +  clocks:
> +    items:
> +      - description: SoC GPIO clock
> +      - description: SoC PORT clock
> +
> +  clock-names:
> +    items:
> +      - const: gpio
> +      - const: port
> +
> +  gpio-ranges:
> +    maxItems: 1
> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +  - interrupt-controller
> +  - "#interrupt-cells"
> +  - "#gpio-cells"
> +  - gpio-controller

additionalProperties: false

> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> +
> +    gpio1: gpio@40049000 {
> +        compatible = "fsl,vf610-gpio";
> +        reg = <0x40049000 0x1000 0x400ff000 0x40>;
> +        interrupts = <0 107 IRQ_TYPE_LEVEL_HIGH>;
> +        gpio-controller;
> +        #gpio-cells = <2>;
> +        interrupt-controller;
> +        #interrupt-cells = <2>;
> +        gpio-ranges = <&iomuxc 0 0 32>;
> +    };
> -- 
> 2.7.4
> 

      parent reply	other threads:[~2020-08-06 17:38 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-04 15:01 [PATCH] dt-bindings: gpio: Convert vf610 to json-schema Anson Huang
2020-08-06 14:07 ` Rob Herring
2020-08-07  1:54   ` Anson Huang
2020-08-06 14:08 ` Rob Herring [this message]

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=20200806140825.GB766974@bogus \
    --to=robh@kernel.org \
    --cc=Anson.Huang@nxp.com \
    --cc=Linux-imx@nxp.com \
    --cc=bgolaszewski@baylibre.com \
    --cc=devicetree@vger.kernel.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stefan@agner.ch \
    /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.