[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <cf68f6f1-e405-4c20-b4e1-da04189d0e2f@sifive.com>
Date: Wed, 27 Sep 2023 15:00:59 -0500
From: Samuel Holland <samuel.holland@...ive.com>
To: Jisheng Zhang <jszhang@...nel.org>
Cc: linux-usb@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, Guo Ren <guoren@...nel.org>,
Fu Wei <wefu@...hat.com>, linux-riscv@...ts.infradead.org,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
Thinh Nguyen <Thinh.Nguyen@...opsys.com>
Subject: Re: [PATCH 1/2] dt-bindings: usb: Add T-HEAD TH1520 USB controller
On 2023-09-27 11:42 AM, Jisheng Zhang wrote:
> T-HEAD TH1520 platform's USB has a wrapper module around
> the DesignWare USB3 DRD controller. Add binding information doc for
> it.
>
> Signed-off-by: Jisheng Zhang <jszhang@...nel.org>
> ---
> .../bindings/usb/thead,th1520-usb.yaml | 73 +++++++++++++++++++
> 1 file changed, 73 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/usb/thead,th1520-usb.yaml
>
> diff --git a/Documentation/devicetree/bindings/usb/thead,th1520-usb.yaml b/Documentation/devicetree/bindings/usb/thead,th1520-usb.yaml
> new file mode 100644
> index 000000000000..afb618eb5013
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/thead,th1520-usb.yaml
> @@ -0,0 +1,73 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/usb/thead,th1520-usb.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: T-HEAD TH1520 DWC3 USB Controller Glue
> +
> +maintainers:
> + - Jisheng Zhang <jszhang@...nel.org>
> +
> +properties:
> + compatible:
> + const: thead,th1520-usb
> +
> + reg:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 4
> +
> + clock-names:
> + items:
> + - const: ref
> + - const: bus_early
> + - const: phy
> + - const: suspend
Except for "phy", these clocks are already documented in snps,dwc3.yaml. Are
they necessary for the glue/PHY, or do they belong only in the controller node?
They are not used by the driver in patch 2. Also, the PHY clock probably belongs
with the PHY node.
> +
> + ranges: true
> +
> + '#address-cells':
> + enum: [ 1, 2 ]
> +
> + '#size-cells':
> + enum: [ 1, 2 ]
> +
> +# Required child node:
> +
> +patternProperties:
> + "^usb@[0-9a-f]+$":
> + $ref: snps,dwc3.yaml#
> +
> +required:
> + - compatible
> + - reg
> + - clocks
> + - clock-names
> + - ranges
> +
> +additionalProperties: false
The driver in patch 2 uses the thead,misc-sysreg and vbus-supply properties,
neither of which is documented here. Also, depending on the other bindings, the
VBUS supply should be referenced from the USB PHY or connector node, not here.
Regards,
Samuel
> +examples:
> + - |
> +
> + usb {
> + compatible = "thead,th1520-usb";
> + reg = <0xec03f000 0x1000>;
> + clocks = <&clk 1>,
> + <&clk 2>,
> + <&clk 3>,
> + <&clk 4>;
> + clock-names = "ref", "bus_early", "phy", "suspend";
> + ranges;
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + usb@...40000 {
> + compatible = "snps,dwc3";
> + reg = <0xe7040000 0x10000>;
> + interrupts = <68>;
> + dr_mode = "host";
> + };
> + };
Powered by blists - more mailing lists