OSDN Git Service

usb: dwc3: gadget: Check IP revision for GRXTHRCFG
authorThinh Nguyen <Thinh.Nguyen@synopsys.com>
Fri, 16 Mar 2018 22:34:13 +0000 (15:34 -0700)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Thu, 22 Mar 2018 08:48:53 +0000 (10:48 +0200)
DWC_usb31 controller has a different UsbRxPktCnt bit fields from
GRXTHRCFG register. Check for DWC_usb31 IP revision to read the
appropriate value.

Signed-off-by: Thinh Nguyen <thinhn@synopsys.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/dwc3/gadget.c

index 1431a88..19cf9c0 100644 (file)
@@ -1858,7 +1858,11 @@ static int __dwc3_gadget_start(struct dwc3 *dwc)
         * bursts of data without going through any sort of endpoint throttling.
         */
        reg = dwc3_readl(dwc->regs, DWC3_GRXTHRCFG);
-       reg &= ~DWC3_GRXTHRCFG_PKTCNTSEL;
+       if (dwc3_is_usb31(dwc))
+               reg &= ~DWC31_GRXTHRCFG_PKTCNTSEL;
+       else
+               reg &= ~DWC3_GRXTHRCFG_PKTCNTSEL;
+
        dwc3_writel(dwc->regs, DWC3_GRXTHRCFG, reg);
 
        dwc3_gadget_setup_nump(dwc);