use broken-out patches for the coldfire to make it easier to follow differences again...
[openwrt/openwrt.git] / target / linux / coldfire / patches / 021-m5445x_usb_premerge.patch
diff --git a/target/linux/coldfire/patches/021-m5445x_usb_premerge.patch b/target/linux/coldfire/patches/021-m5445x_usb_premerge.patch
new file mode 100644 (file)
index 0000000..4650aae
--- /dev/null
@@ -0,0 +1,45 @@
+From 3d7f85e904cf9dab191eeab9933ecac1e90d06e4 Mon Sep 17 00:00:00 2001
+From: Bruce Schmid <duck@freescale.com>
+Date: Thu, 29 Nov 2007 16:30:47 -0700
+Subject: [PATCH] USB pre-merge
+
+LTIBName: m5445x-usb-premerge
+Signed-off-by: Duck <duck@freescale.com>
+---
+ drivers/usb/host/ehci-arc.c |   18 +++++++++++++++++-
+ 1 files changed, 17 insertions(+), 1 deletions(-)
+
+--- a/drivers/usb/host/ehci-arc.c
++++ b/drivers/usb/host/ehci-arc.c
+@@ -373,14 +373,30 @@ static int ehci_fsl_drv_resume(struct pl
+       pr_debug("%s pdev=0x%p  pdata=0x%p  ehci=0x%p  hcd=0x%p\n",
+                __FUNCTION__, pdev, pdata, ehci, hcd);
+-      pr_debug("%s ehci->regs=0x%p  hcd->regs=0x%p",
++      pr_debug("%s ehci->regs=0x%p  hcd->regs=0x%p\n",
+                __FUNCTION__, ehci->regs, hcd->regs);
+       memcpy(ehci->regs, (void *)&usb_ehci_regs, sizeof(struct ehci_regs));
++
++#if 0 // DDD test
+       ehci_writel(ehci, usb_ehci_portsc, &ehci->regs->port_status[0]);
++      printk("set portsc %08x  %08x\n", usb_ehci_portsc,
++              ehci_readl(ehci,  &ehci->regs->port_status[0]));
++      printk("set usbmode %08x\n", 
++              ehci_readl(ehci,  &ehci->regs + FSL_SOC_USB_USBMODE));
+       tmp = USBMODE_CM_HOST | (pdata->es ? USBMODE_ES : 0);
+       ehci_writel(ehci, tmp, hcd->regs + FSL_SOC_USB_USBMODE);
++#else
++      tmp = USBMODE_CM_HOST | (pdata->es ? USBMODE_ES : 0);
++      ehci_writel(ehci, tmp, hcd->regs + FSL_SOC_USB_USBMODE);
++      printk("tmp %08x  set usbmode %08x\n", tmp,
++              ehci_readl(ehci,  hcd->regs + FSL_SOC_USB_USBMODE));
++
++      ehci_writel(ehci, usb_ehci_portsc, &ehci->regs->port_status[0]);
++      printk("set portsc %08x  %08x\n", usb_ehci_portsc,
++              ehci_readl(ehci,  &ehci->regs->port_status[0]));
++#endif
+       set_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags);
+       hcd->state = HC_STATE_RUNNING;