* [Patch v3] AM35xx: Craneboard: Add USB EHCI support [not found] <[PATCH] Craneboard: Add USB EHCI Support> @ 2010-12-01 16:58 ` srinath at mistralsolutions.com 2010-12-02 6:25 ` G, Manjunath Kondaiah 0 siblings, 1 reply; 3+ messages in thread From: srinath at mistralsolutions.com @ 2010-12-01 16:58 UTC (permalink / raw) To: linux-arm-kernel From: Srinath <srinath@mistralsolutions.com> 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%3A+Add+USB+EHCI+support&q=t Signed-off-by: Srinath <srinath@mistralsolutions.com> --- arch/arm/mach-omap2/board-am3517crane.c | 40 +++++++++++++++++++++++++++++++ 1 files changed, 40 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-omap2/board-am3517crane.c b/arch/arm/mach-omap2/board-am3517crane.c index 13ead33..6fd5dfe 100644 --- a/arch/arm/mach-omap2/board-am3517crane.c +++ b/arch/arm/mach-omap2/board-am3517crane.c @@ -28,8 +28,13 @@ #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 = { @@ -53,10 +58,45 @@ static void __init am3517_crane_init_irq(void) omap_gpio_init(); } +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 */ + omap_mux_init_gpio(GPIO_USB_POWER, OMAP_PIN_OUTPUT); + + ret = gpio_request(GPIO_USB_POWER, "usb_ehci_enable"); + if (ret < 0) { + pr_err("Cannot request GPIO %d\n", GPIO_USB_POWER); + return; + } + + ret = gpio_direction_output(GPIO_USB_POWER, 1); + if (ret < 0) + goto err; + + omap_mux_init_gpio(GPIO_USB_NRESET, OMAP_PIN_OUTPUT); + usb_ehci_init(&ehci_pdata); + return; + +err: + gpio_free(GPIO_USB_POWER); + pr_err("Unable to initialize EHCI power\n"); + return; } MACHINE_START(CRANEBOARD, "AM3517/05 CRANEBOARD") -- 1.7.1.226.g770c5 ^ permalink raw reply related [flat|nested] 3+ messages in thread
* [Patch v3] AM35xx: Craneboard: Add USB EHCI support 2010-12-01 16:58 ` [Patch v3] AM35xx: Craneboard: Add USB EHCI support srinath at mistralsolutions.com @ 2010-12-02 6:25 ` G, Manjunath Kondaiah 2010-12-02 7:21 ` Srinath R 0 siblings, 1 reply; 3+ messages in thread From: G, Manjunath Kondaiah @ 2010-12-02 6:25 UTC (permalink / raw) To: linux-arm-kernel * srinath at mistralsolutions.com <srinath@mistralsolutions.com> [2010-12-01 22:28:50 +0530]: > From: Srinath <srinath@mistralsolutions.com> > > 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%3A+Add+USB+EHCI+support&q=t > > Signed-off-by: Srinath <srinath@mistralsolutions.com> > --- > arch/arm/mach-omap2/board-am3517crane.c | 40 +++++++++++++++++++++++++++++++ > 1 files changed, 40 insertions(+), 0 deletions(-) > > diff --git a/arch/arm/mach-omap2/board-am3517crane.c b/arch/arm/mach-omap2/board-am3517crane.c > index 13ead33..6fd5dfe 100644 > --- a/arch/arm/mach-omap2/board-am3517crane.c > +++ b/arch/arm/mach-omap2/board-am3517crane.c > @@ -28,8 +28,13 @@ > [...] > 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 */ > + omap_mux_init_gpio(GPIO_USB_POWER, OMAP_PIN_OUTPUT); This is non void function. You can consider return value for further processing. > + > + ret = gpio_request(GPIO_USB_POWER, "usb_ehci_enable"); > + if (ret < 0) { > + pr_err("Cannot request GPIO %d\n", GPIO_USB_POWER); > + return; > + } > + > + ret = gpio_direction_output(GPIO_USB_POWER, 1); > + if (ret < 0) > + goto err; > + > + omap_mux_init_gpio(GPIO_USB_NRESET, OMAP_PIN_OUTPUT); -Ditto- Also, why there is no gpio_request for "GPIO_USB_NRESET" -Manjunath [...] ^ permalink raw reply [flat|nested] 3+ messages in thread
* [Patch v3] AM35xx: Craneboard: Add USB EHCI support 2010-12-02 6:25 ` G, Manjunath Kondaiah @ 2010-12-02 7:21 ` Srinath R 0 siblings, 0 replies; 3+ messages in thread From: Srinath R @ 2010-12-02 7:21 UTC (permalink / raw) To: linux-arm-kernel Hi Manjunath, Thanks for the review, Please find my response inline. With Regards Srinath -----Original Message----- From: G, Manjunath Kondaiah [mailto:manjugk at ti.com] Sent: Thursday, December 02, 2010 11:56 AM To: srinath at mistralsolutions.com Cc: linux-omap at vger.kernel.org; jdk at ti.com; tony at atomide.com; linux-kernel at vger.kernel.org; linux at arm.linux.org.uk; linux-arm-kernel at lists.infradead.org; khilman at deeprootsystems.com; nm at ti.com; nagendra at mistralsolutions.com; umeshk at mistralsolutions.com Subject: Re: [Patch v3] AM35xx: Craneboard: Add USB EHCI support * srinath at mistralsolutions.com <srinath@mistralsolutions.com> [2010-12-01 22:28:50 +0530]: > From: Srinath <srinath@mistralsolutions.com> > > 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%3A+Add+USB+EHCI+support& q=t > > Signed-off-by: Srinath <srinath@mistralsolutions.com> > --- > arch/arm/mach-omap2/board-am3517crane.c | 40 +++++++++++++++++++++++++++++++ > 1 files changed, 40 insertions(+), 0 deletions(-) > > diff --git a/arch/arm/mach-omap2/board-am3517crane.c b/arch/arm/mach-omap2/board-am3517crane.c > index 13ead33..6fd5dfe 100644 > --- a/arch/arm/mach-omap2/board-am3517crane.c > +++ b/arch/arm/mach-omap2/board-am3517crane.c > @@ -28,8 +28,13 @@ > [...] > 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 */ > + omap_mux_init_gpio(GPIO_USB_POWER, OMAP_PIN_OUTPUT); This is non void function. You can consider return value for further processing. <Srinath> Sure, I will put check and resend patch > + > + ret = gpio_request(GPIO_USB_POWER, "usb_ehci_enable"); > + if (ret < 0) { > + pr_err("Cannot request GPIO %d\n", GPIO_USB_POWER); > + return; > + } > + > + ret = gpio_direction_output(GPIO_USB_POWER, 1); > + if (ret < 0) > + goto err; > + > + omap_mux_init_gpio(GPIO_USB_NRESET, OMAP_PIN_OUTPUT); -Ditto- <Srinath> Sure, I will put check and resend patch Also, why there is no gpio_request for "GPIO_USB_NRESET" <Srinath> This is taken care by USB driver in drivers/usb/host/ehci-omap.c -Manjunath [...] ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2010-12-02 7:21 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <[PATCH] Craneboard: Add USB EHCI Support>
2010-12-01 16:58 ` [Patch v3] AM35xx: Craneboard: Add USB EHCI support srinath at mistralsolutions.com
2010-12-02 6:25 ` G, Manjunath Kondaiah
2010-12-02 7:21 ` Srinath R
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).