Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756842Ab3H2Sks (ORCPT ); Thu, 29 Aug 2013 14:40:48 -0400 Received: from kiruna.synopsys.com ([198.182.44.80]:54082 "EHLO kiruna.synopsys.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756350Ab3H2Skq convert rfc822-to-8bit (ORCPT ); Thu, 29 Aug 2013 14:40:46 -0400 From: Paul Zimmerman To: Julius Werner , Sarah Sharp CC: LKML , "linux-usb@vger.kernel.org" , Greg Kroah-Hartman , Vincent Palatin , Benson Leung , Felipe Balbi , "mathias.nyman@linux.intel.com" , Josh Triplett Subject: RE: [PATCH] usb: xhci-plat: Enable USB 2.0 hardware LPM support for platform xHCs Thread-Topic: [PATCH] usb: xhci-plat: Enable USB 2.0 hardware LPM support for platform xHCs Thread-Index: AQHOnfwYI9Np33Plqkq7vUNbfD4u75mgdUEAgAAzMICAADKpAIAAPKeA//+VVhCAB60tgP//i2hQgAPFRAD//4sloAARR2QAACYXUgAAAangAAAOb5Ag Date: Thu, 29 Aug 2013 18:40:44 +0000 Message-ID: References: <20130821184042.GC3577@xanatos> <20130822004514.GB19747@xanatos> <20130826191411.GG5112@xanatos> <20130828215142.GJ26483@xanatos> <20130829171852.GB5538@xanatos> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.9.64.240] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 8BIT MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2060 Lines: 44 > From: jwerner@google.com [mailto:jwerner@google.com] On Behalf Of Julius Werner > Sent: Thursday, August 29, 2013 11:07 AM > > > If you take a look at Table > > 13: BESL/HIRD Encoding from the xHCI spec version including errata to > > 08/14/2012 > > Could you please provide a link to that errata? I still cannot find > it... but from your explanation, that design decision sounds pretty > horrible. Why didn't they just choose not to set old HLC flag in BESL > controllers? Seems like the only purpose it provides there is to make > old drivers break. > > Anyway, looks like we are stuck with it now, and need to deal with > those mislabeled DWC3 versions. I agree with you that we should > blacklist instead of whitelist, but I don't think the device tree is > the best place to put that... we would have to figure out the exact > DWC3 version for every processor/SoC dtsi file to determine if they > are affected, and remember to keep that up to date as we added more. > > I would instead propose to check for the revision register directly in > the DWC3 stack. I think I could add a little check to dwc3_host_init() > and hack the quirk bit into the newly created XHCI controller instance > if required. However, I only have an old (unaffected) 1.85 controller > for testing, so I would need Synopsys to provide me with the exact > revision numbers affected (as read from the register) and to test the > change for us. OK, I did a little more digging, and it turns out the 2.41a version _does_ set bit 20 in the protocol defined field if BESL support is enabled. It wasn't mentioned in the "registers" section of the databook, but there is a note to that effect in a different section. So it looks like we don't need to worry about this for the DWC3 controllers, anyway. Sorry for the noise. -- Paul -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/