public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Sarah Sharp <sarah.a.sharp@linux.intel.com>
To: Paul Zimmerman <Paul.Zimmerman@synopsys.com>
Cc: Julius Werner <jwerner@chromium.org>,
	LKML <linux-kernel@vger.kernel.org>,
	"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Vincent Palatin <vpalatin@chromium.org>,
	Benson Leung <bleung@chromium.org>, Felipe Balbi <balbi@ti.com>,
	"mathias.nyman@linux.intel.com" <mathias.nyman@linux.intel.com>
Subject: Re: [PATCH] usb: xhci-plat: Enable USB 2.0 hardware LPM support for platform xHCs
Date: Wed, 28 Aug 2013 14:51:42 -0700	[thread overview]
Message-ID: <20130828215142.GJ26483@xanatos> (raw)
In-Reply-To: <A2CA0424C0A6F04399FB9E1CD98E030458DED818@US01WEMBX2.internal.synopsys.com>

On Mon, Aug 26, 2013 at 07:37:56PM +0000, Paul Zimmerman wrote:
> > From: Sarah Sharp [mailto:sarah.a.sharp@linux.intel.com]
> > Sent: Monday, August 26, 2013 12:14 PM
> > 
> > On Thu, Aug 22, 2013 at 05:11:49AM +0000, Paul Zimmerman wrote:
> > > > From: Julius Werner
> > > > Sent: Wednesday, August 21, 2013 9:22 PM
> > > >
> > > > > You need the USB 2.0 spec errata from 2011-11 that describes the changes
> > > > > made for BESL as well.  It's in the USB2-LPM-Errata-final.pdf and
> > > > > USB2_LinkPowerMangement_ECN[final].pdf files in this zip file:
> > > > >
> > > > > http://www.usb.org/developers/docs/usb_20_070113.zip
> > > > >
> > > > > I agree though, it's all a confusing mess for documentation on USB 2.0
> > > > > Link PM.
> > > >
> > > > Thanks, I hadn't found that first one yet. Do you also have a link for
> > > > the updated XHCI specification or a separate erratum document
> > > > describing the PORTHLPMC register referenced in the BESL patches (they
> > > > don't exist on DWC3, but I'm still curious)?
> > >
> > > Just to set the record straight :)
> > >
> > > The PORTHLPMC registers do exist on DWC3, starting with the 1.90a version
> > > of the core or thereabouts. They only supported the HIRD flavor of LPM,
> > > though. Only fairly recently has support for BESL been added, around
> > > version 2.41a or so.
> > 
> > And the 2.41a version that supports BESL properly sets the BLC flag in
> > the USB 2.0 Protocol extended capabilities for all the USB 2.0 ports?
> > Has this functionality been well-tested?
> 
> In 2.41a it is described as an "early adopter" feature in the databook,
> and no mention is made of the BLC flag. So the answer there is "maybe".
> Starting with 2.50a it is a full-fledged feature and the databook does
> describe the BLC flag.

So the 2.41a has BESL support, but may not set the BLC flag.  What
happens if we use the HIRD encoding instead?  Will things break?  It
seems like we would need to disable USB 2.0 LPM on that host all
together, if it expects BESL encoding, but advertises HIRD encoding.

> So it may be safer to say that the feature is present starting with 2.50a.

Is there a way we can tell the difference between a 2.41a xHCI host and
a 2.50a host?  If so, we can add a quirk to disable LPM on the 2.41a
host.

> In 2.51a it has been well-tested in simulation. In actual hardware, it
> has only been briefly tested in an ad-hoc sort of way, since none of the
> standard drivers in the market support the feature yet, as far as we know.
> 
> Once the support is fully working in the Linux driver we can try testing
> it there.

Can you please test Julius' patch on the 2.41a, 2.50a, and 2.51a hosts?
Please test against usb-next, since that includes a fix for the BESL
patches.

I'm not going to merge this unless we know it's not going to break those
earlier host controllers.  Besides, at this point, it's too late to
include this patch in 3.12.  I already got bitten yesterday by trying to
push patches this late, and I'm not doing that again.

Sarah Sharp

  parent reply	other threads:[~2013-08-28 21:51 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-20 23:21 [PATCH] usb: xhci-plat: Enable USB 2.0 hardware LPM support for platform xHCs Julius Werner
2013-08-21 18:40 ` Sarah Sharp
2013-08-21 21:43   ` Julius Werner
2013-08-22  0:45     ` Sarah Sharp
2013-08-22  2:12       ` Greg Kroah-Hartman
2013-08-22  4:22       ` Julius Werner
2013-08-22  5:11         ` Paul Zimmerman
2013-08-26 19:14           ` Sarah Sharp
2013-08-26 19:37             ` Paul Zimmerman
2013-08-26 19:53               ` Paul Zimmerman
2013-08-28 21:51               ` Sarah Sharp [this message]
2013-08-28 22:15                 ` Paul Zimmerman
2013-08-28 23:08                   ` Julius Werner
2013-08-29 17:18                     ` Sarah Sharp
2013-08-29 18:06                       ` Julius Werner
2013-08-29 18:40                         ` Paul Zimmerman
2013-11-06 20:33                           ` Julius Werner
2013-12-02 21:50                             ` Julius Werner
2013-08-29 17:42                   ` Sarah Sharp
2013-08-29 18:11                     ` Paul Zimmerman

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=20130828215142.GJ26483@xanatos \
    --to=sarah.a.sharp@linux.intel.com \
    --cc=Paul.Zimmerman@synopsys.com \
    --cc=balbi@ti.com \
    --cc=bleung@chromium.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jwerner@chromium.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mathias.nyman@linux.intel.com \
    --cc=vpalatin@chromium.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox