From e477f1546f2739e9ea053d677f421e01a9babff4 Mon Sep 17 00:00:00 2001
From: Paolo Sabatino <paolo.sabatino@gmail.com>
Date: Sat, 2 Mar 2024 21:56:44 +0100
Subject: [PATCH] dwc2: add fixes for rk322x peripheral mode

---
 drivers/usb/dwc2/core.c | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/dwc2/core.c b/drivers/usb/dwc2/core.c
index 5635e4d7ec88..0a3d387a497a 100644
--- a/drivers/usb/dwc2/core.c
+++ b/drivers/usb/dwc2/core.c
@@ -532,6 +532,9 @@ void dwc2_force_mode(struct dwc2_hsotg *hsotg, bool host)
 	gusbcfg |= set;
 	dwc2_writel(hsotg, gusbcfg, GUSBCFG);
 
+	/* On some rockchip platforms, this fixes hang on reset in peripheral mode */
+	msleep(10);
+
 	dwc2_wait_for_mode(hsotg, host);
 	return;
 }
-- 
2.34.1

