summaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/patches-5.10/850-awake-rt305x-dwc2-controller.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ramips/patches-5.10/850-awake-rt305x-dwc2-controller.patch')
-rw-r--r--target/linux/ramips/patches-5.10/850-awake-rt305x-dwc2-controller.patch15
1 files changed, 15 insertions, 0 deletions
diff --git a/target/linux/ramips/patches-5.10/850-awake-rt305x-dwc2-controller.patch b/target/linux/ramips/patches-5.10/850-awake-rt305x-dwc2-controller.patch
new file mode 100644
index 0000000000..7110a5b808
--- /dev/null
+++ b/target/linux/ramips/patches-5.10/850-awake-rt305x-dwc2-controller.patch
@@ -0,0 +1,15 @@
+--- a/drivers/usb/dwc2/platform.c
++++ b/drivers/usb/dwc2/platform.c
+@@ -431,6 +431,12 @@ static int dwc2_driver_probe(struct plat
+ if (retval)
+ return retval;
+
++ /* Enable USB port before any regs access */
++ if (readl(hsotg->regs + PCGCTL) & 0x0f) {
++ writel(0x00, hsotg->regs + PCGCTL);
++ /* TODO: mdelay(25) here? vendor driver don't use it */
++ }
++
+ hsotg->needs_byte_swap = dwc2_check_core_endianness(hsotg);
+
+ retval = dwc2_get_dr_mode(hsotg);