summaryrefslogtreecommitdiff
path: root/drivers/usb/host/xhci-dwc3.c
diff options
context:
space:
mode:
authorNikhil Badola <nikhil.badola@freescale.com>2015-06-23 06:47:49 +0300
committerMarek Vasut <marex@denx.de>2015-07-22 09:55:45 +0300
commit667f4dd90f0f40f8d4fde7ef280550ef5f7946f8 (patch)
treea1aa1a10e681322ca31a4671cd3c9400cba27b8a /drivers/usb/host/xhci-dwc3.c
parent7e5a32fcf378d30cb2ab5f8471071350574ff70a (diff)
downloadu-boot-667f4dd90f0f40f8d4fde7ef280550ef5f7946f8.tar.xz
drivers: usb: fsl: Implement Erratum A-009116 for XHCI controller
This adjusts (micro)frame length to appropriate value thus avoiding USB devices to time out over a longer run Signed-off-by: Nikhil Badola <nikhil.badola@freescale.com>
Diffstat (limited to 'drivers/usb/host/xhci-dwc3.c')
-rw-r--r--drivers/usb/host/xhci-dwc3.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/usb/host/xhci-dwc3.c b/drivers/usb/host/xhci-dwc3.c
index 67147cb627..c722c504ad 100644
--- a/drivers/usb/host/xhci-dwc3.c
+++ b/drivers/usb/host/xhci-dwc3.c
@@ -89,3 +89,9 @@ int dwc3_core_init(struct dwc3 *dwc3_reg)
return 0;
}
+
+void dwc3_set_fladj(struct dwc3 *dwc3_reg, u32 val)
+{
+ setbits_le32(&dwc3_reg->g_fladj, GFLADJ_30MHZ_REG_SEL |
+ GFLADJ_30MHZ(val));
+}