[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110930091957.GC3458@legolas.emea.dhcp.ti.com>
Date: Fri, 30 Sep 2011 12:19:59 +0300
From: Felipe Balbi <balbi@...com>
To: "Munegowda, Keshava" <keshava_mgowda@...com>
Cc: balbi@...com, Paul Walmsley <paul@...an.com>,
linux-usb@...r.kernel.org, linux-omap@...r.kernel.org,
linux-kernel@...r.kernel.org, khilman@...com, b-cousson@...com,
gadiyar@...com, sameo@...ux.intel.com, parthab@...ia.ti.com,
tony@...mide.com, johnstul@...ibm.com, vishwanath.bs@...com
Subject: Re: [PATCH 3/5 v12] arm: omap: usb: register hwmods of usbhs
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@...com> 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@...com>
> >> > Reviewed-by: Partha Basak <parthab@...ia.ti.com>
> >> > ---
> >> > 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
Download attachment "signature.asc" of type "application/pgp-signature" (491 bytes)
Powered by blists - more mailing lists