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: gadget: Handle 0 xfer length for OUT EP From: Felipe Balbi Message-Id: <87mupd25re.fsf@linux.intel.com> Date: Mon, 10 Dec 2018 09:35:49 +0200 To: Tejas Joglekar , linux-usb@vger.kernel.org Cc: John Youn , thinh.nguyen@synopsys.com List-ID: SGksCgpUZWphcyBKb2dsZWthciA8dGVqYXMuam9nbGVrYXJAc3lub3BzeXMuY29tPiB3cml0ZXM6 Cj4gRm9yIE9VVCBlbmRwb2ludHMsIHplcm8tbGVuZ3RoIHRyYW5zZmVycyByZXF1aXJlIE1heFBh Y2tldFNpemUgYnVmZmVyIGFzCj4gcGVyIHRoZSBEV0NfdXNiMyBwcm9ncmFtbWluZyBndWlkZSAz LjMwYSBzZWN0aW9uIDQuMi4zLjMuCj4KPiBUaGlzIHBhdGNoIGZpeGVzIHRoaXMgYnkgZXhwbGlj aXRseSBjaGVja2luZyB6ZXJvIGxlbmd0aAo+IHRyYW5zZmVyIHRvIGNvcnJlY3RseSBwYWQgdXAg dG8gTWF4UGFja2V0U2l6ZS4KPgo+IFNpZ25lZC1vZmYtYnk6IFRlamFzIEpvZ2xla2FyIDxqb2ds ZWthckBzeW5vcHN5cy5jb20+CgpkbyB5b3UgaGF2ZSB0cmFjZXBvaW50cyBvZiB0aGUgcHJvYmxl bT8KCj4gLS0tCj4gIGRyaXZlcnMvdXNiL2R3YzMvZ2FkZ2V0LmMgfCA1ICsrKy0tCj4gIDEgZmls ZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy91c2IvZHdjMy9nYWRnZXQuYyBiL2RyaXZlcnMvdXNiL2R3YzMvZ2FkZ2V0LmMK PiBpbmRleCBlMmNhZjllLi5mMTA4OWVjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvdXNiL2R3YzMv Z2FkZ2V0LmMKPiArKysgYi9kcml2ZXJzL3VzYi9kd2MzL2dhZGdldC5jCj4gQEAgLTEwNjksNyAr MTA2OSw4IEBAIHN0YXRpYyB2b2lkIGR3YzNfcHJlcGFyZV9vbmVfdHJiX3NnKHN0cnVjdCBkd2Mz X2VwICpkZXAsCj4gIAkJaWYgKHNnX2lzX2xhc3QocykpCj4gIAkJCWNoYWluID0gZmFsc2U7Cj4g IAo+IC0JCWlmIChyZW0gJiYgdXNiX2VuZHBvaW50X2Rpcl9vdXQoZGVwLT5lbmRwb2ludC5kZXNj KSAmJiAhY2hhaW4pIHsKPiArCQlpZiAoKCFsZW5ndGggfHwgcmVtKSAmJiB1c2JfZW5kcG9pbnRf ZGlyX291dChkZXAtPmVuZHBvaW50LmRlc2MpCj4gKwkJICAgICYmICFjaGFpbikgewoKYXJlIHlv dSAxMDAlIGNlcnRhaW4gd2UgaGF2ZSBzY2F0dGVyL2dhdGhlciBmb3IgYSB6bHA/IFRoYXQgZG9l c24ndCBtYWtlCnNlbnNlIHRvIG1lLgoKPiBAQCAtMTExNCw3ICsxMTE1LDcgQEAgc3RhdGljIHZv aWQgZHdjM19wcmVwYXJlX29uZV90cmJfbGluZWFyKHN0cnVjdCBkd2MzX2VwICpkZXAsCj4gIAl1 bnNpZ25lZCBpbnQgbWF4cCA9IHVzYl9lbmRwb2ludF9tYXhwKGRlcC0+ZW5kcG9pbnQuZGVzYyk7 Cj4gIAl1bnNpZ25lZCBpbnQgcmVtID0gbGVuZ3RoICUgbWF4cDsKPiAgCj4gLQlpZiAocmVtICYm IHVzYl9lbmRwb2ludF9kaXJfb3V0KGRlcC0+ZW5kcG9pbnQuZGVzYykpIHsKPiArCWlmICgoIWxl bmd0aCB8fCByZW0pICYmIHVzYl9lbmRwb2ludF9kaXJfb3V0KGRlcC0+ZW5kcG9pbnQuZGVzYykp IHsKCnRoaXMgaXMgYWxyZWFkeSB0YWtlbiBjYXJlIG9mOgoKPiBzdGF0aWMgdm9pZCBkd2MzX3By ZXBhcmVfb25lX3RyYl9saW5lYXIoc3RydWN0IGR3YzNfZXAgKmRlcCwKPiAJCXN0cnVjdCBkd2Mz X3JlcXVlc3QgKnJlcSkKPiB7Cj4gCXVuc2lnbmVkIGludCBsZW5ndGggPSByZXEtPnJlcXVlc3Qu bGVuZ3RoOwo+IAl1bnNpZ25lZCBpbnQgbWF4cCA9IHVzYl9lbmRwb2ludF9tYXhwKGRlcC0+ZW5k cG9pbnQuZGVzYyk7Cj4gCXVuc2lnbmVkIGludCByZW0gPSBsZW5ndGggJSBtYXhwOwo+Cj4gCWlm IChyZW0gJiYgdXNiX2VuZHBvaW50X2Rpcl9vdXQoZGVwLT5lbmRwb2ludC5kZXNjKSkgewoKWy4u Ll0KCj4gCX0gZWxzZSBpZiAocmVxLT5yZXF1ZXN0Lnplcm8gJiYgcmVxLT5yZXF1ZXN0Lmxlbmd0 aCAmJgo+IAkJICAgKElTX0FMSUdORUQocmVxLT5yZXF1ZXN0Lmxlbmd0aCwgbWF4cCkpKSB7Cgp3 aHkgaXNuJ3QgdGhpcyBicmFuY2ggdHJpZ2dlcmluZyBmb3IgeW91PyBQbGVhc2UgY2FwdHVyZSBh bmQgc2hhcmUKdHJhY2Vwb2ludHMgZXhwb3NpbmcgdGhlIHByb2JsZW0KCj4gCQlzdHJ1Y3QgZHdj MwkqZHdjID0gZGVwLT5kd2M7Cj4gCQlzdHJ1Y3QgZHdjM190cmIJKnRyYjsKPgo+IAkJcmVxLT5u ZWVkc19leHRyYV90cmIgPSB0cnVlOwo+Cj4gCQkvKiBwcmVwYXJlIG5vcm1hbCBUUkIgKi8KPiAJ CWR3YzNfcHJlcGFyZV9vbmVfdHJiKGRlcCwgcmVxLCB0cnVlLCAwKTsKPgo+IAkJLyogTm93IHBy ZXBhcmUgb25lIGV4dHJhIFRSQiB0byBoYW5kbGUgWkxQICovCj4gCQl0cmIgPSAmZGVwLT50cmJf cG9vbFtkZXAtPnRyYl9lbnF1ZXVlXTsKPiAJCXJlcS0+bnVtX3RyYnMrKzsKPiAJCV9fZHdjM19w cmVwYXJlX29uZV90cmIoZGVwLCB0cmIsIGR3Yy0+Ym91bmNlX2FkZHIsIDAsCj4gCQkJCWZhbHNl LCAxLCByZXEtPnJlcXVlc3Quc3RyZWFtX2lkLAo+IAkJCQlyZXEtPnJlcXVlc3Quc2hvcnRfbm90 X29rLAo+IAkJCQlyZXEtPnJlcXVlc3Qubm9faW50ZXJydXB0KTsKPiAJfSBlbHNlIHsKPiAJCWR3 YzNfcHJlcGFyZV9vbmVfdHJiKGRlcCwgcmVxLCBmYWxzZSwgMCk7Cj4gCX0KPiB9Cg==