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: [v5] cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader. From: macpaul.lin@mediatek.com Message-Id: <1545134386-5528-1-git-send-email-macpaul.lin@mediatek.com> Date: Tue, 18 Dec 2018 19:59:46 +0800 To: Johan Hovold , Oliver Neukum , Greg Kroah-Hartman , linux-usb@vger.kernel.org Cc: Mediatek WSD Upstream , Macpaul Lin , stable@vger.kernel.org List-ID: TWVkaWF0ZWsgUHJlbG9hZGVyIGlzIGEgcHJvcHJpZXRhcnkgZW1iZWRkZWQgYm9vdCBsb2FkZXIg Zm9yIGxvYWRpbmcKTGl0dGxlIEtlcm5lbCBhbmQgTGludXggaW50byBkZXZpY2UgRFJBTS4KClRo aXMgYm9vdCBsb2FkZXIgYWxzbyBoYW5kbGUgZmlybXdhcmUgdXBkYXRlLiBNZWRpYXRlayBQcmVs b2FkZXIgd2lsbCBiZQplbnVtZXJhdGVkIGFzIGEgdmlydHVhbCBDT00gcG9ydCB3aGVuIHRoZSBk ZXZpY2UgaXMgY29ubmVjdGVkIHRvIFdpbmRvd3MKb3IgTGludXggT1MgdmlhIENEQy1BQ00gY2xh c3MgZHJpdmVyLiBXaGVuIHRoZSBVU0IgZW51bWVyYXRpb24gaGFzIGJlZW4KZG9uZSwgTWVkaWF0 ZWsgUHJlbG9hZGVyIHdpbGwgc2VuZCBvdXQgaGFuZHNoYWtlIGNvbW1hbmQgIlJFQURZIiB0byBQ QwphY3RpdmVseSBpbnN0ZWFkIG9mIHdhaXRpbmcgY29tbWFuZCBmcm9tIHRoZSBkb3dubG9hZCB0 b29sLgoKU2luY2UgTGludXggNC4xMiwgdGhlIGNvbW1pdCAidHR5OiByZXNldCB0ZXJtaW9zIHN0 YXRlIG9uIGRldmljZQpyZWdpc3RyYXRpb24iICg5Mzg1N2VkZDk4MjllMTQ0YWNiNmM3ZTcyZDU5 M2Y2ZTAxYWVhZDY2KSBjYXVzZXMgTWVkaWF0ZWsKUHJlbG9hZGVyIHJlY2VpdmluZyBzb21lIGFi bm9yYW1sIGNvbW1hbmQgbGlrZSAiUkVBRFlYWCIgYXMgaXQgc2VudC4KVGhpcyB3aWxsIGJlIHJl Y29nbml6ZWQgYXMgYW4gaW5jb3JyZWN0IHJlc3BvbnNlLiBUaGUgYmVoYXZpb3IgY2hhbmdlCmFs c28gY2F1c2VzIHRoZSBkb3dubG9hZCBoYW5kc2hha2UgZmFpbC4gVGhpcyBjaGFuZ2Ugb25seSBh ZmZlY3RzCnN1YnNlcXVlbnQgY29ubmVjdHMgaWYgdGhlIHJlY29ubmVjdGVkIGRldmljZSBoYXBw ZW5zIHRvIGdldCB0aGUgc2FtZSBtaW5vcgpudW1iZXIuCgpCeSBkaXNhYmxpbmcgdGhlIEVDSE8g dGVybWlvcyBmbGFnIGNvdWxkIGF2b2lkIHRoaXMgcHJvYmxlbS4gSG93ZXZlciwgaXQKY2Fubm90 IGJlIGRvbmUgYnkgdXNlciBzcGFjZSBjb25maWd1cmF0aW9uIHdoZW4gZG93bmxvYWQgdG9vbCBv cGVuCi9kZXYvdHR5QUNNMC4gVGhpcyBpcyBiZWNhdXNlIHRoZSBkZXZpY2UgcnVubmluZyBNZWRp YXRlayBQcmVsb2FkZXIgd2lsbApzZW5kIGhhbmRzaGFrZSBjb21tYW5kICJSRUFEWSIgaW1tZWRp YXRlbHkgb25jZSB0aGUgQ0RDLUFDTSBkcml2ZXIgaXMKcmVhZHkuCgpUaGlzIHBhdGNoIHdhbnRz IHRvIGZpeCBhYm92ZSBwcm9ibGVtIGJ5IGludHJvZHVjaW5nICJESVNBQkxFX0VDSE8iCnByb3Bl cnR5IGluIGRyaXZlcl9pbmZvLiBXaGVuIE1lZGlhdGVrIFByZWxvYWRlciBpcyBjb25uZWN0ZWQs IHRoZQpDREMtQUNNIGRyaXZlciBjb3VsZCBkaXNhYmxlIEVDSE8gZmxhZyBpbiB0ZXJtaW9zIHRv IGF2b2lkIHRoZSBwcm9ibGVtLgoKU2lnbmVkLW9mZi1ieTogTWFjcGF1bCBMaW4gPG1hY3BhdWwu bGluQG1lZGlhdGVrLmNvbT4KQ2M6IHN0YWJsZUB2Z2VyLmtlcm5lbC5vcmcKLS0tCkNoYW5nZXMg Zm9yIHYyOgogLSBNb3ZlIHF1aXJrcyB0ZXN0aW5nIG9mIERJU0FCTEVfRUNITyBmbGFnIGludG8g YWNtX3R0eV9pbnN0YWxsKCkuCiAtIENoYW5nZSBxdWlya3MgdGVzdGluZyBpbnRvIGJpdHdpc2Ug Y29tcGFyaXNvbi4KQ2hhbmdlcyBmb3IgdjM6CiAtIFJlcGxhY2UgcXVpcmtzIHRlc3RpbmcgZnJv bSBpbml0X3Rlcm1pb3MgdG8gdHR5LT50ZXJtaW9zLgogLSBSZW1vdmUgcGFyZW50aGVzaXMgZm9y IEVDSE8gZmxhZy4KQ2hhbmdlcyBmb3IgdjQ6CiAtIERyb3AgcXVpcmtzIHZhcmlibGUgdG8gc2lt cGxpZnkgdGhlIHBhdGNoLgogLSBNb3ZlIHRlcm1pb3Mgb3BlcmF0aW9uIHJpZ2h0IGFmdGVyIHRo ZSBkcml2ZXJfZGF0YSBoYXMgYmVlbiBpbnN0YWxsZWQuCiAtIFdyaXRlIGdlbmVyYWwgc3R5bGUg Y29tbWVudCBmb3Igc3VwcHJlc3NpbmcgaW5pdGlhbCBlY2hvaW5nLiAKQ2hhbmdlcyBmb3IgdjU6 CiAtIEZpeDogdGVybWlvcyBvcGVyYXRpb24gcmlnaHQgYWJvdmVyIHRoZSBkcml2ZXJfZGF0YSBo YXMgYmVlbiBpbnN0YWxsZWQuCiAtIFVwZGF0ZSBjb21taXQgY29tbWVudCBhYm91dCB0aGlzIHBh dGNoIGFmZmVjdHMgdGhlIHJlY29ubmVjdGVkIGRldmljZQogICB3aGljaCBnZXQgdGhlIHNhbWUg bWlub3IgbnVtYmVycy4KCiBkcml2ZXJzL3VzYi9jbGFzcy9jZGMtYWNtLmMgfCAxMiArKysrKysr KysrKy0KIGRyaXZlcnMvdXNiL2NsYXNzL2NkYy1hY20uaCB8ICAxICsKIDIgZmlsZXMgY2hhbmdl ZCwgMTIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv dXNiL2NsYXNzL2NkYy1hY20uYyBiL2RyaXZlcnMvdXNiL2NsYXNzL2NkYy1hY20uYwppbmRleCAx YjY4ZmVkLi4zMzZjZjEzIDEwMDY0NAotLS0gYS9kcml2ZXJzL3VzYi9jbGFzcy9jZGMtYWNtLmMK KysrIGIvZHJpdmVycy91c2IvY2xhc3MvY2RjLWFjbS5jCkBAIC01ODEsNiArNTgxLDEzIEBAIHN0 YXRpYyBpbnQgYWNtX3R0eV9pbnN0YWxsKHN0cnVjdCB0dHlfZHJpdmVyICpkcml2ZXIsIHN0cnVj dCB0dHlfc3RydWN0ICp0dHkpCiAJaWYgKHJldHZhbCkKIAkJZ290byBlcnJvcl9pbml0X3Rlcm1p b3M7CiAKKwkvKgorCSAqIFN1cHByZXNzIGluaXRpYWwgZWNob2luZyBmb3Igc29tZSBkZXZpY2Vz IHdoaWNoIG1pZ2h0IHNlbmQgZGF0YQorCSAqIGltbWVkaWF0ZWx5IGFmdGVyIGFjbSBkcml2ZXIg aGFzIGJlZW4gaW5zdGFsbGVkLgorCSAqLworCWlmIChhY20tPnF1aXJrcyAmIERJU0FCTEVfRUNI TykKKwkJdHR5LT50ZXJtaW9zLmNfbGZsYWcgJj0gfkVDSE87CisKIAl0dHktPmRyaXZlcl9kYXRh ID0gYWNtOwogCiAJcmV0dXJuIDA7CkBAIC0xNjU1LDcgKzE2NjIsMTAgQEAgc3RhdGljIGludCBh Y21fcHJlX3Jlc2V0KHN0cnVjdCB1c2JfaW50ZXJmYWNlICppbnRmKQogCS5kcml2ZXJfaW5mbyA9 IE5PX1VOSU9OX05PUk1BTCwgLyogaGFzIG5vIHVuaW9uIGRlc2NyaXB0b3IgKi8KIAl9LAogCXsg VVNCX0RFVklDRSgweDBlOGQsIDB4MDAwMyksIC8qIEZJUkVGTFksIE1lZGlhVGVrIEluYzsgYW5k cmV5LmFyYXBvdkBnbWFpbC5jb20gKi8KLQkuZHJpdmVyX2luZm8gPSBOT19VTklPTl9OT1JNQUws IC8qIGhhcyBubyB1bmlvbiBkZXNjcmlwdG9yICovCisJLmRyaXZlcl9pbmZvID0gRElTQUJMRV9F Q0hPLCAvKiBESVNBQkxFIEVDSE8gaW4gdGVybWlvcyBmbGFnICovCisJfSwKKwl7IFVTQl9ERVZJ Q0UoMHgwZThkLCAweDIwMDApLCAvKiBGSVJFRkxZLCBNZWRpYVRlayBJbmM7IFByZWxvYWRlciAq LworCS5kcml2ZXJfaW5mbyA9IERJU0FCTEVfRUNITywgLyogRElTQUJMRSBFQ0hPIGluIHRlcm1p b3MgZmxhZyAqLwogCX0sCiAJeyBVU0JfREVWSUNFKDB4MGU4ZCwgMHgzMzI5KSwgLyogTWVkaWFU ZWsgSW5jIEdQUyAqLwogCS5kcml2ZXJfaW5mbyA9IE5PX1VOSU9OX05PUk1BTCwgLyogaGFzIG5v IHVuaW9uIGRlc2NyaXB0b3IgKi8KZGlmZiAtLWdpdCBhL2RyaXZlcnMvdXNiL2NsYXNzL2NkYy1h Y20uaCBiL2RyaXZlcnMvdXNiL2NsYXNzL2NkYy1hY20uaAppbmRleCBjYTA2YjIwLi41MTVhYWQw IDEwMDY0NAotLS0gYS9kcml2ZXJzL3VzYi9jbGFzcy9jZGMtYWNtLmgKKysrIGIvZHJpdmVycy91 c2IvY2xhc3MvY2RjLWFjbS5oCkBAIC0xNDAsMyArMTQwLDQgQEAgc3RydWN0IGFjbSB7CiAjZGVm aW5lIFFVSVJLX0NPTlRST0xfTElORV9TVEFURQlCSVQoNikKICNkZWZpbmUgQ0xFQVJfSEFMVF9D T05ESVRJT05TCQlCSVQoNykKICNkZWZpbmUgU0VORF9aRVJPX1BBQ0tFVAkJQklUKDgpCisjZGVm aW5lIERJU0FCTEVfRUNITwkJCUJJVCg5KQo=