linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Maxime Ripard <maxime@cerno.tech>
Cc: Chen-Yu Tsai <wens@csie.org>,
	Jernej Skrabec <jernej.skrabec@siol.net>,
	devicetree@vger.kernel.org, Frank Rowand <frowand.list@gmail.com>,
	linux-arm-kernel@lists.infradead.org,
	linux-sunxi@googlegroups.com, Dongjin Kim <tobetter@gmail.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-usb@vger.kernel.org
Subject: Re: [PATCH 34/54] dt-bindings: usb: Convert SMSC USB3503 binding to a schema
Date: Fri, 23 Jul 2021 16:08:40 -0600	[thread overview]
Message-ID: <20210723220840.GA2675167@robh.at.kernel.org> (raw)
In-Reply-To: <20210721140424.725744-35-maxime@cerno.tech>

On Wed, Jul 21, 2021 at 04:04:04PM +0200, Maxime Ripard wrote:
> The SMSC USB3503 USB Hub Controller is supported by Linux thanks to
> its device tree binding.
> 
> Now that we have the DT validation in place, let's convert the device
> tree bindings for that driver over to a YAML schema.
> 
> Cc: Dongjin Kim <tobetter@gmail.com>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Cc: linux-usb@vger.kernel.org
> Signed-off-by: Maxime Ripard <maxime@cerno.tech>
> ---
>  .../devicetree/bindings/usb/smsc,usb3503.yaml | 104 ++++++++++++++++++
>  .../devicetree/bindings/usb/usb3503.txt       |  39 -------
>  2 files changed, 104 insertions(+), 39 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
>  delete mode 100644 Documentation/devicetree/bindings/usb/usb3503.txt
> 
> diff --git a/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml b/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
> new file mode 100644
> index 000000000000..0e5622e7df87
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
> @@ -0,0 +1,104 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/usb/smsc,usb3503.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: SMSC USB3503 High-Speed Hub Controller Device Tree Bindings
> +
> +maintainers:
> +  - Dongjin Kim <tobetter@gmail.com>
> +
> +properties:
> +  compatible:
> +    enum:
> +      - smsc,usb3503
> +      - smsc,usb3503a
> +
> +  reg:
> +    maxItems: 1
> +
> +  connect-gpios:
> +    description: >
> +      GPIO for connect

maxItems: 1
> +
> +  intn-gpios:
> +    description: >
> +      GPIO for interrupt

maxItems: 1

> +
> +  reset-gpios:
> +    description: >
> +      GPIO for reset

maxItems: 1

> +
> +  disabled-ports:
> +    $ref: /schemas/types.yaml#/definitions/uint32-array
> +    minItems: 1
> +    maxItems: 3
> +    items:
> +      minimum: 1
> +      maximum: 3
> +    description: >
> +      Specifies the ports unused using their port number. Do not describe this
> +      property if all ports have to be enabled.
> +
> +  initial-mode:
> +    enum: [1, 2]
> +    description: >
> +      Specifies initial mode. 1 for Hub mode, 2 for standby mode.
> +
> +  clocks:
> +    description: >
> +      Clock used for driving REFCLK signal. If not provided the driver assumes
> +      that clock signal is always available, its rate is specified by REF_SEL
> +      pins and a value from the primary reference clock frequencies table is
> +      used.

maxItems: 1

