Re: [PATCH 3/5 v12] arm: omap: usb: register hwmods of usbhs

From: Felipe Balbi
Date: Fri Sep 30 2011 - 03:35:03 EST


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

Attachment: signature.asc
Description: Digital signature