]> git.sur5r.net Git - u-boot/blobdiff - drivers/usb/host/ehci-uniphier.c
ARM: UniPhier: move uniphier_ehci_reset() function
[u-boot] / drivers / usb / host / ehci-uniphier.c
index 68959efb20eb24f51a9d2dd92953ff3d478477b1..b5ec2969188bb5f39f0887e5d4854391f3d7d8d9 100644 (file)
@@ -7,8 +7,9 @@
 
 #include <common.h>
 #include <linux/err.h>
+#include <asm/io.h>
 #include <usb.h>
-#include <mach/ehci-uniphier.h>
+#include <mach/mio-regs.h>
 #include <fdtdec.h>
 #include "ehci.h"
 
@@ -35,6 +36,18 @@ static int get_uniphier_ehci_base(int index, struct ehci_hccr **base)
        return -ENODEV; /* not found */
 }
 
+static void uniphier_ehci_reset(int index, int on)
+{
+       u32 tmp;
+
+       tmp = readl(MIO_USB_RSTCTRL(index));
+       if (on)
+               tmp &= ~MIO_USB_RSTCTRL_XRST;
+       else
+               tmp |= MIO_USB_RSTCTRL_XRST;
+       writel(tmp, MIO_USB_RSTCTRL(index));
+}
+
 int ehci_hcd_init(int index, enum usb_init_type init, struct ehci_hccr **hccr,
                  struct ehci_hcor **hcor)
 {