From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Trimarchi Date: Thu, 16 May 2013 17:00:22 +0200 Subject: [U-Boot] ulpi patch in uboot In-Reply-To: <5194EECD.1060101@denx.de> References: <5194AA1B.40201@amarulasolutions.com> <5194B63F.2040205@denx.de> <20130516131926.GA10690@panicking> <5194EECD.1060101@denx.de> Message-ID: <20130516150022.GD10690@panicking> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi On Thu, May 16, 2013 at 04:35:57PM +0200, Stefano Babic wrote: > On 16/05/2013 15:19, Michael Trimarchi wrote: > > > Hi Michael, > > > From 7e99dcbe83e26fff3a0168105eec99003650b744 Mon Sep 17 00:00:00 2001 > > From: Michael Trimarchi > > Date: Thu, 16 May 2013 15:16:17 +0200 > > Subject: [PATCH] omap-ulpi: Fix the omap3/4 access function to the bus > > > > Signed-off-by: Michael Trimarchi > > --- > > drivers/usb/ulpi/omap-ulpi-viewport.c | 16 +++++++--------- > > 1 file changed, 7 insertions(+), 9 deletions(-) > > > > diff --git a/drivers/usb/ulpi/omap-ulpi-viewport.c b/drivers/usb/ulpi/omap-ulpi-viewport.c > > index 3c1ea1a..f849733 100644 > > --- a/drivers/usb/ulpi/omap-ulpi-viewport.c > > +++ b/drivers/usb/ulpi/omap-ulpi-viewport.c > > @@ -22,7 +22,8 @@ > > #include > > #include > > > > -#define OMAP_ULPI_WR_OPSEL (3 << 21) > > +#define OMAP_ULPI_WR_OPSEL (2 << 22) > > +#define OMAP_ULPI_RD_OPSEL (3 << 22) > > #define OMAP_ULPI_ACCESS (1 << 31) > > > > /* > > @@ -33,7 +34,7 @@ static int ulpi_wait(struct ulpi_viewport *ulpi_vp, u32 mask) > > int timeout = CONFIG_USB_ULPI_TIMEOUT; > > > > while (--timeout) { > > - if ((readl(ulpi_vp->viewport_addr) & mask)) > > + if (!(readl(ulpi_vp->viewport_addr) & mask)) > > return 0; > > > > udelay(1); > > @@ -47,18 +48,15 @@ static int ulpi_wait(struct ulpi_viewport *ulpi_vp, u32 mask) > > * > > * returns 0 on success. > > */ > > -static int ulpi_wakeup(struct ulpi_viewport *ulpi_vp) > > +static int ulpi_start(struct ulpi_viewport *ulpi_vp) > > { > > int err; > > > > - if (readl(ulpi_vp->viewport_addr) & OMAP_ULPI_ACCESS) > > - return 0; /* already awake */ > > - > > writel(OMAP_ULPI_ACCESS, ulpi_vp->viewport_addr); > > > > err = ulpi_wait(ulpi_vp, OMAP_ULPI_ACCESS); > > if (err) > > - debug("ULPI wakeup timed out\n"); > > + debug("ULPI start timed out\n"); > > > > return err; > > } > > @@ -70,7 +68,7 @@ static int ulpi_request(struct ulpi_viewport *ulpi_vp, u32 value) > > { > > int err; > > > > - err = ulpi_wakeup(ulpi_vp); > > + err = ulpi_start(ulpi_vp); > > if (err) > > return err; > > > > @@ -95,7 +93,7 @@ u32 ulpi_read(struct ulpi_viewport *ulpi_vp, u8 *reg) > > { > > int err; > > u32 val = ((ulpi_vp->port_num & 0xf) << 24) | > > - OMAP_ULPI_WR_OPSEL | ((u32)reg << 16); > > + OMAP_ULPI_RD_OPSEL | ((u32)reg << 16); > > > > err = ulpi_request(ulpi_vp, val); > > if (err) > > > > Thanks for the patch. Could you please sent it again with a right > subject-id in the e-mail to allow to be included automatically by > patchworks ? Please also put in CC Tom Rini (trini at ti.com, U-Boot > maintainer) and Marek Vasut (marex at denx.de, USB custodian). > > Thanks, > Stefano I have done it better. Give me some time to do a better commit message ;) Michael