From: Rob Herring <robh@kernel.org>
To: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: kishon@ti.com, mark.rutland@arm.com,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
linux-renesas-soc@vger.kernel.org
Subject: Re: [PATCH] dt-bindings: phy: renesas: usb3-phy: convert bindings to json-schema
Date: Mon, 28 Oct 2019 20:58:49 -0500 [thread overview]
Message-ID: <20191029015849.GA8521@bogus> (raw)
In-Reply-To: <1571387954-23446-1-git-send-email-yoshihiro.shimoda.uh@renesas.com>
On Fri, Oct 18, 2019 at 05:39:14PM +0900, Yoshihiro Shimoda wrote:
> Convert Renesas R-Car generation 3 USB 3.0 PHY bindings documentation
> to json-schema.
>
> Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> ---
> .../devicetree/bindings/phy/rcar-gen3-phy-usb3.txt | 52 --------------
> .../devicetree/bindings/phy/renesas,usb3-phy.yaml | 80 ++++++++++++++++++++++
> 2 files changed, 80 insertions(+), 52 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb3.txt
> create mode 100644 Documentation/devicetree/bindings/phy/renesas,usb3-phy.yaml
>
> diff --git a/Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb3.txt b/Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb3.txt
> deleted file mode 100644
> index 0fe433b..00000000
> --- a/Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb3.txt
> +++ /dev/null
> @@ -1,52 +0,0 @@
> -* Renesas R-Car generation 3 USB 3.0 PHY
> -
> -This file provides information on what the device node for the R-Car generation
> -3 and RZ/G2 USB 3.0 PHY contain.
> -If you want to enable spread spectrum clock (ssc), you should use USB_EXTAL
> -instead of USB3_CLK. However, if you don't want to these features, you don't
> -need this driver.
> -
> -Required properties:
> -- compatible: "renesas,r8a774a1-usb3-phy" if the device is a part of an R8A774A1
> - SoC.
> - "renesas,r8a774b1-usb3-phy" if the device is a part of an R8A774B1
> - SoC.
> - "renesas,r8a7795-usb3-phy" if the device is a part of an R8A7795
> - SoC.
> - "renesas,r8a7796-usb3-phy" if the device is a part of an R8A7796
> - SoC.
> - "renesas,r8a77965-usb3-phy" if the device is a part of an
> - R8A77965 SoC.
> - "renesas,rcar-gen3-usb3-phy" for a generic R-Car Gen3 or RZ/G2
> - compatible device.
> -
> - When compatible with the generic version, nodes must list the
> - SoC-specific version corresponding to the platform first
> - followed by the generic version.
> -
> -- reg: offset and length of the USB 3.0 PHY register block.
> -- clocks: A list of phandles and clock-specifier pairs.
> -- clock-names: Name of the clocks.
> - - The funcional clock must be "usb3-if".
> - - The usb3's external clock must be "usb3s_clk".
> - - The usb2's external clock must be "usb_extal". If you want to use the ssc,
> - the clock-frequency must not be 0.
> -- #phy-cells: see phy-bindings.txt in the same directory, must be <0>.
> -
> -Optional properties:
> -- renesas,ssc-range: Enable/disable spread spectrum clock (ssc) by using
> - the following values as u32:
> - - 0 (or the property doesn't exist): disable the ssc
> - - 4980: enable the ssc as -4980 ppm
> - - 4492: enable the ssc as -4492 ppm
> - - 4003: enable the ssc as -4003 ppm
> -
> -Example (R-Car H3):
> -
> - usb-phy@e65ee000 {
> - compatible = "renesas,r8a7795-usb3-phy",
> - "renesas,rcar-gen3-usb3-phy";
> - reg = <0 0xe65ee000 0 0x90>;
> - clocks = <&cpg CPG_MOD 328>, <&usb3s0_clk>, <&usb_extal>;
> - clock-names = "usb3-if", "usb3s_clk", "usb_extal";
> - };
> diff --git a/Documentation/devicetree/bindings/phy/renesas,usb3-phy.yaml b/Documentation/devicetree/bindings/phy/renesas,usb3-phy.yaml
> new file mode 100644
> index 00000000..42239e3
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/phy/renesas,usb3-phy.yaml
> @@ -0,0 +1,80 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/phy/renesas,usb3-phy.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Renesas R-Car generation 3 USB 3.0 PHY
> +
> +maintainers:
> + - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> +
> +properties:
> + compatible:
> + oneOf:
Don't need the oneOf here.
> + - items:
> + - enum:
> + - renesas,r8a774a1-usb3-phy # RZ/G2M
> + - renesas,r8a774b1-usb3-phy # RZ/G2N
> + - renesas,r8a7795-usb3-phy # R-Car H3
> + - renesas,r8a7796-usb3-phy # R-Car M3-W
> + - renesas,r8a77965-usb3-phy # R-Car M3-N
> + - const: renesas,rcar-gen3-usb3-phy
> +
> + reg:
> + # base address and length of the registers block for the PHY.
> + maxItems: 1
> +
> + clocks:
> + # A list of phandles and clock-specifier pairs.
> + maxItems: 3
> +
> + clock-names:
> + # If you want to use the ssc, the clock-frequency of usb_extal
> + # must not be 0.
> + maxItems: 3
> + items:
> + - const: usb3-if # The funcional clock
> + - const: usb3s_clk # The usb3's external clock
> + - const: usb_extal # The usb2's external clock
> +
> + '#phy-cells':
> + # see phy-bindings.txt in the same directory
> + const: 0
> +
> + power-domains:
> + maxItems: 1
> +
> + resets:
> + maxItems: 1
> +
> + renesas,ssc-range:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: |
> + Enable/disable spread spectrum clock (ssc) by using the following values
> + - 0 (or the property doesn't exist): disable the ssc
> + - 4980: enable the ssc as -4980 ppm
> + - 4492: enable the ssc as -4492 ppm
> + - 4003: enable the ssc as -4003 ppm
Make these values a schema. You'll need the $ref under an 'allOf' when
you do.
> +
> +required:
> + - compatible
> + - reg
> + - clocks
> + - clock-names
> + - '#phy-cells'
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/clock/r8a7795-cpg-mssr.h>
> + #include <dt-bindings/power/r8a7795-sysc.h>
> +
> + usb-phy@e65ee000 {
> + compatible = "renesas,r8a7795-usb3-phy", "renesas,rcar-gen3-usb3-phy";
> + reg = <0 0xe65ee000 0 0x90>;
> + clocks = <&cpg CPG_MOD 328>, <&usb3s0_clk>, <&usb_extal>;
> + clock-names = "usb3-if", "usb3s_clk", "usb_extal";
> + #phy-cells = <0>;
> + };
> --
> 2.7.4
>
prev parent reply other threads:[~2019-10-29 1:58 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-18 8:39 [PATCH] dt-bindings: phy: renesas: usb3-phy: convert bindings to json-schema Yoshihiro Shimoda
2019-10-29 1:58 ` 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=20191029015849.GA8521@bogus \
--to=robh@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=kishon@ti.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=yoshihiro.shimoda.uh@renesas.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.