summaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/ehci-hcd.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2011-01-19 13:57:46 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2011-01-20 09:54:33 +0100
commit203a5fd190315e454d1e61de46ecf79c4e2751f6 (patch)
tree932adbd8729acd1877724e72a245c473dd436c19 /drivers/usb/host/ehci-hcd.c
parent1a0ddc54ef631a7f7d7ed1831bda09eb10bafbfd (diff)
downloadbarebox-203a5fd190315e454d1e61de46ecf79c4e2751f6.tar.gz
barebox-203a5fd190315e454d1e61de46ecf79c4e2751f6.tar.xz
USB ehci: Set to host mode on tt capable controllers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/usb/host/ehci-hcd.c')
-rw-r--r--drivers/usb/host/ehci-hcd.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
index 802c548ecb..15f7bfd230 100644
--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
@@ -919,6 +919,13 @@ static int ehci_probe(struct device_d *dev)
host->submit_control_msg = submit_control_msg;
host->submit_bulk_msg = submit_bulk_msg;
+ if (ehci->flags & EHCI_HAS_TT) {
+ /* Set to host mode */
+ reg = ehci_readl(ehci->hcor + USBMODE);
+ reg |= USBMODE_CM_HC;
+ writel(reg, ehci->hcor + USBMODE);
+ }
+
usb_register_host(host);
reg = HC_VERSION(ehci_readl(&ehci->hccr->cr_capbase));