Skip to contentSkip to conversation

dt-bindings: usb: Fix EIC7700 USB reset's issue

PATCH Superseded [email protected] 3 participants 4 messages Apr 7 – Apr 9

Subsystems (2)

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 dt-bindings: usb: Fix EIC7700 USB reset's issue

From: Hang Cao <[email protected]>

The EIC7700 USB controller requires a USB PHY RESET operation.PHY RESET operation was missed in the verification version, as it was performed in ESWIN's U-Boot.

If a non-ESWIN provided loader is used, this issue will occur, resulting in USB not work.This patch does not introduce any backward incompatibility since the dts is not upstream yet.

Fixes c640a4239db5 ("dt-bindings: usb: Add ESWIN EIC7700 USB controller")
---
 .../devicetree/bindings/usb/eswin,eic7700-usb.yaml         | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
Documentation/devicetree/bindings/usb/eswin,eic7700-usb.yaml +4 -3
index 41c3b1b98991..658260619423 100644
@@ -41,12 +41,13 @@ properties:
       - const: usb_en
 
   resets:
-    maxItems: 2
+    maxItems: 3
 
   reset-names:
     items:
       - const: vaux
       - const: usb_rst
+      - const: usb_phy
 
   eswin,hsp-sp-csr:
     description:
@@ -85,8 +86,8 @@ examples:
         interrupt-parent = <&plic>;
         interrupts = <85>;
         interrupt-names = "peripheral";
-        resets = <&reset 84>, <&hspcrg 2>;
-        reset-names = "vaux", "usb_rst";
+        resets = <&reset 84>, <&hspcrg 2>, <&hspcrg 4>;
+        reset-names = "vaux", "usb_rst", "usb_phy";
         dr_mode = "peripheral";
         maximum-speed = "high-speed";
         phy_type = "utmi";

--
2.34.1

#1 lore raw
Quoted 3 lines · On Tue, Apr 07, 2026 at 02:17:02PM +0800, [email protected] wrote:

From: Hang Cao <[email protected]>

The EIC7700 USB controller requires a USB PHY RESET operation.PHY RESET

Missing space after full stop.

Quoted 6 lines

operation was missed in the verification version, as it was performed in ESWIN's U-Boot.

If a non-ESWIN provided loader is used, this issue will occur, resulting in USB not work.This patch does not introduce any backward incompatibility since the dts is not upstream yet.

So U-Boot will be affected, no?

And even if DTS is not upstreamed, what about all out of tree DTS? This is an already released ABI, so at least explain that driver does not care about resets here and grabs them all.

Quoted 2 lines
Fixes c640a4239db5 ("dt-bindings: usb: Add ESWIN EIC7700 USB controller")

Best regards,
Krzysztof

#2 lore raw
Quoted 7 lines · Krzysztof Kozlowski
Quoted 3 lines · On Tue, Apr 07, 2026 at 02:17:02PM +0800, [email protected] wrote:

From: Hang Cao <[email protected]>

The EIC7700 USB controller requires a USB PHY RESET operation.PHY RESET

Missing space after full stop.

Quoted 8 lines
Quoted 6 lines

operation was missed in the verification version, as it was performed in ESWIN's U-Boot.

If a non-ESWIN provided loader is used, this issue will occur, resulting in USB not work.This patch does not introduce any backward incompatibility since the dts is not upstream yet.

So U-Boot will be affected, no?

Is it even really affected? I don't think there's any bootloader for this other than what ESWIN is shipping downstream, outside of people's development trees. And any software that expected two resets will work just as badly as it always did when a third one is added.

Quoted 11 lines

And even if DTS is not upstreamed, what about all out of tree DTS? This is an already released ABI, so at least explain that driver does not care about resets here and grabs them all.

Quoted 2 lines
Fixes c640a4239db5 ("dt-bindings: usb: Add ESWIN EIC7700 USB controller")

Best regards,
Krzysztof

author
#3 lore raw

Hi, Krzysztof & Conor

No, U-Boot will NOT be affected. Sorry for the misunderstanding due to the inaccurate commit message.

I will send the next version with the improved commit message below:

The EIC7700 USB requires a USB PHY reset operation; otherwise, the USB will not work. The reason why the USB driver that was applied can work properly is that the USB PHY has already been reset in ESWIN's U-Boot.

However, the proper functioning of the USB driver should not be dependent on the bootloader. Therefore, it is necessary to incorporate the USB PHY reset signal into the DT bindings.

This patch does not introduce any backward incompatibility since the dts is not upstream yet.  As array of reset operations are used in the driver, no modifications to the USB controller driver are needed.

Best regards,
Hang

Quoted 40 lines

-----Original Messages-----
From: "Conor Dooley" <[email protected]>
Send time:Thursday, 09/04/2026 01:24:34
To: "Krzysztof Kozlowski" <[email protected]>
Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
Subject: Re: [PATCH v1] dt-bindings: usb: Fix EIC7700 USB reset's issue

Quoted 7 lines · Krzysztof Kozlowski
Quoted 3 lines · On Tue, Apr 07, 2026 at 02:17:02PM +0800, [email protected] wrote:

From: Hang Cao <[email protected]>

The EIC7700 USB controller requires a USB PHY RESET operation.PHY RESET

Missing space after full stop.

Quoted 8 lines
Quoted 6 lines

operation was missed in the verification version, as it was performed in ESWIN's U-Boot.

If a non-ESWIN provided loader is used, this issue will occur, resulting in USB not work.This patch does not introduce any backward incompatibility since the dts is not upstream yet.

So U-Boot will be affected, no?

Is it even really affected? I don't think there's any bootloader for this other than what ESWIN is shipping downstream, outside of people's development trees. And any software that expected two resets will work just as badly as it always did when a third one is added.

Quoted 11 lines

And even if DTS is not upstreamed, what about all out of tree DTS? This is an already released ABI, so at least explain that driver does not care about resets here and grabs them all.

Quoted 2 lines
Fixes c640a4239db5 ("dt-bindings: usb: Add ESWIN EIC7700 USB controller")

Best regards,
Krzysztof