linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH 7/8] dt-bindings: soc: socionext: Add UniPhier DWC3 USB glue layer
Date: Wed, 30 Nov 2022 18:00:24 +0900	[thread overview]
Message-ID: <c9e1ee72-6201-3a1e-307a-d5869a22e01c@socionext.com> (raw)
In-Reply-To: <12a98c77-5464-0f25-9081-13217f396484@linaro.org>

Hi Krzysztof,

On 2022/11/29 23:52, Krzysztof Kozlowski wrote:
> On 29/11/2022 11:35, Kunihiko Hayashi wrote:
>> Add DT binding schema for components belonging to the platform-specific
>> DWC3 USB glue layer implemented in UniPhier SoCs.
>>
>> This USB glue layer works as a sideband logic for the host controller,
>> including core reset, vbus control, PHYs, and some signals to the
>> controller.
>>
>> Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
>> ---
>>   .../socionext,uniphier-dwc3-glue.yaml         | 106 ++++++++++++++++++
>>   1 file changed, 106 insertions(+)
>>   create mode 100644
>> Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-dwc3-glue.yaml
>>
>> diff --git
>> a/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-dwc3-glue.yaml
>> b/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-dwc3-glue.yaml
>> new file mode 100644
>> index 000000000000..66f8786dd305
>> --- /dev/null
>> +++
>> b/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-dwc3-glue.yaml
>> @@ -0,0 +1,106 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id:
>> http://devicetree.org/schemas/soc/socionext/socionext,uniphier-dwc3-glue.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Socionext UniPhier SoC DWC3 USB3.0 glue layer
>> +
>> +maintainers:
>> +  - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
>> +
>> +description: |+
>> +  DWC3 USB3.0 glue layer implemented on Socionext UniPhier SoCs is
>> +  a sideband logic handling signals to DWC3 host controller inside
>> +  USB3.0 component.
>> +
>> +properties:
>> +  compatible:
>> +    items:
>> +      - enum:
>> +          - socionext,uniphier-pro4-dwc3-glue
>> +          - socionext,uniphier-pro5-dwc3-glue
>> +          - socionext,uniphier-pxs2-dwc3-glue
>> +          - socionext,uniphier-ld20-dwc3-glue
>> +          - socionext,uniphier-pxs3-dwc3-glue
>> +          - socionext,uniphier-nx1-dwc3-glue
>> +      - const: simple-mfd
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  '#address-cells':
>> +    const: 1
>> +
>> +  '#size-cells':
>> +    const: 1
>> +
>> +  ranges: true
>> +
>> +patternProperties:
>> +  "^reset-controller@[0-9a-f]+$":
>> +    $ref: /schemas/reset/socionext,uniphier-glue-reset.yaml#
>> +
>> +  "^regulator@[0-9a-f]+$":
>> +    $ref: /schemas/regulator/socionext,uniphier-regulator.yaml#
>> +
>> +  "^phy@[0-9a-f]+$":
>> +    oneOf:
>> +      - $ref: /schemas/phy/socionext,uniphier-usb3hs-phy.yaml#
>> +      - $ref: /schemas/phy/socionext,uniphier-usb3ss-phy.yaml#
>> +
>> +required:
>> +  - compatible
>> +  - reg
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> +  - |
>> +    usb-controller@65b00000 {
> 
> Node name: usb. There is no usage of "usb-controller".

I'm confusing about that.

This is an interface logic and doesn't have USB functions by itself.
Surely there is a USB host controller node "usb@..." in the same SoC.
Can this node be renamed to "usb"?

I've renamed the dts node name once in commit 4cc752a88ca9
("arm64: dts: uniphier: Rename usb-glue node for USB3 to usb-controller").

>> +        compatible = "socionext,uniphier-ld20-dwc3-glue", "simple-mfd";
>> +        reg = <0x65b00000 0x400>;
>> +        #address-cells = <1>;
>> +        #size-cells = <1>;
>> +        ranges = <0 0x65b00000 0x400>;
>> +
>> +        reset-controller@0 {
>> +            compatible = "socionext,uniphier-ld20-usb3-reset";
>> +            reg = <0x0 0x4>;
> 
> So now I see the unit addresses, which means none of your previous
> patches needed them. This raises next question - why this device is
> special and does not use syscon but own unit address?

The glue layer has a fixed register address for each child unlike
the previous patch.

This layer has also the other registers for USB core outside
the child nodes, however, there is no parent device that manages
these registers, so this layer node itself should take care of these
registers.

> Are the children here - regulator, reset controller and phys - related
> to the USB?

Yes, this "glue layer" is an interface of the USB controller, so these
children are only used for the USB controller.

Thank you,
---
Best Regards
Kunihiko Hayashi

  reply	other threads:[~2022-11-30  9:00 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-29 10:35 [PATCH 0/8] dt-bidnings: soc: Introduce UniPhier miscelaneous register blocks Kunihiko Hayashi
2022-11-29 10:35 ` [PATCH 1/8] dt-bindings: soc: socionext: Add UniPhier system controller Kunihiko Hayashi
2022-11-29 13:32   ` Rob Herring
2022-11-29 14:41   ` Krzysztof Kozlowski
2022-11-30  8:59     ` Kunihiko Hayashi
2022-11-30 15:24       ` Krzysztof Kozlowski
2022-12-01  8:29         ` Kunihiko Hayashi
2022-11-29 10:35 ` [PATCH 2/8] dt-bindings: soc: socionext: Add UniPhier SoC-glue logic Kunihiko Hayashi
2022-11-29 14:43   ` Krzysztof Kozlowski
2022-11-30  8:59     ` Kunihiko Hayashi
2022-11-30 15:27       ` Krzysztof Kozlowski
2022-12-01  8:29         ` Kunihiko Hayashi
2022-11-29 10:35 ` [PATCH 3/8] dt-bindings: soc: socionext: Add UniPhier peripheral block Kunihiko Hayashi
2022-11-29 13:32   ` Rob Herring
2022-11-29 14:46   ` Krzysztof Kozlowski
2022-11-30  9:00     ` Kunihiko Hayashi
2022-11-29 10:35 ` [PATCH 4/8] dt-bindings: soc: socionext: Add UniPhier media I/O block Kunihiko Hayashi
2022-11-29 13:32   ` Rob Herring
2022-11-29 10:35 ` [PATCH 5/8] dt-bindings: soc: socionext: Add UniPhier SD interface block Kunihiko Hayashi
2022-11-29 10:35 ` [PATCH 6/8] dt-bindings: soc: socionext: Add UniPhier ADAMV block Kunihiko Hayashi
2022-11-29 13:32   ` Rob Herring
2022-11-29 10:35 ` [PATCH 7/8] dt-bindings: soc: socionext: Add UniPhier DWC3 USB glue layer Kunihiko Hayashi
2022-11-29 13:32   ` Rob Herring
2022-11-29 14:52   ` Krzysztof Kozlowski
2022-11-30  9:00     ` Kunihiko Hayashi [this message]
2022-11-30 15:32       ` Krzysztof Kozlowski
2022-12-01  8:30         ` Kunihiko Hayashi
2022-11-29 10:35 ` [PATCH 8/8] dt-bindings: soc: socionext: Add UniPhier AHCI " Kunihiko Hayashi
2022-11-29 13:32   ` Rob Herring
2022-12-01  9:30   ` Kunihiko Hayashi
2022-12-02 12:08     ` Krzysztof Kozlowski
2022-12-02 12:14       ` Kunihiko Hayashi

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=c9e1ee72-6201-3a1e-307a-d5869a22e01c@socionext.com \
    --to=hayashi.kunihiko@socionext.com \
    --cc=devicetree@vger.kernel.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=krzysztof.kozlowski@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mhiramat@kernel.org \
    --cc=robh+dt@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 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).