* [PATCH] dt-bindings: usb: Add Socionext Uniphier DWC3 controller
@ 2025-12-15 21:25 Rob Herring (Arm)
2025-12-16 1:20 ` Kunihiko Hayashi
0 siblings, 1 reply; 5+ messages in thread
From: Rob Herring (Arm) @ 2025-12-15 21:25 UTC (permalink / raw)
To: Greg Kroah-Hartman, Krzysztof Kozlowski, Conor Dooley,
Kunihiko Hayashi, Masami Hiramatsu
Cc: linux-usb, devicetree, linux-arm-kernel, linux-kernel
The Socionext Uniphier DWC3 controller binding is already in use, but
undocumented. It's a straight-forward binding similar to other DWC3
bindings.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
.../bindings/usb/socionext,uniphier-dwc3.yaml | 89 +++++++++++++++++++
1 file changed, 89 insertions(+)
create mode 100644 Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
diff --git a/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml b/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
new file mode 100644
index 000000000000..892ae3458c1b
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
@@ -0,0 +1,89 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/socionext,uniphier-dwc3.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Socionext Uniphier SuperSpeed DWC3 USB SoC controller
+
+maintainers:
+ - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
+ - Masami Hiramatsu <mhiramat@kernel.org>
+
+select:
+ properties:
+ compatible:
+ contains:
+ const: socionext,uniphier-dwc3
+ required:
+ - compatible
+
+properties:
+ compatible:
+ items:
+ - const: socionext,uniphier-dwc3
+ - const: snps,dwc3
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ minItems: 1
+ items:
+ - description: Host or single combined interrupt
+ - description: Peripheral interrupt
+
+ interrupt-names:
+ minItems: 1
+ items:
+ - enum:
+ - dwc_usb3
+ - host
+ - const: peripheral
+
+ clocks:
+ maxItems: 3
+
+ clock-names:
+ items:
+ - const: ref
+ - const: bus_early
+ - const: suspend
+
+ phys:
+ description: 1 to 4 HighSpeed PHYs followed by 1 or 2 SuperSpeed PHYs
+ minItems: 2
+ maxItems: 6
+
+ resets:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - clocks
+ - clock-names
+ - phys
+
+unevaluatedProperties: false
+
+allOf:
+ - $ref: snps,dwc3.yaml#
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+ usb@65a00000 {
+ compatible = "socionext,uniphier-dwc3", "snps,dwc3";
+ reg = <0x65a00000 0xcd00>;
+ interrupt-names = "dwc_usb3";
+ interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "ref", "bus_early", "suspend";
+ clocks = <&sys_clk 12>, <&sys_clk 12>, <&sys_clk 12>;
+ resets = <&usb0_rst 15>;
+ phys = <&usb0_hsphy0>, <&usb0_hsphy1>,
+ <&usb0_ssphy0>, <&usb0_ssphy1>;
+ dr_mode = "host";
+ };
--
2.51.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] dt-bindings: usb: Add Socionext Uniphier DWC3 controller
2025-12-15 21:25 [PATCH] dt-bindings: usb: Add Socionext Uniphier DWC3 controller Rob Herring (Arm)
@ 2025-12-16 1:20 ` Kunihiko Hayashi
2025-12-16 16:38 ` Rob Herring
0 siblings, 1 reply; 5+ messages in thread
From: Kunihiko Hayashi @ 2025-12-16 1:20 UTC (permalink / raw)
To: Rob Herring (Arm), Greg Kroah-Hartman, Krzysztof Kozlowski,
Conor Dooley, Masami Hiramatsu
Cc: linux-usb, devicetree, linux-arm-kernel, linux-kernel
Hi Rob,
On 2025/12/16 6:25, Rob Herring (Arm) wrote:
> The Socionext Uniphier DWC3 controller binding is already in use, but
> undocumented. It's a straight-forward binding similar to other DWC3
> bindings.
After being pointed out by Krzysztof at OSSJapan, I've checked the bindings
and was preparing some additions or fixes to resolve the warning.
It's almost the same as my proposal, however, I add a little.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> .../bindings/usb/socionext,uniphier-dwc3.yaml | 89 +++++++++++++++++++
> 1 file changed, 89 insertions(+)
> create mode 100644
> Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
>
> diff --git
> a/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> b/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> new file mode 100644
> index 000000000000..892ae3458c1b
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> @@ -0,0 +1,89 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/usb/socionext,uniphier-dwc3.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Socionext Uniphier SuperSpeed DWC3 USB SoC controller
> +
> +maintainers:
> + - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
> + - Masami Hiramatsu <mhiramat@kernel.org>
> +
> +select:
> + properties:
> + compatible:
> + contains:
> + const: socionext,uniphier-dwc3
> + required:
> + - compatible
> +
> +properties:
> + compatible:
> + items:
> + - const: socionext,uniphier-dwc3
> + - const: snps,dwc3
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + minItems: 1
> + items:
> + - description: Host or single combined interrupt
> + - description: Peripheral interrupt
> +
> + interrupt-names:
> + minItems: 1
> + items:
> + - enum:
> + - dwc_usb3
> + - host
> + - const: peripheral
There's no problem, but how about the following description
following snps,dwc3.yaml?
interrupt-names:
oneOf:
- const: dwc_usb3
- items:
enum: [host, peripheral]
> +
> + clocks:
> + maxItems: 3
> +
> + clock-names:
> + items:
> + - const: ref
> + - const: bus_early
> + - const: suspend
> +
> + phys:
> + description: 1 to 4 HighSpeed PHYs followed by 1 or 2 SuperSpeed PHYs
> + minItems: 2
> + maxItems: 6
Since Pro4 only has one PHY, so:
minItems: 1
> +
> + resets:
> + maxItems: 1
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - clocks
> + - clock-names
> + - phys
> +
> +unevaluatedProperties: false
> +
> +allOf:
> + - $ref: snps,dwc3.yaml#
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> +
> + usb@65a00000 {
> + compatible = "socionext,uniphier-dwc3", "snps,dwc3";
> + reg = <0x65a00000 0xcd00>;
> + interrupt-names = "dwc_usb3";
> + interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
> + clock-names = "ref", "bus_early", "suspend";
> + clocks = <&sys_clk 12>, <&sys_clk 12>, <&sys_clk 12>;
> + resets = <&usb0_rst 15>;
> + phys = <&usb0_hsphy0>, <&usb0_hsphy1>,
> + <&usb0_ssphy0>, <&usb0_ssphy1>;
> + dr_mode = "host";
> + };
Thank you,
--
---
Best Regards
Kunihiko Hayashi
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] dt-bindings: usb: Add Socionext Uniphier DWC3 controller
2025-12-16 1:20 ` Kunihiko Hayashi
@ 2025-12-16 16:38 ` Rob Herring
2025-12-18 9:52 ` Kunihiko Hayashi
0 siblings, 1 reply; 5+ messages in thread
From: Rob Herring @ 2025-12-16 16:38 UTC (permalink / raw)
To: Kunihiko Hayashi
Cc: Greg Kroah-Hartman, Krzysztof Kozlowski, Conor Dooley,
Masami Hiramatsu, linux-usb, devicetree, linux-arm-kernel,
linux-kernel
On Mon, Dec 15, 2025 at 7:22 PM Kunihiko Hayashi
<hayashi.kunihiko@socionext.com> wrote:
>
> Hi Rob,
>
> On 2025/12/16 6:25, Rob Herring (Arm) wrote:
> > The Socionext Uniphier DWC3 controller binding is already in use, but
> > undocumented. It's a straight-forward binding similar to other DWC3
> > bindings.
>
> After being pointed out by Krzysztof at OSSJapan, I've checked the bindings
> and was preparing some additions or fixes to resolve the warning.
>
> It's almost the same as my proposal, however, I add a little.
>
> >
> > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > ---
> > .../bindings/usb/socionext,uniphier-dwc3.yaml | 89 +++++++++++++++++++
> > 1 file changed, 89 insertions(+)
> > create mode 100644
> > Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> >
> > diff --git
> > a/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> > b/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> > new file mode 100644
> > index 000000000000..892ae3458c1b
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> > @@ -0,0 +1,89 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/usb/socionext,uniphier-dwc3.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Socionext Uniphier SuperSpeed DWC3 USB SoC controller
> > +
> > +maintainers:
> > + - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
> > + - Masami Hiramatsu <mhiramat@kernel.org>
> > +
> > +select:
> > + properties:
> > + compatible:
> > + contains:
> > + const: socionext,uniphier-dwc3
> > + required:
> > + - compatible
> > +
> > +properties:
> > + compatible:
> > + items:
> > + - const: socionext,uniphier-dwc3
> > + - const: snps,dwc3
> > +
> > + reg:
> > + maxItems: 1
> > +
> > + interrupts:
> > + minItems: 1
> > + items:
> > + - description: Host or single combined interrupt
> > + - description: Peripheral interrupt
> > +
> > + interrupt-names:
> > + minItems: 1
> > + items:
> > + - enum:
> > + - dwc_usb3
> > + - host
> > + - const: peripheral
> There's no problem, but how about the following description
> following snps,dwc3.yaml?
>
> interrupt-names:
> oneOf:
> - const: dwc_usb3
> - items:
> enum: [host, peripheral]
That allows for 'peripheral, host' or just 'peripheral'. Mine would
seemingly allow 'dwc_usb3, host', but snps,dwc3.yaml will prevent
that.
>
> > +
> > + clocks:
> > + maxItems: 3
> > +
> > + clock-names:
> > + items:
> > + - const: ref
> > + - const: bus_early
> > + - const: suspend
> > +
> > + phys:
> > + description: 1 to 4 HighSpeed PHYs followed by 1 or 2 SuperSpeed PHYs
> > + minItems: 2
> > + maxItems: 6
>
> Since Pro4 only has one PHY, so:
> minItems: 1
Ah, I only checked arm64. Will fix.
If there's other arm32 warnings, I'm not looking at those. So fixes
appreciated there.
Rob
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] dt-bindings: usb: Add Socionext Uniphier DWC3 controller
2025-12-16 16:38 ` Rob Herring
@ 2025-12-18 9:52 ` Kunihiko Hayashi
0 siblings, 0 replies; 5+ messages in thread
From: Kunihiko Hayashi @ 2025-12-18 9:52 UTC (permalink / raw)
To: Rob Herring
Cc: Greg Kroah-Hartman, Krzysztof Kozlowski, Conor Dooley,
Masami Hiramatsu, linux-usb, devicetree, linux-arm-kernel,
linux-kernel
On 2025/12/17 1:38, Rob Herring wrote:
> On Mon, Dec 15, 2025 at 7:22 PM Kunihiko Hayashi
> <hayashi.kunihiko@socionext.com> wrote:
>>
>> Hi Rob,
>>
>> On 2025/12/16 6:25, Rob Herring (Arm) wrote:
>>> The Socionext Uniphier DWC3 controller binding is already in use, but
>>> undocumented. It's a straight-forward binding similar to other DWC3
>>> bindings.
>>
>> After being pointed out by Krzysztof at OSSJapan, I've checked the
>> bindings
>> and was preparing some additions or fixes to resolve the warning.
>>
>> It's almost the same as my proposal, however, I add a little.
>>
>>>
>>> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
>>> ---
>>> .../bindings/usb/socionext,uniphier-dwc3.yaml | 89 +++++++++++++++++++
>>> 1 file changed, 89 insertions(+)
>>> create mode 100644
>>> Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
>>>
>>> diff --git
>>> a/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
>>> b/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
>>> new file mode 100644
>>> index 000000000000..892ae3458c1b
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
>>> @@ -0,0 +1,89 @@
>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/usb/socionext,uniphier-dwc3.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: Socionext Uniphier SuperSpeed DWC3 USB SoC controller
>>> +
>>> +maintainers:
>>> + - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
>>> + - Masami Hiramatsu <mhiramat@kernel.org>
>>> +
>>> +select:
>>> + properties:
>>> + compatible:
>>> + contains:
>>> + const: socionext,uniphier-dwc3
>>> + required:
>>> + - compatible
>>> +
>>> +properties:
>>> + compatible:
>>> + items:
>>> + - const: socionext,uniphier-dwc3
>>> + - const: snps,dwc3
>>> +
>>> + reg:
>>> + maxItems: 1
>>> +
>>> + interrupts:
>>> + minItems: 1
>>> + items:
>>> + - description: Host or single combined interrupt
>>> + - description: Peripheral interrupt
>>> +
>>> + interrupt-names:
>>> + minItems: 1
>>> + items:
>>> + - enum:
>>> + - dwc_usb3
>>> + - host
>>> + - const: peripheral
>> There's no problem, but how about the following description
>> following snps,dwc3.yaml?
>>
>> interrupt-names:
>> oneOf:
>> - const: dwc_usb3
>> - items:
>> enum: [host, peripheral]
>
> That allows for 'peripheral, host' or just 'peripheral'. Mine would
> seemingly allow 'dwc_usb3, host', but snps,dwc3.yaml will prevent
> that.
I see. The property combinations are complex, so
I'll follow your suggestion from the currnet .dts files.
>>
>>> +
>>> + clocks:
>>> + maxItems: 3
>>> +
>>> + clock-names:
>>> + items:
>>> + - const: ref
>>> + - const: bus_early
>>> + - const: suspend
>>> +
>>> + phys:
>>> + description: 1 to 4 HighSpeed PHYs followed by 1 or 2 SuperSpeed
>>> PHYs
>>> + minItems: 2
>>> + maxItems: 6
>>
>> Since Pro4 only has one PHY, so:
>> minItems: 1
>
> Ah, I only checked arm64. Will fix>
> If there's other arm32 warnings, I'm not looking at those. So fixes
> appreciated there.
Yes, I'll address the arm32 warnings.
Thank you,
---
Best Regards
Kunihiko Hayashi
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] dt-bindings: usb: Add Socionext Uniphier DWC3 controller
@ 2025-12-24 11:45 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2025-12-24 11:45 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp
::::::
:::::: Manual check reason: "dtcheck: binding changes may go via different trees"
::::::
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
In-Reply-To: <20251215212507.3317805-1-robh@kernel.org>
References: <20251215212507.3317805-1-robh@kernel.org>
TO: "Rob Herring (Arm)" <robh@kernel.org>
TO: "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
TO: Krzysztof Kozlowski <krzk@kernel.org>
TO: Conor Dooley <conor+dt@kernel.org>
TO: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
TO: Masami Hiramatsu <mhiramat@kernel.org>
CC: linux-usb@vger.kernel.org
CC: devicetree@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
Hi Rob,
kernel test robot noticed the following build warnings:
[auto build test WARNING on usb/usb-testing]
[also build test WARNING on usb/usb-next usb/usb-linus westeri-thunderbolt/next krzk-dt/for-next linus/master v6.16-rc1 next-20251219]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Rob-Herring-Arm/dt-bindings-usb-Add-Socionext-Uniphier-DWC3-controller/20251216-053102
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
patch link: https://lore.kernel.org/r/20251215212507.3317805-1-robh%40kernel.org
patch subject: [PATCH] dt-bindings: usb: Add Socionext Uniphier DWC3 controller
:::::: branch date: 9 days ago
:::::: commit date: 9 days ago
config: arm-randconfig-2051-20251217 (https://download.01.org/0day-ci/archive/20251224/202512241211.t8uGeVRw-lkp@intel.com/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
dtschema version: 2025.12
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251224/202512241211.t8uGeVRw-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/r/202512241211.t8uGeVRw-lkp@intel.com/
dtcheck warnings: (new ones prefixed by >>)
arch/arm/boot/dts/socionext/uniphier-pro4-ace.dtb: /soc/smpctrl@59801000: failed to match any schema with compatible: ['socionext,uniphier-smpctrl']
>> arch/arm/boot/dts/socionext/uniphier-pro4-ace.dtb: usb@65c00000 (socionext,uniphier-dwc3): phys: [[48]] is too short
from schema $id: http://devicetree.org/schemas/usb/socionext,uniphier-dwc3.yaml
--
arch/arm/boot/dts/socionext/uniphier-pro4-ref.dtb: /soc/smpctrl@59801000: failed to match any schema with compatible: ['socionext,uniphier-smpctrl']
>> arch/arm/boot/dts/socionext/uniphier-pro4-ref.dtb: usb@65c00000 (socionext,uniphier-dwc3): phys: [[49]] is too short
from schema $id: http://devicetree.org/schemas/usb/socionext,uniphier-dwc3.yaml
--
arch/arm/boot/dts/socionext/uniphier-pro4-sanji.dtb: /soc/smpctrl@59801000: failed to match any schema with compatible: ['socionext,uniphier-smpctrl']
>> arch/arm/boot/dts/socionext/uniphier-pro4-sanji.dtb: usb@65c00000 (socionext,uniphier-dwc3): phys: [[48]] is too short
from schema $id: http://devicetree.org/schemas/usb/socionext,uniphier-dwc3.yaml
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-12-24 11:45 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-15 21:25 [PATCH] dt-bindings: usb: Add Socionext Uniphier DWC3 controller Rob Herring (Arm)
2025-12-16 1:20 ` Kunihiko Hayashi
2025-12-16 16:38 ` Rob Herring
2025-12-18 9:52 ` Kunihiko Hayashi
-- strict thread matches above, loose matches on Subject: below --
2025-12-24 11:45 kernel test robot
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.