Hi, On Fri, Sep 30, 2011 at 02:45:32PM +0530, Munegowda, Keshava wrote: > On Fri, Sep 30, 2011 at 1:04 PM, Felipe Balbi <balbi@xxxxxx> wrote: > > Hi, > > > > On Fri, Sep 30, 2011 at 01:15:55AM -0600, Paul Walmsley wrote: > >> > The hwmod structure of usb_host_hs and usb_tll are > >> > retrieved and registered with omap device > >> > > >> > Signed-off-by: Keshava Munegowda <keshava_mgowda@xxxxxx> > >> > Reviewed-by: Partha Basak <parthab@xxxxxxxxxxxx> > >> > --- > >> > arch/arm/mach-omap2/usb-host.c | 100 ++++++++++++++-------------------------- > >> > 1 files changed, 34 insertions(+), 66 deletions(-) > >> > > >> > diff --git a/arch/arm/mach-omap2/usb-host.c b/arch/arm/mach-omap2/usb-host.c > >> > index 89ae298..771dc78 100644 > >> > --- a/arch/arm/mach-omap2/usb-host.c > >> > +++ b/arch/arm/mach-omap2/usb-host.c > >> > @@ -28,51 +28,28 @@ > >> > >> > + oh[0] = omap_hwmod_lookup(USBHS_UHH_HWMODNAME); > >> > + if (!oh[0]) { > >> > + pr_err("Could not look up %s\n", USBHS_UHH_HWMODNAME); > >> > + return; > >> > } > >> > > >> > - if (platform_device_register(&usbhs_device) < 0) > >> > - printk(KERN_ERR "USBHS platform_device_register failed\n"); > >> > + oh[1] = omap_hwmod_lookup(USBHS_TLL_HWMODNAME); > >> > + if (!oh[1]) { > >> > + pr_err("Could not look up %s\n", USBHS_TLL_HWMODNAME); > >> > + return; > >> > + } > >> > > >> > -init_end: > >> > - return; > >> > + od = omap_device_build_ss(OMAP_USBHS_DEVICE, bus_id, oh, 2, > >> > + (void *)&usbhs_data, sizeof(usbhs_data), > >> > + omap_uhhtll_latency, > >> > + ARRAY_SIZE(omap_uhhtll_latency), false); > >> > >> Usually there's something wrong with omap_devices that contain > >> multiple hwmods. Is there some reason why there isn't a separate driver > >> for the TLL? Judging by a brief look at drivers/mfd/omap_usb_host.c, the > >> TLL handling looks logically distinct? > > > > Yes, I have the same feeling. To my understanding, USB Host Subsystem on > > OMAP is composed of the Transceiver-less link (TLL) and USB Host (UHH). > > Aparently, they could be handled by separate drivers. > > > > -- > > balbi > > yes, it can be as two separate drivers for uhh and tll; But i don't > think driver can be used effectively. > Now ehci and ohci gets the clocks , config reg and port settings > through usb host which is sufficient. > If you make them as two different drivers; then ehci and ohci has to > interact with both the drivers separately. > which will be an unnecessary complications. I feel not divided this > driver into two Come again, EHCI/OHCI need clocks from UHH and TLL ?? If that's the case, then there's really no easy way to handle this as a device can have only one parent. -- balbi
Attachment:
signature.asc
Description: Digital signature