Hi Tony,
please queue the following two patches for Merge Window.
The following changes since commit b79540fcbbcf9b379c9197f63c5a883bbe3adfd4:
Linux-omap rebuilt: Merged branches from Paul and Kevin and mux changes (2010-12-22 19:13:33 -0800)
are available in the git repository at:
git://gitorious.org/usb/usb.git for-tony
Felipe Balbi (1):
arm: omap: tusb6010: add name for MUSB IRQ
Srinath (1):
arm: omap: craneboard: Add USB EHCI support
arch/arm/mach-omap2/board-am3517crane.c | 48 +++++++++++++++++++++++++++++++
arch/arm/mach-omap2/usb-tusb6010.c | 1 +
2 files changed, 49 insertions(+), 0 deletions(-)
--
balbi
From: Srinath <redacted>
AM3517/05 Craneboard has one EHCI interface on board using port1.
GPIO35 is used as power enable.
GPIO38 is used as port1 PHY reset.
History:
http://marc.info/?l=linux-omap&w=2&r=1&s=Craneboard%253A%2BAdd%2BUSB%2BEHCI%2Bsupport&q=b
Signed-off-by: Srinath <redacted>
Signed-off-by: Felipe Balbi <redacted>
---
arch/arm/mach-omap2/board-am3517crane.c | 48 +++++++++++++++++++++++++++++++
1 files changed, 48 insertions(+), 0 deletions(-)
diff --git a/arch/arm/mach-omap2/board-am3517crane.c b/arch/arm/mach-omap2/board-am3517crane.c
index 781ed25..71acb5a 100644
--- a/arch/arm/mach-omap2/board-am3517crane.c
+++ b/arch/arm/mach-omap2/board-am3517crane.c
@@ -19,6 +19,7 @@
#include <linux/kernel.h>
#include <linux/init.h>
+#include <linux/gpio.h>
#include <mach/hardware.h>
#include <asm/mach-types.h>
@@ -27,8 +28,14 @@
#include <plat/board.h>
#include <plat/common.h>
+#include <plat/usb.h>
#include "mux.h"
+#include "control.h"
+
+#define GPIO_USB_POWER 35
+#define GPIO_USB_NRESET 38
+
/* Board initialization */
static struct omap_board_config_kernel am3517_crane_config[] __initdata = {@@ -52,10 +59,51 @@ static void __init am3517_crane_init_irq(void)
omap_init_irq();
}
+static struct ehci_hcd_omap_platform_data ehci_pdata __initdata = {
+ .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY,
+ .port_mode[1] = EHCI_HCD_OMAP_MODE_UNKNOWN,
+ .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN,
+
+ .phy_reset = true,
+ .reset_gpio_port[0] = GPIO_USB_NRESET,
+ .reset_gpio_port[1] = -EINVAL,
+ .reset_gpio_port[2] = -EINVAL
+};
+
static void __init am3517_crane_init(void)
{
+ int ret;
+
omap3_mux_init(board_mux, OMAP_PACKAGE_CBB);
omap_serial_init();
+
+ /* Configure GPIO for EHCI port */
+ if (omap_mux_init_gpio(GPIO_USB_NRESET, OMAP_PIN_OUTPUT)) {
+ pr_err("Can not configure mux for GPIO_USB_NRESET %d\n",
+ GPIO_USB_NRESET);
+ return;
+ }
+
+ if (omap_mux_init_gpio(GPIO_USB_POWER, OMAP_PIN_OUTPUT)) {
+ pr_err("Can not configure mux for GPIO_USB_POWER %d\n",
+ GPIO_USB_POWER);
+ return;
+ }
+
+ ret = gpio_request(GPIO_USB_POWER, "usb_ehci_enable");
+ if (ret < 0) {
+ pr_err("Can not request GPIO %d\n", GPIO_USB_POWER);
+ return;
+ }
+
+ ret = gpio_direction_output(GPIO_USB_POWER, 1);
+ if (ret < 0) {
+ gpio_free(GPIO_USB_POWER);
+ pr_err("Unable to initialize EHCI power\n");
+ return;
+ }
+
+ usb_ehci_init(&ehci_pdata);
}
MACHINE_START(CRANEBOARD, "AM3517/05 CRANEBOARD")--
1.7.3.4.598.g85356
commit fcf173e4511193b1efeccb0f22a8c641b464353b
(add names for IRQs in structure resource)
forgot to take care of tusb6010 making it
fail to probe due to a missing resource.
Fix it.
Signed-off-by: Felipe Balbi <redacted>
---
arch/arm/mach-omap2/usb-tusb6010.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/arch/arm/mach-omap2/usb-tusb6010.c b/arch/arm/mach-omap2/usb-tusb6010.c
index 1e998ea..30f112b 100644
--- a/arch/arm/mach-omap2/usb-tusb6010.c
+++ b/arch/arm/mach-omap2/usb-tusb6010.c
@@ -216,6 +216,7 @@ static struct resource tusb_resources[] = {
.flags = IORESOURCE_MEM,
},
{ /* IRQ */
+ .name = "mc",
.flags = IORESOURCE_IRQ,
},
};--
1.7.3.4.598.g85356
* Felipe Balbi [off-list ref] [101223 00:47]:
Hi Tony,
please queue the following two patches for Merge Window.
The following changes since commit b79540fcbbcf9b379c9197f63c5a883bbe3adfd4:
Linux-omap rebuilt: Merged branches from Paul and Kevin and mux changes (2010-12-22 19:13:33 -0800)
This can't be pulled as it would pull in tons of non-mainline
commits from the linux-omap master branch.
Everybody, all the pullable branches must be based on something
in the mainline kernel, like a recent -rc tag. If that won't work,
then some commit needs to be agreed on separately that will go
to mainline, like the omap-for-linus branch.
Further, please wait few days before sending the pull request
in case somebody wants to ack your patches. Sending a pull request
with the patches to be reviewed is kind of pointless.. Sure in this
case these are pretty trivial patches, but still.
Anyways, I'll apply these into a temporary branch and will
merge into omap-for-linus within next few days assuming no
problems.
Regards,
Tony
Hi,
On Thu, Dec 23, 2010 at 12:39:20PM -0800, Tony Lindgren wrote:
* Felipe Balbi [off-list ref] [101223 00:47]:
quoted
Hi Tony,
please queue the following two patches for Merge Window.
The following changes since commit b79540fcbbcf9b379c9197f63c5a883bbe3adfd4:
Linux-omap rebuilt: Merged branches from Paul and Kevin and mux changes (2010-12-22 19:13:33 -0800)
This can't be pulled as it would pull in tons of non-mainline
commits from the linux-omap master branch.
heh, my bad. Craneboard wasn't in mainline then I rebased on top of your
tree.
Everybody, all the pullable branches must be based on something
in the mainline kernel, like a recent -rc tag. If that won't work,
then some commit needs to be agreed on separately that will go
to mainline, like the omap-for-linus branch.
Makes sense.
Further, please wait few days before sending the pull request
in case somebody wants to ack your patches. Sending a pull request
with the patches to be reviewed is kind of pointless.. Sure in this
the patches were actually for reference, much like Greg does with the
USB patches.
case these are pretty trivial patches, but still.
patch 1 was pending on l-o for weeks, only patch 2 is new.
Anyways, I'll apply these into a temporary branch and will
merge into omap-for-linus within next few days assuming no
problems.
good, thanks.
--
balbi