> +
> +  clock-names:
> +    const: refclk
> +
> +  refclk-frequency:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    description: >
> +      Frequency of the REFCLK signal as defined by REF_SEL pins. If not
> +      provided, driver will not set rate of the REFCLK signal and assume that a
> +      value from the primary reference clock frequencies table is used.
> +
> +required:
> +  - compatible
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +      i2c {
> +          #address-cells = <1>;
> +          #size-cells = <0>;
> +        
> +          usb3503@8 {

usb-hub@8


> +              compatible = "smsc,usb3503";
> +              reg = <0x08>;
> +              connect-gpios = <&gpx3 0 1>;
> +              disabled-ports = <2 3>;
> +              intn-gpios = <&gpx3 4 1>;
> +              reset-gpios = <&gpx3 5 1>;
> +              initial-mode = <1>;
> +              clocks = <&clks 80>;
> +              clock-names = "refclk";
> +          };
> +      };
> +
> +  - |
> +      #include <dt-bindings/gpio/gpio.h>
> +
> +      usb-hub {
> +          /* I2C is not connected */

We should probably require this is a USB bus child device in this case, 
but that's a separate change.

> +          compatible = "smsc,usb3503";
> +          initial-mode = <1>; /* initialize in HUB mode */
> +          disabled-ports = <1>;
> +          intn-gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */
> +          reset-gpios = <&pio 4 16 GPIO_ACTIVE_LOW>; /* PE16 */
> +          connect-gpios = <&pio 4 17 GPIO_ACTIVE_HIGH>; /* PE17 */
> +          refclk-frequency = <19200000>;
> +      };
> +
> +...
> diff --git a/Documentation/devicetree/bindings/usb/usb3503.txt b/Documentation/devicetree/bindings/usb/usb3503.txt
> deleted file mode 100644
> index 057dd384d473..000000000000
> --- a/Documentation/devicetree/bindings/usb/usb3503.txt
> +++ /dev/null
> @@ -1,39 +0,0 @@
> -SMSC USB3503 High-Speed Hub Controller
> -
> -Required properties:
> -- compatible: Should be "smsc,usb3503" or "smsc,usb3503a".
> -
> -Optional properties:
> -- reg: Specifies the i2c slave address, it is required and should be 0x08
> -       if I2C is used.
> -- connect-gpios: Should specify GPIO for connect.
> -- disabled-ports: Should specify the ports unused.
> -	'1' or '2' or '3' are available for this property to describe the port
> -	number. 1~3 property values are possible to be described.
> -	Do not describe this property if all ports have to be enabled.
> -- intn-gpios: Should specify GPIO for interrupt.
> -- reset-gpios: Should specify GPIO for reset.
> -- initial-mode: Should specify initial mode.
> -                (1 for HUB mode, 2 for STANDBY mode)
> -- refclk: Clock used for driving REFCLK signal (optional, if not provided
> -	the driver assumes that clock signal is always available, its
> -	rate is specified by REF_SEL pins and a value from the primary
> -	reference clock frequencies table is used). Use clocks and
> -	clock-names in order to assign it
> -- refclk-frequency: Frequency of the REFCLK signal as defined by REF_SEL
> -	pins (optional, if not provided, driver will not set rate of the
> -	REFCLK signal and assume that a value from the primary reference
> -	clock frequencies table is used)
> -
> -Examples:
> -	usb3503@8 {
> -		compatible = "smsc,usb3503";
> -		reg = <0x08>;
> -		connect-gpios = <&gpx3 0 1>;
> -		disabled-ports = <2 3>;
> -		intn-gpios = <&gpx3 4 1>;
> -		reset-gpios = <&gpx3 5 1>;
> -		initial-mode = <1>;
> -		clocks = <&clks 80>;
> -		clock-names = "refclk";
> -	};
> -- 
> 2.31.1
> 
> 

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2021-07-23 22:10 UTC|newest]

