[U-Boot] [PATCH v2 1/4] ehci-omap: Clean up added ehci-omap.c

Marek Vasut marek.vasut at gmail.com
Wed Jan 11 14:28:34 CET 2012


> On Wed, Jan 11, 2012 at 6:16 PM, Marek Vasut <marek.vasut at gmail.com> wrote:
> >> On Wed, Jan 11, 2012 at 4:22 PM, Marek Vasut <marek.vasut at gmail.com> wrote:
> >> >> Hi Marek,
> >> >> 
> >> >> Thanks for you review.
> >> >> 
> >> >> On Tue, Jan 10, 2012 at 9:37 PM, Marek Vasut <marek.vasut at gmail.com> 
wrote:
> >> >> >> From: "Govindraj.R" <govindraj.raja at ti.com>
> >> >> >> 
> >> >> >> Clean up added ehci-omap.c and make it generic for re-use across
> >> >> >> soc having same ehci ip block. Also pass the modes to be
> >> >> >> configured and configure the ports accordingly. All usb layers
> >> >> >> are not cache aligned till then keep cache off for usb ops as
> >> >> >> ehci will use internally dma for all usb ops.
> >> >> >> 
> >> >> >> * Add a generic common header ehci-omap.h having common ip block
> >> >> >>   data and reg shifts.
> >> >> >> * Rename and modify ehci-omap3 to ehci.h retain only conflicting
> >> >> >>   sysc reg shifts remove others and move to common header file.
> >> >> > 
> >> >> > Don't reimplement the ulpi stuff ... there's already some ulpi
> >> >> > stuff in uboot that needs fixing, so fix it and use it.
> >> >> 
> >> >> I am not implementing any ulpi stuff I am just configuring OMAP on
> >> >> soc usb host controller (ehci). All the configuration stuff
> >> >> is OMAP specific things which are done in ehci-omap.c file
> >> >> 
> >> >> stuffs done are like soft-reset, port mode to be used and putting
> >> >> port in no -idle mode(omap specific pm implementation) etc.
> >> > 
> >> > This stuff:
> >> > 
> >> > +/* ULPI */
> >> > +#define ULPI_SET(a)                                    (a + 1)
> >> > +#define ULPI_CLR(a)                                    (a + 2)
> >> > +#define ULPI_FUNC_CTRL                                 0x04
> >> > +#define ULPI_FUNC_CTRL_RESET                           (1 << 5)
> >> > 
> >> > is just accidentally conforming to ULPI spec?
> >> 
> >> These are for configuring INSNREG05_ULPI reg in EHCI reg map
> >> of omap while configuring in ulpi-phy mode.
> >> 
> >> looking into struct ulpi_regs {..}
> >> then it doesn't map this configuration.
> > 
> > Can you point me to some documentation about this please? It's not that I
> > don't trust you, I'd rather prefer to avoid unnecessary duplication.
> 
> Yes that would be fine.
> 
> You can download the omap4460 public trm from here:
> 
> http://www.ti.com/pdfs/wtbu/OMAP4460_ES.1x_PUBLIC_TRM_vM.zip
> 
> Go to chapter 23.11.6.6.1 EHCI Register Summary
> (page number 5171 and 5186/87)

Sure, but the macro above looks more like 23.11.6.3, doesn't it ? And for that 
purpose, the struct ulpi_regs is fitting ok.

Actually ... can you check the ulpi_read and ulpi_write stuff that's already in 
u-boot and explain why they can not be used with this port?

M

> 
> click INSNREG05_ULPI
> 
> this for configuring in ulpi mode for external ulpi phy.
> reference
> chapter 23.11.4.1 refer to Figure 23-252. HS USB Host Controller
> Architecture (page number 5096)
> 
> >> btw,
> >> IIUC that ulpi_regs struct is for otg transceiver that uses a ulpi phy
> >> chip for communication.
> >> 
> >> > M
> >> 
> >> > btw. somewhere in the patch is one more asterisk at the end of line:
> >> Will check that
> > 
> > It was on the line I pointed out
> 
> okay, got it.
> 
> --
> Thanks,
> Govindraj.R


More information about the U-Boot mailing list