Skip to content
Snippets Groups Projects
Commit 55cef593 authored by Roy Luo's avatar Roy Luo Committed by Treehugger Robot
Browse files

BACKPORT: FROMLIST: usb: dwc3: Set SUSPENDENABLE soon after phy init


After phy initialization, some phy operations can only be executed while
in lower P states. Ensure GUSB3PIPECTL.SUSPENDENABLE and
GUSB2PHYCFG.SUSPHY are set soon after initialization to avoid blocking
phy ops.

Previously the SUSPENDENABLE bits are only set after the controller
initialization, which may not happen right away if there's no gadget
driver or xhci driver bound. Revise this to clear SUSPENDENABLE bits
only when there's mode switching (change in GCTL.PRTCAPDIR).

Fixes: 6d735722 ("usb: dwc3: core: Prevent phy suspend during init")
Cc: stable@vger.kernel.org
Signed-off-by: default avatarThinh Nguyen <Thinh.Nguyen@synopsys.com>

Bug: 374242909
Bug: 359966146
Test: gadget enumeration
Link: https://lore.kernel.org/linux-usb/633aef0afee7d56d2316f7cc3e1b2a6d518a8cc9.1738280911.git.Thinh.Nguyen@synopsys.com/


Change-Id: Ib2cb7c6f0f5c7082fa18155403633e36f589ebbc
Signed-off-by: default avatarRoy Luo <royluo@google.com>
parent a47cc5b9
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment