All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felipe Balbi <balbi@ti.com>
To: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: Felipe Balbi <balbi@ti.com>,
	David Cohen <david.a.cohen@linux.intel.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Stephen Boyd <sboyd@codeaurora.org>,
	Baolu Lu <baolu.lu@linux.intel.com>,
	Paul Bolle <pebolle@tiscali.nl>, <linux-usb@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>
Subject: Re: [PATCHv3 10/12] usb: dwc3: add ULPI interface support
Date: Tue, 5 May 2015 10:02:08 -0500	[thread overview]
Message-ID: <20150505150208.GB30688@saruman.tx.rr.com> (raw)
In-Reply-To: <20150504120345.GA31055@kuha.fi.intel.com>

[-- Attachment #1: Type: text/plain, Size: 1741 bytes --]

On Mon, May 04, 2015 at 03:03:45PM +0300, Heikki Krogerus wrote:
> Hi Felipe,
> 
> > > With 1.94a and newer, DWC3_GUSB3PIPECTL(0) and DWC3_GUSB2PHYCFG(0)
> > > keep their ctx over any kind of soft reset. And any configurations
> > > done to them here will take affect the latest when
> > > dwc3_core_soft_reset() is called.
> > 
> > /me goes read Databook again.
> > 
> > You're right. You're using the soft reset bit from DCTL, that only
> > resets the device side, not any global register. There are two details
> > which you don't appear to take care of, however.
> > 
> > According to Table 7-82 on Databook 2.93a (page 725), bit 30 CSFTRST,
> > it's said that "Once this bit is cleared, the software must wait at
> > least 3 PHY clocks before accessing the PHY domain".
> 
> Ok, I'll add a delay for that.
> 
> > Futher down is
> > states that "Once a new clock is selected, the PHY domain must be reset
> > for proper operation".
> 
> All PHYs will be reset once we call dwc3_core_soft_reset() and we do
> not need them to be operational before that, except in case of
> ULPI in order to register the interface. To make sure the ULPI
> interface and PHY are operational we call dwc3_soft_reset() which does
> everything needed for us. When we use DCTL.SoftRst the core will reset
> also the ULPI PHY (PHYSoftRst in DWC3_GUSB2PHYCFG(0) has no effect
> with ULPI).
> 
> So dwc3_phy_setup() configures the PHY interfaces but it does not
> initialize them or the PHYs. dwc3_core_soft_reset() continues to take
> care of that in any case, so there is no reason to duplicate it. I
> think we need to point this out in the description comment of
> dwc3_phy_setup().

sounds good to me :-)

-- 
balbi

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

  reply	other threads:[~2015-05-05 16:08 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-28 13:24 [PATCHv3 00/12] usb: ulpi bus Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 01/11] usb: add bus type for USB ULPI Heikki Krogerus
2015-04-29 20:13   ` Felipe Balbi
2015-04-30 10:37     ` Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 02/11] usb: dwc3: USB2 PHY register access bits Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 03/11] usb: dwc3: ULPI or UTMI+ select Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 04/11] usb: dwc3: store driver data earlier Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 05/11] usb: dwc3: cache hwparams earlier Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 06/11] usb: dwc3: soft reset to it's own function Heikki Krogerus
2015-04-28 17:22   ` Felipe Balbi
2015-04-29  8:16     ` Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 07/11] usb: dwc3: setup phys earlier Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 08/11] usb: dwc3: add hsphy_interface property Heikki Krogerus
2015-04-28 17:13   ` Felipe Balbi
2015-04-29  8:04     ` Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 09/11] usb: dwc3: pci: add quirk for Baytrails Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 10/11] phy: helpers for USB ULPI PHY registering Heikki Krogerus
2015-04-28 13:24 ` [PATCHv3 11/11] phy: add driver for TI TUSB1210 ULPI PHY Heikki Krogerus
2015-04-28 17:17 ` [PATCHv3 00/12] usb: ulpi bus Felipe Balbi
2015-04-29  8:21   ` Heikki Krogerus
2015-04-29  8:30     ` [PATCHv3 08/12] usb: dwc3: add hsphy_interface property Heikki Krogerus
2015-04-29 15:03       ` Felipe Balbi
2015-04-30 10:33         ` Heikki Krogerus
2015-04-29  8:30     ` [PATCHv3 09/12] usb: dwc3: pci: add quirk for Baytrails Heikki Krogerus
2015-04-29  8:30     ` [PATCHv3 10/12] usb: dwc3: add ULPI interface support Heikki Krogerus
2015-04-29 15:04       ` Felipe Balbi
2015-04-30 10:34         ` Heikki Krogerus
2015-04-30 14:54           ` Felipe Balbi
2015-05-04 12:03             ` Heikki Krogerus
2015-05-05 15:02               ` Felipe Balbi [this message]
2015-04-29  8:30     ` [PATCHv3 11/12] phy: helpers for USB ULPI PHY registering Heikki Krogerus
2015-04-29  8:30     ` [PATCHv3 12/12] phy: add driver for TI TUSB1210 ULPI PHY Heikki Krogerus
  -- strict thread matches above, loose matches on Subject: below --
2015-03-19 11:48 [PATCHv2 10/12] usb: dwc3: add ULPI interface support Heikki Krogerus
2015-03-20 12:20 ` [PATCHv3 " Heikki Krogerus

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=20150505150208.GB30688@saruman.tx.rr.com \
    --to=balbi@ti.com \
    --cc=baolu.lu@linux.intel.com \
    --cc=david.a.cohen@linux.intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=heikki.krogerus@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=pebolle@tiscali.nl \
    --cc=sboyd@codeaurora.org \
    /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.