Thread overview: 128+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-21 14:03 [PATCH 00/54] ARM: dts: Last round of DT schema fixes Maxime Ripard
2021-07-21 14:03 ` [PATCH 01/54] ASoC: dt-bindings: Add WM8978 Binding Maxime Ripard
2021-07-23 21:32   ` Rob Herring
2021-07-26  0:17     ` Mark Brown
2021-07-27 12:21       ` Richard Fitzgerald
2021-07-27 12:58         ` Mark Brown
2021-07-21 14:03 ` [PATCH 02/54] ASoC: dt-bindings: Convert Bluetooth SCO Link binding to a schema Maxime Ripard
2021-07-22  5:35   ` Samuel Holland
2021-07-22  7:58     ` Maxime Ripard
2021-07-21 14:03 ` [PATCH 03/54] ASoC: dt-bindings: Convert SPDIF Transmitter " Maxime Ripard
2021-07-23 21:35   ` Rob Herring
2021-07-21 14:03 ` [PATCH 04/54] ASoC: dt-bindings: Convert Simple Amplifier " Maxime Ripard
2021-07-23 21:36   ` Rob Herring
2021-07-21 14:03 ` [PATCH 05/54] dt-bindings: Convert Reserved Memory " Maxime Ripard
2021-07-21 14:30   ` Rob Herring
2021-08-18 10:00     ` Maxime Ripard
2021-08-18 12:54       ` Rob Herring
2021-07-22  2:09   ` Rob Herring
2021-07-21 14:03 ` [PATCH 06/54] dt-bindings: arm: Convert ARM CCI-400 " Maxime Ripard
2021-07-22  2:09   ` Rob Herring
2021-07-22  2:26   ` Rob Herring
2021-07-21 14:03 ` [PATCH 07/54] dt-bindings: bluetooth: broadcom: Fix clocks check Maxime Ripard
2021-07-23 21:38   ` Rob Herring
2021-07-21 14:03 ` [PATCH 08/54] dt-bindings: bluetooth: realtek: Add missing max-speed Maxime Ripard
2021-07-23 21:39   ` Rob Herring
2021-07-23 22:56   ` Alistair
2021-07-21 14:03 ` [PATCH 09/54] dt-bindings: clocks: Fix typo in the H6 compatible Maxime Ripard
2021-07-23 21:39   ` Rob Herring
2021-07-21 14:03 ` [PATCH 10/54] dt-bindings: display: panel-lvds: Document panel compatibles Maxime Ripard
2021-07-21 14:14   ` Sam Ravnborg
2021-07-22  2:09   ` Rob Herring
2021-07-22  2:29   ` Rob Herring
2021-08-18 12:43     ` Maxime Ripard
2021-08-18 13:48       ` Rob Herring
2021-08-23 16:31         ` Maxime Ripard
2021-07-21 14:03 ` [PATCH 11/54] dt-bindings: display: simple-bridge: Add corpro, gm7123 compatible Maxime Ripard
2021-07-21 14:16   ` Sam Ravnborg
2021-07-22  9:44     ` Maxime Ripard
2021-07-21 14:03 ` [PATCH 12/54] dt-bindings: gnss: Convert UBlox Neo-6M binding to a schema Maxime Ripard
2021-07-23 21:42   ` Rob Herring
2021-07-21 14:03 ` [PATCH 13/54] dt-bindings: gpio: Convert X-Powers AXP209 GPIO " Maxime Ripard
2021-07-22  2:09   ` Rob Herring
2021-07-22  2:13     ` Rob Herring
2021-07-21 14:03 ` [PATCH 14/54] dt-bindings: hwmon: Add IIO HWMON binding Maxime Ripard
2021-07-22  9:20   ` Jonathan Cameron
2021-07-22  9:34     ` Maxime Ripard
2021-07-23 21:44       ` Rob Herring
2021-07-21 14:03 ` [PATCH 15/54] dt-bindings: iio: st: Remove wrong items length check Maxime Ripard
2021-07-23 21:47   ` Rob Herring
2021-07-23 22:45   ` Linus Walleij
2021-07-21 14:03 ` [PATCH 16/54] dt-bindings: input: Convert ChipOne ICN8318 binding to a schema Maxime Ripard
2021-07-23 21:48   ` Rob Herring
2021-07-21 14:03 ` [PATCH 17/54] dt-bindings: input: Convert Pixcir Touchscreen " Maxime Ripard
2021-07-23 21:49   ` Rob Herring
2021-07-21 14:03 ` [PATCH 18/54] dt-bindings: input: Convert Regulator Haptic " Maxime Ripard
2021-07-23 21:50   ` Rob Herring
2021-07-21 14:03 ` [PATCH 19/54] dt-bindings: input: Convert Silead GSL1680 " Maxime Ripard
2021-07-23 21:51   ` Rob Herring
2021-07-21 14:03 ` [PATCH 20/54] dt-bindings: input: sun4i-lradc: Add wakeup-source Maxime Ripard
2021-07-23 21:52   ` Rob Herring
2021-07-21 14:03 ` [PATCH 21/54] dt-bindings: interconnect: sunxi: Add R40 MBUS compatible Maxime Ripard
2021-07-23 21:52   ` Rob Herring
2021-07-21 14:03 ` [PATCH 22/54] dt-bindings: media: Convert OV5640 binding to a schema Maxime Ripard
2021-07-22  2:09   ` Rob Herring
2021-07-21 14:03 ` [PATCH 23/54] dt-bindings: mfd: Convert X-Powers AC100 " Maxime Ripard
2021-07-23 21:54   ` Rob Herring
2021-08-01 12:15     ` [linux-sunxi] " Chen-Yu Tsai
2021-07-21 14:03 ` [PATCH 24/54] dt-bindings: mfd: Convert X-Powers AXP " Maxime Ripard
2021-07-22  2:09   ` Rob Herring
2021-07-21 14:03 ` [PATCH 25/54] dt-bindings: mmc: Convert MMC Card " Maxime Ripard
2021-07-23 21:57   ` Rob Herring
2021-08-04 11:24     ` Ulf Hansson
2021-07-21 14:03 ` [PATCH 26/54] dt-bindings: net: dwmac: Fix typo in the R40 compatible Maxime Ripard
2021-07-23 21:57   ` Rob Herring
2021-07-21 14:03 ` [PATCH 27/54] dt-bindings: net: wireless: Convert ESP ESP8089 binding to a schema Maxime Ripard
2021-07-23 21:58   ` Rob Herring
     [not found]   ` <20210806084709.0C279C4338A@smtp.codeaurora.org>
