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: [2/3] usb: dwc3: gadget: Don't skip updating remaining data From: Felipe Balbi Message-Id: Date: Wed, 1 Aug 2018 08:36:10 +0200 To: Thinh Nguyen Cc: "linux-usb@vger.kernel.org" , John Youn , Felipe Balbi List-ID: SGksCgpGaXJzdCBvZiBhbGwsIG5vdCByZWNlaXZpbmcgeW91ciBtYWlscyB0aHJvdWdoIHRoZSBt YWlsaW5nIGxpc3QuIENhbiB5b3UKY2hlY2sgdGhhdCB5b3UncmUgbm90CmJlaW5nIGJsb2NrZWQg Zm9yIHNvbWUgcmVhc29uPyBZb3UgbWF5IHdhbm5hIHNlbmQgdHJhY2UgZGF0YSBjb21wcmVzc2Vk CndpdGggZ3ppcCBvciB4ei4KCk9uIFdlZCwgQXVnIDEsIDIwMTggYXQgMjoyNyBBTSBUaGluaCBO Z3V5ZW4gPFRoaW5oLk5ndXllbkBzeW5vcHN5cy5jb20+Cndyb3RlOgoKPiBPbiA3LzMwLzIwMTgg MTE6NTggUE0sIEZlbGlwZSBCYWxiaSB3cm90ZToKPiA+IFRoaW5oIE5ndXllbiA8VGhpbmguTmd1 eWVuQHN5bm9wc3lzLmNvbT4gd3JpdGVzOgo+ID4+IEhpIEZlbGlwZSwKPiA+Pgo+ID4+IE9uIDcv MjkvMjAxOCAxMTowOCBQTSwgRmVsaXBlIEJhbGJpIHdyb3RlOgo+ID4+PiBUaGluaCBOZ3V5ZW4g PFRoaW5oLk5ndXllbkBzeW5vcHN5cy5jb20+IHdyaXRlczoKPiA+Pj4+IERXQzMgbXVzdCBjaGVj ayBmb3IgdGhlIEJVRlNJWiBhbmQgdXBkYXRlIHRoZSByZXEtPnJlbWFpbmluZwo+ID4+Pj4gcmVn YXJkbGVzcyBvZiB0cmFuc2ZlciBhbGlnbm1lbnQuIFJldHVybmluZyBlYXJseSBmcm9tIHRyYW5z ZmVyIE9VVAo+ID4+Pj4gdW5hbGlnbm1lbnQgd2lsbCBza2lwIHVwZGF0aW5nIHRoZSByZXEtPnJl bWFpbmluZy4KPiA+Pj4+Cj4gPj4+PiBGaXhlczogYzYyNjdhNTE2MzliICgidXNiOiBkd2MzOiBn YWRnZXQ6IGFsaWduIHRyYW5zZmVycyB0bwo+IHdNYXhQYWNrZXRTaXplIikKPiA+Pj4+IFNpZ25l ZC1vZmYtYnk6IFRoaW5oIE5ndXllbiA8dGhpbmhuQHN5bm9wc3lzLmNvbT4KPiA+Pj4+IC0tLQo+ ID4+Pj4gIGRyaXZlcnMvdXNiL2R3YzMvZ2FkZ2V0LmMgfCA2ICsrKy0tLQo+ID4+Pj4gIDEgZmls ZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCj4gPj4+Pgo+ID4+Pj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvdXNiL2R3YzMvZ2FkZ2V0LmMgYi9kcml2ZXJzL3VzYi9kd2Mz L2dhZGdldC5jCj4gPj4+PiBpbmRleCAwMzJlYTdkNzA5YmEuLmE1YjgzODdhMzdiYSAxMDA2NDQK PiA+Pj4+IC0tLSBhL2RyaXZlcnMvdXNiL2R3YzMvZ2FkZ2V0LmMKPiA+Pj4+ICsrKyBiL2RyaXZl cnMvdXNiL2R3YzMvZ2FkZ2V0LmMKPiA+Pj4+IEBAIC0yMjQ2LDYgKzIyNDYsOSBAQCBzdGF0aWMg aW50Cj4gZHdjM19nYWRnZXRfZXBfcmVjbGFpbV9jb21wbGV0ZWRfdHJiKHN0cnVjdCBkd2MzX2Vw ICpkZXAsCj4gPj4+PiAgICBpZiAoY2hhaW4gJiYgKHRyYi0+Y3RybCAmIERXQzNfVFJCX0NUUkxf SFdPKSkKPiA+Pj4+ICAgICAgICAgICAgdHJiLT5jdHJsICY9IH5EV0MzX1RSQl9DVFJMX0hXTzsK PiA+Pj4+Cj4gPj4+PiArICBjb3VudCA9IHRyYi0+c2l6ZSAmIERXQzNfVFJCX1NJWkVfTUFTSzsK PiA+Pj4+ICsgIHJlcS0+cmVtYWluaW5nICs9IGNvdW50Owo+ID4+Pj4gKwo+ID4+Pj4gICAgLyoK PiA+Pj4+ICAgICAqIElmIHdlJ3JlIGRlYWxpbmcgd2l0aCB1bmFsaWduZWQgc2l6ZSBPVVQgdHJh bnNmZXIsIHdlIHdpbGwgYmUKPiBsZWZ0Cj4gPj4+PiAgICAgKiB3aXRoIG9uZSBUUkIgcGVuZGlu ZyBpbiB0aGUgcmluZy4gV2UgbmVlZCB0byBtYW51YWxseSBjbGVhciBIV08KPiBiaXQKPiA+Pj4+ IEBAIC0yMjU2LDkgKzIyNTksNiBAQCBzdGF0aWMgaW50Cj4gZHdjM19nYWRnZXRfZXBfcmVjbGFp bV9jb21wbGV0ZWRfdHJiKHN0cnVjdCBkd2MzX2VwICpkZXAsCj4gPj4+PiAgICAgICAgICAgIHJl dHVybiAxOwo+ID4+Pj4gICAgfQo+ID4+Pj4KPiA+Pj4+IC0gIGNvdW50ID0gdHJiLT5zaXplICYg RFdDM19UUkJfU0laRV9NQVNLOwo+ID4+Pj4gLSAgcmVxLT5yZW1haW5pbmcgKz0gY291bnQ7Cj4g Pj4+PiAtCj4gPj4+IHRoaXMgc2hvdWxkbid0IGJlIG5lY2Vzc2FyeSwgYWN0dWFsbHkuIFRoZSBy ZW1haW5pbmcgVFJCIHdoaWNoIHdhcwo+IGFkZGVkCj4gPj4+IHRvIGZpeCBhbGlnbm1lbnQgaXNz dWVzLCBpcyBzaW1wbHkgYmVjYXVzZSBEV0MzIGRvZXNuJ3QgbGlrZSBPVVQKPiA+Pj4gdHJhbnNm ZXJzIHdob3NlIHNpemUgYXJlIG5vdCBhbGlnbmVkIHRvIHdNYXhQYWNrZXRTaXplLiBXZSAqa25v dyogd2UKPiA+Pj4gaGF2ZSBlLmcuIDUxMSBieXRlcyB0byByZWNlaXZlIGZyb20gaG9zdCwgYnV0 IGR3YzMgd2FudHMgbWUgdG8gd3JpdGUKPiA+Pj4gMTAyNCBieXRlcyBvbiB0aGUgVFJCIChmb3Ig c3VwZXJzcGVlZCksIHNvIEkgbmVlZCB0byBhZGQgdGhpcyBjaGFpbmVkCj4gPj4+IFRSQiBmb3Ig dGhlIHJlbWFpbmluZyA1MTMgYnl0ZXMuCj4gPj4+Cj4gPj4+IEkgZG9uJ3QgZXhwZWN0IGhvc3Qg dG8gc2VuZCB1cyBtb3JlIHRoYW4gNTExIGJ5dGVzLCBpZiBpdCBkb2VzLCB0aGUKPiBob3N0Cj4g Pj4+IGlzIGZhdWx0eSBhbmQgSSBkb24ndCB3YW50IHRvIG9wZXJhdGUgb24gdGhvc2UgYnl0ZXMg YW55d2F5Lgo+ID4+Pgo+ID4+IFJpZ2h0LiBCdXQgdGhhdCdzIG5vdCB0aGUgaXNzdWUgaGVyZS4g SSByZWFsaXplZCB0aGF0IEkgZGlkIG5vdCBkZXNjcmliZQo+ID4+IHRoZSBpc3N1ZSBmdWxseS4u Lgo+ID4+Cj4gPj4gVGhlIGlzc3VlIGhlcmUgaXMgdGhlIHJlcG9ydGluZyBvZiB0aGUgYWN0dWFs IG51bWJlciBvZiBieXRlcwo+ID4+IHRyYW5zZmVycmVkLiBGb3IgaXNvYyBPVVQgdHJhbnNmZXJz LCB0aGUgbGFzdCBUUkIgb2YgdGhlIEJ1ZmZlcgo+ID4+IERlc2NyaXB0b3Igd2lsbCBiZSByZXRp cmVkIHdpdGggSFdPID0gMCAoZHdjX3VzYjMgYW5kIGR3Y191c2IzMQo+ID4+IHByb2dyYW1taW5n IGd1aWRlIDQuMy43KS4gU28sIHRoZSBjaGVjayBmb3IgdW5hbGlnbmVkICYmIEhXTyB3aWxsIGJl Cj4gPj4gZmFsc2UgYW5kIHdpbGwgbm90IHJldHVybiBlYXJseS4gQXMgYSByZXN1bHQsIHJlcS0+ cmVtYWluaW5nIHdpbGwgc3RpbGwKPiA+PiBiZSB1cGRhdGVkIHdpdGggdGhlIEJVRlNJWiBjb3Vu dCwgYW5kIHRoZSByZW1haW5pbmcgd2lsbCBiZSA1MTMrIGluIHlvdXIKPiA+PiBleGFtcGxlLiBU aGUgJ2FjdHVhbCcgYnl0ZXMgd3JpdHRlbiBjYWxjdWxhdGlvbiB3aWxsIGJlIHdyb25nIChlLmcg NTExIC0KPiA+PiA1MTMgPSAtMikuCj4gPj4KPiA+PiBXZSBjYW4ndCByZWx5IG9uIHRoZSBjdXJy ZW50IGNoZWNrIHRvIGRldGVybWluZSB3aGV0aGVyIGl0J3MgdGhlIGxhc3QKPiA+PiBUUkIuIE15 IGN1cnJlbnQgc29sdXRpb24gaXMgdG8gdXBkYXRlIHJlcS0+cmVtYWluaW5nIGZvciBhbGwgVFJC Cj4gPj4gY29tcGxldGlvbnMuIEhvd2V2ZXIsIHdlIGhhdmUgdG8gYWxzbyB1cGRhdGUgdGhlICdh Y3R1YWwnIGJ5dGVzCj4gPj4gY2FsY3VsYXRpb24gZm9yIE9VVCB0cmFuc2ZlcnMuCj4gPiBJIHRo aW5rIHRoZSBidWcgaGVyZSBpcyBhbm90aGVyIG9uZS4gTG9vayBhdCB0aGUgVFJCIHR5cGVzOgo+ ID4KPiA+ICAgICAgaXJxLzE2LWR3YzMtMjQ2MyAgWzAwM10gZC4uLiAgMzU4OS45MzM0Nzg6IGR3 YzNfY29tcGxldGVfdHJiOgo+IGVwMW91dDogdHJiIDAwMDAwMDAwN2QzZmJjMGQgYnVmIDAwMDAw MDAwYjhlZDM4MDAgc2l6ZSAwIGN0cmwgMmU0NjQ0NmMKPiAoaGxDUzpTYzppc29jLWZpcnN0KQoK PiAgICAgIGlycS8xNi1kd2MzLTI0NjMgIFswMDNdIGQuLi4gIDM1ODkuOTMzNDkyOiBkd2MzX2Nv bXBsZXRlX3RyYjoKPiBlcDFvdXQ6IHRyYiAwMDAwMDAwMGQxZmNiMGM0IGJ1ZiAwMDAwMDAwMDM3 ODdlMDAwIHNpemUgMTAyMyBjdHJsIDJlNDY0YzY4Cj4gKGhsY1M6U0M6aXNvYy1maXJzdCkKCj4K PiA+IFNob3VsZG4ndCB0aGUgb25lIGJlIG9mIHR5cGUgSVNPQyBpbnN0ZWFkIG9mIElTT0NfRklS U1Q/IENhbiB5b3UgdGVzdAo+ID4gcGF0Y2ggYmVsb3cgYW5kIHNlZSBpZiB0aGluZ3MgYmVoYXZl IGJldHRlcj8gUGxlYXNlIGFsc28gY2FwdHVyZQo+ID4gdHJhY2Vwb2ludHMgOikKPiA+Cj4gPiBt b2RpZmllZCAgIGRyaXZlcnMvdXNiL2R3YzMvZ2FkZ2V0LmMKPiA+IEBAIC0xMDczLDcgKzEwNzMs NyBAQCBzdGF0aWMgdm9pZCBkd2MzX3ByZXBhcmVfb25lX3RyYl9zZyhzdHJ1Y3QgZHdjM19lcAo+ ICpkZXAsCj4gPiAgICAgICAgICAgICAgICAgICAgICAgLyogTm93IHByZXBhcmUgb25lIGV4dHJh IFRSQiB0byBhbGlnbiB0cmFuc2Zlcgo+IHNpemUgKi8KPiA+ICAgICAgICAgICAgICAgICAgICAg ICB0cmIgPSAmZGVwLT50cmJfcG9vbFtkZXAtPnRyYl9lbnF1ZXVlXTsKPiA+ICAgICAgICAgICAg ICAgICAgICAgICBfX2R3YzNfcHJlcGFyZV9vbmVfdHJiKGRlcCwgdHJiLCBkd2MtPmJvdW5jZV9h ZGRyLAo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhwIC0gcmVt LCBmYWxzZSwgMCwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4 cCAtIHJlbSwgZmFsc2UsIDEsCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHJlcS0+cmVxdWVzdC5zdHJlYW1faWQsCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHJlcS0+cmVxdWVzdC5zaG9ydF9ub3Rfb2ssCj4gPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHJlcS0+cmVxdWVzdC5ub19pbnRlcnJ1cHQpOwo+ID4g QEAgLTExMTcsNyArMTExNyw3IEBAIHN0YXRpYyB2b2lkIGR3YzNfcHJlcGFyZV9vbmVfdHJiX2xp bmVhcihzdHJ1Y3QKPiBkd2MzX2VwICpkZXAsCj4gPiAgICAgICAgICAgICAgIC8qIE5vdyBwcmVw YXJlIG9uZSBleHRyYSBUUkIgdG8gYWxpZ24gdHJhbnNmZXIgc2l6ZSAqLwo+ID4gICAgICAgICAg ICAgICB0cmIgPSAmZGVwLT50cmJfcG9vbFtkZXAtPnRyYl9lbnF1ZXVlXTsKPiA+ICAgICAgICAg ICAgICAgX19kd2MzX3ByZXBhcmVfb25lX3RyYihkZXAsIHRyYiwgZHdjLT5ib3VuY2VfYWRkciwg bWF4cCAtCj4gcmVtLAo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UsIDAs IHJlcS0+cmVxdWVzdC5zdHJlYW1faWQsCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBmYWxzZSwgMSwgcmVxLT5yZXF1ZXN0LnN0cmVhbV9pZCwKPiA+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHJlcS0+cmVxdWVzdC5zaG9ydF9ub3Rfb2ssCj4gPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICByZXEtPnJlcXVlc3Qubm9faW50ZXJydXB0KTsKPiA+ICAgICAgIH0g ZWxzZSBpZiAocmVxLT5yZXF1ZXN0Lnplcm8gJiYgcmVxLT5yZXF1ZXN0Lmxlbmd0aCAmJgo+ID4K PiA+Cj4KPiBUaGlzIGlzIGFuIGlzc3VlLCBidXQgaXQncyBub3QgdGhlIHNhbWUgb25lLgo+Cj4g ICAgICBpcnEvMTYtZHdjMy01MDMyICBbMDAzXSBkLi4uICAgIDY1LjQwNDE5NDogZHdjM19jb21w bGV0ZV90cmI6Cj4gZXAxb3V0OiB0cmIgMDAwMDAwMDA4OTA1MjJkNSBidWYgMDAwMDAwMDBiOGQ2 ZDAwMCBzaXplIDAgY3RybCAzYjU2NDQ2Ywo+IChobENTOlNjOmlzb2MtZmlyc3QpCj4KClNvIHRo aXMgaXMgY2hhaW5lZCB0byB0aGUgbmV4dCBvbmUsIHRoYXQncyBjb3JyZWN0LgoKCj4gICAgICBp cnEvMTYtZHdjMy01MDMyICBbMDAzXSBkLi4uICAgIDY1LjQwNDIwOTogZHdjM19jb21wbGV0ZV90 cmI6Cj4gZXAxb3V0OiB0cmIgMDAwMDAwMDBjMTVmMzg4ZiBidWYgMDAwMDAwMDAzNzgyMTAwMCBz aXplIDEwMjMgY3RybAo+IDNiNTY0Yzc4IChobGNTOlNDOmlzb2MpCj4KCkJ1dCBoZXJlLCBIV08g c2hvdWxkJ3ZlIGJlZW4gbGVmdCBhcyBpcywgYmVjYXVzZSBvZiB0aGUgc2hvcnQgcGFja2V0LgpU aGF0J3Mgd2hhdCB0aGUKZGF0YWJvb2sgc2F5cyBvbiB0aGUgdHdvIG5vdGVzIG9uIHNlY3Rpb24g OC4yLjMgYWZ0ZXIgdGFibGUgOC04IG9mIERhdGFib29rCjIuNjBhOgoKMS4gV2hlbiBhIFRSQiBy ZWNlaXZlcyB3aG9zZSBDU1AgYml0IGlzIDAgYW5kIENITiBiaXQgaXMgMSByZWNlaXZlcyBhIHNo b3J0CnBhY2tldCwKdGhlIGNoYWluZWQgVFJCcyB0aGF0IGZvbGxvdyBpdCBhcmUgbm90IHdyaXR0 ZW4gYmFjayAoZS5nLiB0aGUgQlVGU0laIGFuZApIV08gZmllbGRzCnJlbWFpbiB0aGUgc2FtZSBh cyB0aGUgc29mdHdhcmUtcHJlcGFyZWQgdmFsdWUpCgoyLiBJbiB0aGUgY2FzZSBvZiBhbiBPVVQg ZW5kcG9pbnQsIGlmIHRoZSBDSE4gYml0IGlzIHNldCAoYW5kIENTUCBpcyBhbHNvCnNldCksIGFu ZCBhIHNob3J0CnBhY2tldCBpcyByZWNlaXZlZCwgdGhlIGNvcmUgcmV0aXJlcyB0aGUgVFJCIGlu IHByb2dyZXNzIGFuZCBza2lwIHBhc3QgdGhlClRSQiB3aGVyZQpDSE49MCwgYWNjdW11bGF0aW5n IHRoZSBJU1AgYW5kIElPQyBiaXRzIGZyb20gZWFjaCBUUkIuIElmIElTUCBvciBJT0MgaXMKc2V0 IGluIGFueSBUUkIsCnRoZSBjb3JlIGdlbmVyYXRlcyBhbiBYZmVySW5Qcm9ncmVzcyBldmVudC4g SGFyZHdhcmUgZG9lcyBub3Qgc2V0IHRoZSBIV08KYml0IHRvIDAgaW4Kc2tpcHBlZCBUUkJzLiBJ ZiB0aGUgZW5kcG9pbnQgdHlwZSBpcyBpc29jaHJvbm91cywgdGhlIENITj0wIFRSQiB3aWxsIGFs c28KYmUgcmV0aXJlZCBhbmQKaXRzIGJ1ZmZlciBzaXplIGZpZWxkIHVwZGF0ZWQgd2l0aCB0aGUg dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHJlbWFpbmluZyBpbgp0aGUgQkQuCgpOb3RlIHRoYXQgYXQg bW9zdCB3ZSBoYXZlIGNvbmZpcm1hdGlvbiB0aGF0IFNJWkUgd2lsbCBiZSB1cGRhdGVkIGluIGNh c2Ugb2YKSXNvYyBlbmRwb2ludHMsCmJ1dCB0aGVyZSdzIG5vdGhpbmcgdGhlcmUgYWJvdXQgSFdP LCBzbyBJIGV4cGVjdGVkIGl0IHRvIHJlbWFpbiBzZXQKYWNjb3JkaW5nIHRvIHRoZSByZXN0IG9m CnRoZSB0ZXh0LgoKVGhlcmUncyBvbmUgcG9zc2liaWxpdHkgdGhhdCAiVFJCIHdpbGwgYWxzbyBi ZSAqcmV0aXJlZCoiIG1lYW5zIHRoYXQgaXQncwpub3Qgc2tpcHBlZCwgd2hpY2gKd291bGQgbWVh biB0aGF0IEhXTyBpcywgaW5kZWVkLCBzZXQgdG8gMC4gVG8gcGF0Y2ggdGhhdCwgaG93ZXZlciwg d2UgZG9uJ3QKbmVlZCBhbGwgdGhlCmV4dHJhIGNoZWNraW5nIHlvdSBoYXZlIGltcGxlbWVudGVk LiBJJ2xsIHRyeSB0byBwcm9wb3NlIGEgc2xpZ2h0bHkgc2ltcGxlcgpmaXggaWYgeW91J3JlCndp bGxpbmcgdG8gdGVzdCBpdCBvdXQuCgoKPiBBcmUgeW91IGdvaW5nIHRvIG1ha2UgYSBwYXRjaCBm b3IgdGhpcyBvbmU/Cj4KClllcywgSSdsbCBwcmVwYXJlIGFuIG9mZmljaWFsIHBhdGNoLgoKY2hl ZXJzCg==