Because of Ralink uboot set USB controller into sleep mode [1] we check it and awake controller before any registers access. Fix ticket #21396 [2] [1] http://marc.info/?l=linux-usb&m=137398626102108&w=2 [2] https://dev.openwrt.org/ticket/21396 Signed-Off-By: Serge Vasilugin <vasilugin@yandex.ru> SVN-Revision: 49212
parent
37b50fdb92
commit
a6c7c0029e
@ -0,0 +1,15 @@ |
||||
--- a/drivers/usb/dwc2/platform.c
|
||||
+++ b/drivers/usb/dwc2/platform.c
|
||||
@@ -375,6 +375,12 @@ static int dwc2_driver_probe(struct plat
|
||||
dev_dbg(&dev->dev, "mapped PA %08lx to VA %p\n",
|
||||
(unsigned long)res->start, hsotg->regs);
|
||||
|
||||
+ /* Enable USB port before any regs access */
|
||||
+ if(dwc2_readl(hsotg->regs + PCGCTL) & 0x0f) {
|
||||
+ dwc2_writel(0x00, hsotg->regs + PCGCTL);
|
||||
+ /* TODO: mdelay(25) here? vendor driver don't use it */
|
||||
+ }
|
||||
+
|
||||
hsotg->dr_mode = usb_get_dr_mode(&dev->dev);
|
||||
if (IS_ENABLED(CONFIG_USB_DWC2_HOST) &&
|
||||
hsotg->dr_mode != USB_DR_MODE_HOST) {
|
Loading…
Reference in new issue