From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: usb: dwc3: core: Add quirk for enabling AutoRetry feature in the controller From: Rob Herring Message-Id: <20180725200325.GA21007@rob-hp-laptop> Date: Wed, 25 Jul 2018 14:03:25 -0600 To: Anurag Kumar Vulisha Cc: gregkh@linuxfoundation.org, mark.rutland@arm.com, balbi@kernel.org, v.anuragkumar@gmail.com, linux-usb@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org List-ID: T24gU2F0LCBKdWwgMjEsIDIwMTggYXQgMDM6NTg6NDBQTSArMDUzMCwgQW51cmFnIEt1bWFyIFZ1 bGlzaGEgd3JvdGU6Cj4gQnkgZGVmYXVsdCB3aGVuIGNvcmUgc2VlcyBhbnkgdHJhbnNhY3Rpb24g ZXJyb3IoQ1JDIG9yIG92ZXJmbG93KQo+IGl0IHJlcGxpZXMgd2l0aCB0ZXJtaW5hdGluZyByZXRy eSBBQ0sgKFJldHJ5PTEgYW5kIE51bXAgPT0gMCkuCj4gRW5hYmxpbmcgdGhpcyBBdXRvIFJldHJ5 IGZlYXR1cmUgaW4gY29udHJvbGxlciwgb24gc2VlaW5nIGFueQo+IHRyYW5zYWN0aW9uIGVycm9y cyBtYWtlcyB0aGUgY29yZSB0byBzZW5kIGFuIG5vbi10ZXJtaW5hdGluZyBBQ0sKPiB0cmFuc2Fj dGlvbiBwYWNrZXQgKHRoYXQgaXMsIEFDSyBUUCB3aXRoIFJldHJ5PTEgYW5kIE51bXAgIT0gMCku Cj4gRG9pbmcgc28gd2lsbCBnaXZlIGNvbnRyb2xsZXIgYSBjaGFuY2UgdG8gcmVjb3ZlciBmcm9t IHRoZSBlcnJvcgo+IGNvbmRpdGlvbi4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBBbnVyYWcgS3VtYXIg VnVsaXNoYSA8YW51cmFnLmt1bWFyLnZ1bGlzaGFAeGlsaW54LmNvbT4KPiAtLS0KPiAgRG9jdW1l bnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL3VzYi9kd2MzLnR4dCB8ICA1ICsrKysrCj4gIGRy aXZlcnMvdXNiL2R3YzMvY29yZS5jICAgICAgICAgICAgICAgICAgICAgICAgfCAxNiArKysrKysr KysrKysrKysrCj4gIGRyaXZlcnMvdXNiL2R3YzMvY29yZS5oICAgICAgICAgICAgICAgICAgICAg ICAgfCAgNiArKysrKysKPiAgMyBmaWxlcyBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCspCj4gCj4g ZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy91c2IvZHdjMy50 eHQgYi9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvdXNiL2R3YzMudHh0Cj4gaW5k ZXggN2YxM2ViZS4uMmJhMmJjMiAxMDA2NDQKPiAtLS0gYS9Eb2N1bWVudGF0aW9uL2RldmljZXRy ZWUvYmluZGluZ3MvdXNiL2R3YzMudHh0Cj4gKysrIGIvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVl L2JpbmRpbmdzL3VzYi9kd2MzLnR4dAo+IEBAIC05NCw2ICs5NCwxMSBAQCBPcHRpb25hbCBwcm9w ZXJ0aWVzOgo+ICAJCQl0aGlzIGFuZCB0eC10aHItbnVtLXBrdC1wcmQgdG8gYSB2YWxpZCwgbm9u LXplcm8gdmFsdWUKPiAgCQkJMS0xNiAoRFdDX3VzYjMxIHByb2dyYW1taW5nIGd1aWRlIHNlY3Rp b24gMS4yLjMpIHRvCj4gIAkJCWVuYWJsZSBwZXJpb2RpYyBFU1MgVFggdGhyZXNob2xkLgo+ICsg LSBzbnBzLGVuYWJsZV9hdXRvX3JldHJ5OiBTZXQgdG8gZW5hYmxlIEF1dG8gcmV0cnkgRmVhdHVy ZSB0byBtYWtlIHRoZQoKcy9fLy0vCgo+ICsJCQljb250cm9sbGVyIG9wZXJhdGluZyBpbiBIb3N0 IG1vZGUgb24gc2VlaW5nIHRyYW5zYWN0aW9uCj4gKwkJCWVycm9ycyhDUkMgZXJyb3JzIG9yIGlu dGVybmFsIG92ZXJydW4gc2NlbmVyaW9zKSBvbiBJTgo+ICsJCQl0cmFuc2ZlcnMgdG8gcmVwbHkg dG8gdGhlIGRldmljZSB3aXRoIGEgbm9uLXRlcm1pbmF0aW5nCj4gKwkJCXJldHJ5IEFDSyAoaS5l LCBhbiBBQ0sgVFAgd2l0aCBSZXRyeT0xICYgTnVtcCAhPSAwKQoKU2VlbXMgbGlrZSB0aGUgcHJv cGVydHkgaXMgdW5uZWNlc3NhcnkuIFdoZW4gd291bGQgeW91IG5vdCB3YW50IHRoaXMgCnJldHJ5 IGJlaGF2aW9yPyBXaHkgbm90IGp1c3QgZW5hYmxlIHVuY29uZGl0aW9uYWxseSBpbiB0aGUgZHJp dmVyPwoKUm9iCi0tLQpUbyB1bnN1YnNjcmliZSBmcm9tIHRoaXMgbGlzdDogc2VuZCB0aGUgbGlu ZSAidW5zdWJzY3JpYmUgbGludXgtdXNiIiBpbgp0aGUgYm9keSBvZiBhIG1lc3NhZ2UgdG8gbWFq b3Jkb21vQHZnZXIua2VybmVsLm9yZwpNb3JlIG1ham9yZG9tbyBpbmZvIGF0ICBodHRwOi8vdmdl ci5rZXJuZWwub3JnL21ham9yZG9tby1pbmZvLmh0bWwK From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rob Herring Subject: Re: [PATCH] usb: dwc3: core: Add quirk for enabling AutoRetry feature in the controller Date: Wed, 25 Jul 2018 14:03:25 -0600 Message-ID: <20180725200325.GA21007@rob-hp-laptop> References: <1532168920-3269-1-git-send-email-anurag.kumar.vulisha@xilinx.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <1532168920-3269-1-git-send-email-anurag.kumar.vulisha@xilinx.com> Sender: linux-kernel-owner@vger.kernel.org To: Anurag Kumar Vulisha Cc: gregkh@linuxfoundation.org, mark.rutland@arm.com, balbi@kernel.org, v.anuragkumar@gmail.com, linux-usb@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org List-Id: devicetree@vger.kernel.org On Sat, Jul 21, 2018 at 03:58:40PM +0530, Anurag Kumar Vulisha wrote: > By default when core sees any transaction error(CRC or overflow) > it replies with terminating retry ACK (Retry=1 and Nump == 0). > Enabling this Auto Retry feature in controller, on seeing any > transaction errors makes the core to send an non-terminating ACK > transaction packet (that is, ACK TP with Retry=1 and Nump != 0). > Doing so will give controller a chance to recover from the error > condition. > > Signed-off-by: Anurag Kumar Vulisha > --- > Documentation/devicetree/bindings/usb/dwc3.txt | 5 +++++ > drivers/usb/dwc3/core.c | 16 ++++++++++++++++ > drivers/usb/dwc3/core.h | 6 ++++++ > 3 files changed, 27 insertions(+) > > diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt > index 7f13ebe..2ba2bc2 100644 > --- a/Documentation/devicetree/bindings/usb/dwc3.txt > +++ b/Documentation/devicetree/bindings/usb/dwc3.txt > @@ -94,6 +94,11 @@ Optional properties: > this and tx-thr-num-pkt-prd to a valid, non-zero value > 1-16 (DWC_usb31 programming guide section 1.2.3) to > enable periodic ESS TX threshold. > + - snps,enable_auto_retry: Set to enable Auto retry Feature to make the s/_/-/ > + controller operating in Host mode on seeing transaction > + errors(CRC errors or internal overrun scenerios) on IN > + transfers to reply to the device with a non-terminating > + retry ACK (i.e, an ACK TP with Retry=1 & Nump != 0) Seems like the property is unnecessary. When would you not want this retry behavior? Why not just enable unconditionally in the driver? Rob