All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Geert Uytterhoeven <geert+renesas@glider.be>
Cc: Michael Turquette <mturquette@baylibre.com>,
	Stephen Boyd <sboyd@kernel.org>,
	devicetree@vger.kernel.org, linux-clk@vger.kernel.org,
	linux-renesas-soc@vger.kernel.org
Subject: Re: [PATCH] dt-bindings: clock: renesas: mstp: Convert to json-schema
Date: Mon, 18 May 2020 10:18:01 -0600	[thread overview]
Message-ID: <20200518161801.GA9983@bogus> (raw)
In-Reply-To: <20200508100321.6720-1-geert+renesas@glider.be>

On Fri, May 08, 2020 at 12:03:21PM +0200, Geert Uytterhoeven wrote:
> Convert the Renesas Clock Pulse Generator (CPG) Module Stop (MSTP)
> Clocks Device Tree binding documentation to json-schema.
> 
> Drop R-Car Gen2 compatible values, which were obsoleted by the unified
> "Renesas Clock Pulse Generator / Module Standby and Software Reset" DT
> bindings.
> Replace the obsolete example for R-Car H2 by an example that is still
> valid.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> To be queued in clk-renesas-for-v5.8.
> ---
>  .../clock/renesas,cpg-mstp-clocks.txt         | 60 --------------
>  .../clock/renesas,cpg-mstp-clocks.yaml        | 82 +++++++++++++++++++
>  2 files changed, 82 insertions(+), 60 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt
>  create mode 100644 Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.yaml
> 
> diff --git a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt
> deleted file mode 100644
> index da578ebdda2889fc..0000000000000000
> --- a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt
> +++ /dev/null
> @@ -1,60 +0,0 @@
> -* Renesas CPG Module Stop (MSTP) Clocks
> -
> -The CPG can gate SoC device clocks. The gates are organized in groups of up to
> -32 gates.
> -
> -This device tree binding describes a single 32 gate clocks group per node.
> -Clocks are referenced by user nodes by the MSTP node phandle and the clock
> -index in the group, from 0 to 31.
> -
> -Required Properties:
> -
> -  - compatible: Must be one of the following
> -    - "renesas,r7s72100-mstp-clocks" for R7S72100 (RZ) MSTP gate clocks
> -    - "renesas,r8a73a4-mstp-clocks" for R8A73A4 (R-Mobile APE6) MSTP gate clocks
> -    - "renesas,r8a7740-mstp-clocks" for R8A7740 (R-Mobile A1) MSTP gate clocks
> -    - "renesas,r8a7778-mstp-clocks" for R8A7778 (R-Car M1) MSTP gate clocks
> -    - "renesas,r8a7779-mstp-clocks" for R8A7779 (R-Car H1) MSTP gate clocks
> -    - "renesas,r8a7790-mstp-clocks" for R8A7790 (R-Car H2) MSTP gate clocks
> -    - "renesas,r8a7791-mstp-clocks" for R8A7791 (R-Car M2-W) MSTP gate clocks
> -    - "renesas,r8a7792-mstp-clocks" for R8A7792 (R-Car V2H) MSTP gate clocks
> -    - "renesas,r8a7793-mstp-clocks" for R8A7793 (R-Car M2-N) MSTP gate clocks
> -    - "renesas,r8a7794-mstp-clocks" for R8A7794 (R-Car E2) MSTP gate clocks
> -    - "renesas,sh73a0-mstp-clocks" for SH73A0 (SH-MobileAG5) MSTP gate clocks
> -    and "renesas,cpg-mstp-clocks" as a fallback.
> -  - reg: Base address and length of the I/O mapped registers used by the MSTP
> -    clocks. The first register is the clock control register and is mandatory.
> -    The second register is the clock status register and is optional when not
> -    implemented in hardware.
> -  - clocks: Reference to the parent clocks, one per output clock. The parents
> -    must appear in the same order as the output clocks.
> -  - #clock-cells: Must be 1
> -  - clock-output-names: The name of the clocks as free-form strings
> -  - clock-indices: Indices of the gate clocks into the group (0 to 31)
> -
> -The clocks, clock-output-names and clock-indices properties contain one entry
> -per gate clock. The MSTP groups are sparsely populated. Unimplemented gate
> -clocks must not be declared.
> -
> -
> -Example
> --------
> -
> -	#include <dt-bindings/clock/r8a7790-clock.h>
> -
> -	mstp3_clks: mstp3_clks@e615013c {
> -		compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks";
> -		reg = <0 0xe615013c 0 4>, <0 0xe6150048 0 4>;
> -		clocks = <&cp_clk>, <&mmc1_clk>, <&sd3_clk>, <&sd2_clk>,
> -			 <&cpg_clocks R8A7790_CLK_SD1>, <&cpg_clocks R8A7790_CLK_SD0>,
> -			 <&mmc0_clk>;
> -		#clock-cells = <1>;
> -		clock-output-names =
> -			"tpu0", "mmcif1", "sdhi3", "sdhi2",
> -			 "sdhi1", "sdhi0", "mmcif0";
> -		clock-indices = <
> -			R8A7790_CLK_TPU0 R8A7790_CLK_MMCIF1 R8A7790_CLK_SDHI3
> -			R8A7790_CLK_SDHI2 R8A7790_CLK_SDHI1 R8A7790_CLK_SDHI0
> -			R8A7790_CLK_MMCIF0
> -		>;
> -	};
> diff --git a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.yaml b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.yaml
> new file mode 100644
> index 0000000000000000..9b79e70ae5504bd7
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.yaml
> @@ -0,0 +1,82 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/clock/renesas,cpg-mstp-clocks.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Renesas Clock Pulse Generator (CPG) Module Stop (MSTP) Clocks
> +
> +maintainers:
> +  - Geert Uytterhoeven <geert+renesas@glider.be>
> +
> +description:
> +  The Clock Pulse Generator (CPG) can gate SoC device clocks. The gates are
> +  organized in groups of up to 32 gates.
> +
> +  This device tree binding describes a single 32 gate clocks group per node.
> +  Clocks are referenced by user nodes by the Module Stop (MSTP) node phandle
> +  and the clock index in the group, from 0 to 31.
> +
> +properties:
> +  compatible:
> +    items:
> +      - enum:
> +          - renesas,r7s72100-mstp-clocks # RZ/A1
> +          - renesas,r8a73a4-mstp-clocks  # R-Mobile APE6
> +          - renesas,r8a7740-mstp-clocks  # R-Mobile A1
> +          - renesas,r8a7778-mstp-clocks  # R-Car M1
> +          - renesas,r8a7779-mstp-clocks  # R-Car H1
> +          - renesas,sh73a0-mstp-clocks   # SH-Mobile AG5
> +      - const: renesas,cpg-mstp-clocks
> +
> +  reg:
> +    minItems: 1
> +    items:
> +      - description: Module Stop Control Register (MSTPCR)
> +      - description: Module Stop Status Register (MSTPSR)
> +
> +  clocks:
> +    minItems: 1
> +    maxItems: 32
> +
> +  '#clock-cells':
> +    const: 1
> +
> +  clock-indices:
> +    minItems: 1
> +    maxItems: 32
> +
> +  clock-output-names:
> +    minItems: 1
> +    maxItems: 32
> +
> +required:
> +  - compatible
> +  - reg
> +  - clocks
> +  - '#clock-cells'
> +  - clock-indices
> +  - clock-output-names
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/clock/r8a73a4-clock.h>
> +    mstp2_clks: mstp2_clks@e6150138 {
> +            compatible = "renesas,r8a73a4-mstp-clocks",
> +                         "renesas,cpg-mstp-clocks";
> +            reg = <0xe6150138 0 4>, <0xe6150040 0 4>;

Size is 2 cells?

With that fixed,

Reviewed-by: Rob Herring <robh@kernel.org>

> +            clocks = <&mp_clk>, <&mp_clk>, <&mp_clk>, <&mp_clk>, <&mp_clk>,
> +                     <&mp_clk>, <&cpg_clocks R8A73A4_CLK_HP>;
> +            #clock-cells = <1>;
> +            clock-indices = <
> +                    R8A73A4_CLK_SCIFA0 R8A73A4_CLK_SCIFA1
> +                    R8A73A4_CLK_SCIFB0 R8A73A4_CLK_SCIFB1
> +                    R8A73A4_CLK_SCIFB2 R8A73A4_CLK_SCIFB3
> +                    R8A73A4_CLK_DMAC
> +            >;
> +            clock-output-names =
> +                    "scifa0", "scifa1", "scifb0", "scifb1", "scifb2", "scifb3",
> +                    "dmac";
> +    };
> -- 
> 2.17.1
> 

  reply	other threads:[~2020-05-18 16:18 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-08 10:03 [PATCH] dt-bindings: clock: renesas: mstp: Convert to json-schema Geert Uytterhoeven
2020-05-18 16:18 ` Rob Herring [this message]
2020-05-18 19:36   ` Geert Uytterhoeven

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=20200518161801.GA9983@bogus \
    --to=robh@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=geert+renesas@glider.be \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=mturquette@baylibre.com \
    --cc=sboyd@kernel.org \
    /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.