All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kishon Vijay Abraham I <kishon@ti.com>
To: Arokux X <arokux@gmail.com>
Cc: <peter.chen@freescale.com>, Felipe Balbi <balbi@ti.com>,
	Alan Stern <stern@rowland.harvard.edu>,
	Greg KH <gregkh@linuxfoundation.org>, <linux-usb@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Maxime Ripard <maxime.ripard@free-electrons.com>
Subject: Re: When USB PHY framework should be used?
Date: Mon, 21 Oct 2013 18:14:52 +0530	[thread overview]
Message-ID: <526521C4.5030003@ti.com> (raw)
In-Reply-To: <CAPNxggbs6hJtPA+2kqg34D8kV73BdNft2kZdMhUKtsAD=SsCnA@mail.gmail.com>

Hi,

On Monday 21 October 2013 04:49 PM, Arokux X wrote:
> Dear Kishon,
> 
> thank you for the answer, no problem it was late! Your understanding
> is almost correct.
> 
>> From whatever I could understand, you have a USB HOST controller (each HOST
>> controller has an EHCI controller and a companion OHCI controller?). There are
>> separate clocks for each of EHCI and OHCI controller. EHCI and OHCI has
>> separate PHYs. Both these PHYs are fed by the same common clock. And you have a
>> separate reset bits for each of the PHYs.
> 
> EHCI and OHCI have the same PHY. And this PHY has a reset bit. This is
> exactly what bothers me. Because there should be something central to
> both EHCI and OHCI which manages this reset bit, i.e. the bit should
> be cleared if and only if both EHCI and OHCI controllers are unloaded
> (as modules). I have done a nice picture of the hardware here, please
> take a look at it:
> 
> http://linux-sunxi.org/User:Arokux#USB_Host_Hardware
> 
> I've just realized that there is another commo thing for EHCI and OHCI
> - a GPIO which turns on the power to the USB_VBUS. The power should be
> supplied if at least one of the EHCI or OHCI is loaded. This again
> needs some central management.
> 
> So to summarize, I have two things (reset bit and GPIO for the
> USB_VBUS) which are common to EHCI and OHCI and need to be managed
> outside of the EHCI/OHCI bus glue drivers. My exact question is: where
> this management should be done? Are there good examples in the kernel
> already?

Probably you can have a look at drivers/mfd/omap-usb-host.c in mainline kernel.

Thanks
Kishon

  reply	other threads:[~2013-10-21 12:45 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-10 19:21 When USB PHY framework should be used? Arokux X
2013-10-11  1:42 ` Peter Chen
2013-10-11  6:07 ` Kishon Vijay Abraham I
2013-10-11 17:22   ` Arokux X
2013-10-12  1:19     ` Chen Peter-B29397
2013-10-12 10:07     ` Kishon Vijay Abraham I
2013-10-14 18:17       ` Arokux X
2013-10-20 22:23         ` Arokux X
2013-10-21  9:02         ` Kishon Vijay Abraham I
2013-10-21 11:19           ` Arokux X
2013-10-21 12:44             ` Kishon Vijay Abraham I [this message]
2013-10-22 10:50             ` Maxime Ripard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=526521C4.5030003@ti.com \
    --to=kishon@ti.com \
    --cc=arokux@gmail.com \
    --cc=balbi@ti.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=maxime.ripard@free-electrons.com \
    --cc=peter.chen@freescale.com \
    --cc=stern@rowland.harvard.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.