summaryrefslogtreecommitdiff
path: root/recipes/linux/linux-omap-2.6.31
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/linux/linux-omap-2.6.31')
-rw-r--r--recipes/linux/linux-omap-2.6.31/beagleboard/ehci.patch35
-rw-r--r--recipes/linux/linux-omap-2.6.31/echi.patch0
-rw-r--r--recipes/linux/linux-omap-2.6.31/ehci-phy-reset.patch34
-rw-r--r--recipes/linux/linux-omap-2.6.31/overo/ehci.patch47
4 files changed, 116 insertions, 0 deletions
diff --git a/recipes/linux/linux-omap-2.6.31/beagleboard/ehci.patch b/recipes/linux/linux-omap-2.6.31/beagleboard/ehci.patch
new file mode 100644
index 0000000000..633b1b2269
--- /dev/null
+++ b/recipes/linux/linux-omap-2.6.31/beagleboard/ehci.patch
@@ -0,0 +1,35 @@
+From 870bb728d41c231941791bffe8783cd88cb7580a Mon Sep 17 00:00:00 2001
+From: Steve Sakoman <steve@sakoman.com>
+Date: Sat, 29 Aug 2009 15:46:30 -0700
+Subject: [PATCH] ARM: OMAP3: Fix EHCI initialization for Beagle
+
+---
+ arch/arm/mach-omap2/board-omap3beagle.c | 5 +++--
+ 1 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
+index 07aee90..65934ea 100644
+--- a/arch/arm/mach-omap2/board-omap3beagle.c
++++ b/arch/arm/mach-omap2/board-omap3beagle.c
+@@ -161,7 +161,7 @@ static int beagle_twl_gpio_setup(struct device *dev,
+
+ /* TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, active low) */
+ gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR");
+- gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1);
++ gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0);
+
+ /* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */
+ gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1;
+@@ -412,7 +412,8 @@ static void __init omap3_beagle_init(void)
+ gpio_direction_output(170, true);
+
+ usb_musb_init();
+- usb_ehci_init(EHCI_HCD_OMAP_MODE_PHY, true, true, 57, 61);
++ usb_ehci_init(EHCI_HCD_OMAP_MODE_PHY, false, true,
++ -EINVAL, 147);
+ omap3beagle_flash_init();
+
+ /* Ensure SDRC pins are mux'd for self-refresh */
+--
+1.6.0.4
+
diff --git a/recipes/linux/linux-omap-2.6.31/echi.patch b/recipes/linux/linux-omap-2.6.31/echi.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/recipes/linux/linux-omap-2.6.31/echi.patch
diff --git a/recipes/linux/linux-omap-2.6.31/ehci-phy-reset.patch b/recipes/linux/linux-omap-2.6.31/ehci-phy-reset.patch
new file mode 100644
index 0000000000..4041c21306
--- /dev/null
+++ b/recipes/linux/linux-omap-2.6.31/ehci-phy-reset.patch
@@ -0,0 +1,34 @@
+phy_reset is not getting updated from platform_data.
+
+Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
+---
+ drivers/usb/host/ehci-omap.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/drivers/usb/host/ehci-omap.c b/drivers/usb/host/ehci-omap.c
+index 0058f03..55e5259 100644
+--- a/drivers/usb/host/ehci-omap.c
++++ b/drivers/usb/host/ehci-omap.c
+@@ -33,7 +33,6 @@
+ * - add suspend/resume
+ * - move workarounds to board-files
+ * - differentiate between ES2.x and ES3.x
+- * - make it enumerate devices
+ */
+
+ #include <linux/platform_device.h>
+@@ -590,6 +589,7 @@ static int ehci_hcd_omap_probe(struct platform_device *pdev)
+
+ platform_set_drvdata(pdev, omap);
+ omap->dev = &pdev->dev;
++ omap->phy_reset = pdata->phy_reset;
+ omap->reset_gpio_port1 = pdata->reset_gpio_port1;
+ omap->reset_gpio_port2 = pdata->reset_gpio_port2;
+ omap->phy_mode = pdata->phy_mode;
+--
+1.6.2.4
+
+--
+To unsubscribe from this list: send the line "unsubscribe linux-omap" in
+the body of a message to majordomo@vger.kernel.org
+More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/recipes/linux/linux-omap-2.6.31/overo/ehci.patch b/recipes/linux/linux-omap-2.6.31/overo/ehci.patch
new file mode 100644
index 0000000000..2fec9d3cc8
--- /dev/null
+++ b/recipes/linux/linux-omap-2.6.31/overo/ehci.patch
@@ -0,0 +1,47 @@
+From 01984da4f7009c118c18fa251b703de74f26ced2 Mon Sep 17 00:00:00 2001
+From: Steve Sakoman <steve@sakoman.com>
+Date: Sun, 16 Aug 2009 14:19:55 -0700
+Subject: [PATCH] ARM: OMAP3: Fix EHCI initialization for Overo
+
+Overo uses port 2, not port 1. Use OVERO_GPIO_USBH_NRESET rather than hard coded value
+
+Note: this alone will not give functional EHCI. Also required is:
+
+[PATCH 4/9] ehci: fix phy_reset init in ehci probe
+from Ajay Kumar Gupta
+---
+ arch/arm/mach-omap2/board-overo.c | 11 ++---------
+ 1 files changed, 2 insertions(+), 9 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/board-overo.c b/arch/arm/mach-omap2/board-overo.c
+index a9d7c2e..a220a54 100644
+--- a/arch/arm/mach-omap2/board-overo.c
++++ b/arch/arm/mach-omap2/board-overo.c
+@@ -394,7 +394,8 @@ static void __init overo_init(void)
+ omap_serial_init(&overo_uart_config);
+ overo_flash_init();
+ usb_musb_init();
+- usb_ehci_init(EHCI_HCD_OMAP_MODE_PHY, false, true, 183, -EINVAL);
++ usb_ehci_init(EHCI_HCD_OMAP_MODE_PHY, false, true,
++ -EINVAL, OVERO_GPIO_USBH_NRESET);
+ overo_ads7846_init();
+ overo_init_smsc911x();
+
+@@ -437,14 +438,6 @@ static void __init overo_init(void)
+ else
+ printk(KERN_ERR "could not obtain gpio for "
+ "OVERO_GPIO_USBH_CPEN\n");
+-
+- if ((gpio_request(OVERO_GPIO_USBH_NRESET,
+- "OVERO_GPIO_USBH_NRESET") == 0) &&
+- (gpio_direction_output(OVERO_GPIO_USBH_NRESET, 1) == 0))
+- gpio_export(OVERO_GPIO_USBH_NRESET, 0);
+- else
+- printk(KERN_ERR "could not obtain gpio for "
+- "OVERO_GPIO_USBH_NRESET\n");
+ }
+
+ static void __init overo_map_io(void)
+--
+1.6.0.4
+