2021-08-18  8:45     ` Maxime Ripard
2021-07-21 14:03 ` [PATCH 28/54] dt-bindings: power: supply: axp20x: Add AXP803 compatible Maxime Ripard
2021-07-23 21:59   ` Rob Herring
2021-08-01 12:16   ` [linux-sunxi] " Chen-Yu Tsai
2021-08-06 21:33   ` Sebastian Reichel
2021-07-21 14:03 ` [PATCH 29/54] dt-bindings: power: supply: axp20x-battery: Add AXP209 compatible Maxime Ripard
2021-07-23 22:00   ` Rob Herring
2021-08-06 21:34   ` Sebastian Reichel
2021-07-21 14:04 ` [PATCH 30/54] dt-bindings: regulator: Convert SY8106A binding to a schema Maxime Ripard
2021-07-23 22:01   ` Rob Herring
2021-07-21 14:04 ` [PATCH 31/54] dt-bindings: sunxi: Add CPU Configuration Controller Binding Maxime Ripard
2021-07-23 22:01   ` Rob Herring
2021-07-21 14:04 ` [PATCH 32/54] dt-bindings: sunxi: Add Allwinner A80 PRCM Binding Maxime Ripard
2021-07-23 22:02   ` Rob Herring
2021-07-21 14:04 ` [PATCH 33/54] dt-bindings: thermal: Make trips node optional Maxime Ripard
2021-07-23 22:03   ` Rob Herring
2021-08-14 13:42   ` Daniel Lezcano
2021-07-21 14:04 ` [PATCH 34/54] dt-bindings: usb: Convert SMSC USB3503 binding to a schema Maxime Ripard
2021-07-23 22:08   ` Rob Herring [this message]
2021-07-21 14:04 ` [PATCH 35/54] dt-bindings: usb: dwc3: Fix usb-phy check Maxime Ripard
2021-07-23 22:15   ` Rob Herring
2021-07-29 12:29     ` Maxime Ripard
2021-07-21 14:04 ` [PATCH 36/54] dt-bindings: usb: ehci: Add Allwinner A83t compatible Maxime Ripard
2021-07-23 22:15   ` Rob Herring
2021-07-21 14:04 ` [PATCH 37/54] dt-bindings: usb: ohci: " Maxime Ripard
2021-07-23 22:16   ` Rob Herring
2021-07-21 14:04 ` [PATCH 38/54] dt-bindings: w1: Convert 1-Wire GPIO binding to a schema Maxime Ripard
2021-07-23 22:19   ` Rob Herring
2021-07-21 14:04 ` [PATCH 39/54] ARM: dts: sunxi: Rename power-supply names Maxime Ripard
2021-07-21 14:04 ` [PATCH 40/54] ARM: dts: sunxi: Rename gpio pinctrl names Maxime Ripard
2021-07-21 14:04 ` [PATCH 41/54] ARM: dts: sunxi: Fix OPP arrays Maxime Ripard
2021-07-21 14:04 ` [PATCH 42/54] ARM: dts: sunxi: Fix OPPs node name Maxime Ripard
2021-07-21 14:04 ` [PATCH 43/54] ARM: dts: sunxi: Fix the SPI NOR node names Maxime Ripard
2021-07-21 14:04 ` [PATCH 44/54] ARM: dts: v3s: Remove useless DMA properties Maxime Ripard
2021-07-21 14:04 ` [PATCH 45/54] ARM: dts: tbs711: Fix touchscreen compatible Maxime Ripard
2021-07-21 14:04 ` [PATCH 46/54] ARM: dts: cubieboard4: Remove the dumb-vga-dac compatible Maxime Ripard
2021-08-01 12:19   ` [linux-sunxi] " Chen-Yu Tsai
2021-07-21 14:04 ` [PATCH 47/54] arm64: dts: allwinner: h5: Fix GPU thermal zone node name Maxime Ripard
2021-07-21 14:04 ` [PATCH 48/54] arm64: dts: allwinner: h6: Fix de3 parent clocks ordering Maxime Ripard
2021-07-21 14:04 ` [PATCH 49/54] arm64: dts: allwinner: a100: Fix thermal zone node name Maxime Ripard
2021-07-21 14:04 ` [PATCH 50/54] arm64: dts: allwinner: pinetab: Change regulator node name to avoid warning Maxime Ripard
2021-07-21 14:04 ` [PATCH 51/54] arm64: dts: allwinner: teres-i: Add missing reg Maxime Ripard
2021-07-21 14:04 ` [PATCH 52/54] arm64: dts: allwinner: Remove regulator-ramp-delay Maxime Ripard
2021-07-22  5:55   ` Samuel Holland
2021-07-22  8:16     ` Maxime Ripard
2021-08-06 11:48       ` [linux-sunxi] " Icenowy Zheng
2021-08-06 12:05         ` Chen-Yu Tsai
2021-08-06 12:09           ` Icenowy Zheng
2021-07-21 14:04 ` [PATCH 53/54] arm64: dts: allwinner: teres-i: Remove wakekup-source from the PMIC Maxime Ripard
2021-07-21 14:04 ` [PATCH 54/54] arm64: dts: allwinner: pinephone: Fix BT SCO codec cells size Maxime Ripard
2021-07-21 16:48 ` [PATCH 00/54] ARM: dts: Last round of DT schema fixes Rob Herring
2021-07-29 12:03   ` Maxime Ripard

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=20210723220840.GA2675167@robh.at.kernel.org \
    --to=robh@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=frowand.list@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jernej.skrabec@siol.net \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-sunxi@googlegroups.com \
    --cc=linux-usb@vger.kernel.org \
    --cc=maxime@cerno.tech \
    --cc=tobetter@gmail.com \
    --cc=wens@csie.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).