From patchwork Thu Dec 13 01:55:22 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [U-Boot,02/11] usb: ehci: Add 64-bit controller support X-Patchwork-Submitter: Simon Glass X-Patchwork-Id: 205705 X-Patchwork-Delegate: marek.vasut@gmail.com Message-Id: <1355363731-10103-3-git-send-email-sjg@chromium.org> To: U-Boot Mailing List Cc: Vincent Palatin Date: Wed, 12 Dec 2012 17:55:22 -0800 From: Simon Glass List-Id: U-Boot discussion From: Vincent Palatin On EHCI controller with 64-bit address space support, we must initialize properly the high word for the PCI bus master accesses. Signed-off-by: Vincent Palatin Signed-off-by: Simon Glass --- drivers/usb/host/ehci-hcd.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c index 7f98a63..20309ad 100644 --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c @@ -870,6 +870,9 @@ int usb_lowlevel_init(int index, void **controller) if (ehci_hcd_init(index, &ehcic[index].hccr, &ehcic[index].hcor)) return -1; #endif + /* Set the high address word (aka segment) for 64-bit controller */ + if (ehci_readl(&ehcic[index].hccr->cr_hccparams) & 1) + ehci_writel(ehcic[index].hcor->or_ctrldssegment, 0); qh_list = &ehcic[index].qh_list;