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: [v2] cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader. From: macpaul.lin@mediatek.com Message-Id: <1545109222-25073-1-git-send-email-macpaul.lin@mediatek.com> Date: Tue, 18 Dec 2018 13:00:22 +0800 To: Johan Hovold , Oliver Neukum , Greg Kroah-Hartman , linux-usb@vger.kernel.org, stable@vger.kernel.org Cc: Mediatek WSD Upstream , Macpaul Lin List-ID: TWVkaWF0ZWsgUHJlbG9hZGVyIGlzIGEgcHJvcHJpZXRhcnkgZW1iZWRkZWQgYm9vdCBsb2FkZXIg Zm9yIGxvYWRpbmcKTGl0dGxlIEtlcm5lbCBhbmQgTGludXggaW50byBkZXZpY2UgRFJBTS4KClRo aXMgYm9vdCBsb2FkZXIgYWxzbyBoYW5kbGUgZmlybXdhcmUgdXBkYXRlLiBNZWRpYXRlayBQcmVs b2FkZXIgd2lsbCBiZQplbnVtZXJhdGVkIGFzIGEgdmlydHVhbCBDT00gcG9ydCB3aGVuIHRoZSBk ZXZpY2UgaXMgY29ubmVjdGVkIHRvIFdpbmRvd3MKb3IgTGludXggT1MgdmlhIENEQy1BQ00gY2xh c3MgZHJpdmVyLiBXaGVuIHRoZSBVU0IgZW51bWVyYXRpb24gaGFzIGJlZW4KZG9uZSwgTWVkaWF0 ZWsgUHJlbG9hZGVyIHdpbGwgc2VuZCBvdXQgaGFuZHNoYWtlIGNvbW1hbmQgIlJFQURZIiB0byBQ QwphY3RpdmVseSBpbnN0ZWFkIG9mIHdhaXRpbmcgY29tbWFuZCBmcm9tIHRoZSBkb3dubG9hZCB0 b29sLgpTaW5jZSBMaW51eCA0LjEyLCB0aGUgY29tbWl0ICJ0dHk6IHJlc2V0IHRlcm1pb3Mgc3Rh dGUgb24gZGV2aWNlCnJlZ2lzdHJhdGlvbiIgKDkzODU3ZWRkOTgyOWUxNDRhY2I2YzdlNzJkNTkz ZjZlMDFhZWFkNjYpIGNhdXNlcyBNZWRpYXRlawpQcmVsb2FkZXIgcmVjZWl2aW5nIHNvbWUgYWJu b3JhbWwgY29tbWFuZCBsaWtlICJSRUFEWVhYIiBhcyBpdCBzZW50LgpUaGlzIHdpbGwgYmUgcmVj b2duaXplZCBhcyBhbiBpbmNvcnJlY3QgcmVzcG9uc2UuIFRoZSBiZWhhdmlvciBjaGFuZ2UKYWxz byBjYXVzZXMgdGhlIGRvd25sb2FkIGhhbmRzaGFrZSBmYWlsLgoKQnkgZGlzYWJsaW5nIHRoZSBF Q0hPIHRlcm1pb3MgZmxhZyBjb3VsZCBhdm9pZCB0aGlzIHByb2JsZW0uIEhvd2V2ZXIsIGl0CmNh bm5vdCBiZSBkb25lIGJ5IHVzZXIgc3BhY2UgY29uZmlndXJhdGlvbiB3aGVuIGRvd25sb2FkIHRv b2wgb3BlbgovZGV2L3R0eUFDTTAuIFRoaXMgaXMgYmVjYXVzZSB0aGUgZGV2aWNlIHJ1bm5pbmcg TWVkaWF0ZWsgUHJlbG9hZGVyIHdpbGwKc2VuZCBoYW5kc2hha2UgY29tbWFuZCAiUkVBRFkiIGlt bWVkaWF0ZWx5IG9uY2UgdGhlIENEQy1BQ00gZHJpdmVyIGlzCnJlYWR5LgoKVGhpcyBwYXRjaCB3 YW50cyB0byBmaXggYWJvdmUgcHJvYmxlbSBieSBpbnRyb2R1Y2luZyAiRElTQUJMRV9FQ0hPIgpw cm9wZXJ0eSBpbiBkcml2ZXJfaW5mby4gV2hlbiBNZWRpYXRlayBQcmVsb2FkZXIgaXMgY29ubmVj dGVkLCB0aGUKQ0RDLUFDTSBkcml2ZXIgY291bGQgZGlzYWJsZSBFQ0hPIGZsYWcgaW4gdGVybWlv cyB0byBhdm9pZCB0aGUgcHJvYmxlbS4KClNpZ25lZC1vZmYtYnk6IE1hY3BhdWwgTGluIDxtYWNw YXVsLmxpbkBtZWRpYXRlay5jb20+Ci0tLQpDaGFuZ2UgZm9yIHYyOgogLSBNb3ZlIHF1aXJrcyB0 ZXN0aW5nIG9mIERJU0FCTEVfRUNITyBmbGFnIGludG8gYWNtX3R0eV9pbnN0YWxsKCkuCiAtIENo YW5nZSBxdWlya3MgdGVzdGluZyBpbnRvIGJpdHdpc2UgY29tcGFyaXNvbi4KCiBkcml2ZXJzL3Vz Yi9jbGFzcy9jZGMtYWNtLmMgfCAxMyArKysrKysrKysrKystCiBkcml2ZXJzL3VzYi9jbGFzcy9j ZGMtYWNtLmggfCAgMSArCiAyIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9jbGFzcy9jZGMtYWNtLmMgYi9kcml2 ZXJzL3VzYi9jbGFzcy9jZGMtYWNtLmMKaW5kZXggMWI2OGZlZC4uZjFhOTE0ZCAxMDA2NDQKLS0t IGEvZHJpdmVycy91c2IvY2xhc3MvY2RjLWFjbS5jCisrKyBiL2RyaXZlcnMvdXNiL2NsYXNzL2Nk Yy1hY20uYwpAQCAtNTcxLDEyICs1NzEsMjAgQEAgc3RhdGljIHZvaWQgYWNtX3NvZnRpbnQoc3Ry dWN0IHdvcmtfc3RydWN0ICp3b3JrKQogc3RhdGljIGludCBhY21fdHR5X2luc3RhbGwoc3RydWN0 IHR0eV9kcml2ZXIgKmRyaXZlciwgc3RydWN0IHR0eV9zdHJ1Y3QgKnR0eSkKIHsKIAlzdHJ1Y3Qg YWNtICphY207CisJdW5zaWduZWQgbG9uZyBxdWlya3M7CiAJaW50IHJldHZhbDsKIAogCWFjbSA9 IGFjbV9nZXRfYnlfbWlub3IodHR5LT5pbmRleCk7CiAJaWYgKCFhY20pCiAJCXJldHVybiAtRU5P REVWOwogCisJLyogZ2V0IG5vcm1hbCBxdWlya3MgKi8KKwlxdWlya3MgPSBhY20tPnF1aXJrczsK KworCS8qIGhhbmRsZSBhY3RpdmUgaGFuZHNoYWtlIHRyaWdnZXJlZCBieSBkZXZpY2UgKi8KKwlp ZiAocXVpcmtzICYgRElTQUJMRV9FQ0hPKQorCQlkcml2ZXItPmluaXRfdGVybWlvcy5jX2xmbGFn ICY9IH4oRUNITyk7CisKIAlyZXR2YWwgPSB0dHlfc3RhbmRhcmRfaW5zdGFsbChkcml2ZXIsIHR0 eSk7CiAJaWYgKHJldHZhbCkKIAkJZ290byBlcnJvcl9pbml0X3Rlcm1pb3M7CkBAIC0xNjU1LDcg KzE2NjMsMTAgQEAgc3RhdGljIGludCBhY21fcHJlX3Jlc2V0KHN0cnVjdCB1c2JfaW50ZXJmYWNl ICppbnRmKQogCS5kcml2ZXJfaW5mbyA9IE5PX1VOSU9OX05PUk1BTCwgLyogaGFzIG5vIHVuaW9u IGRlc2NyaXB0b3IgKi8KIAl9LAogCXsgVVNCX0RFVklDRSgweDBlOGQsIDB4MDAwMyksIC8qIEZJ UkVGTFksIE1lZGlhVGVrIEluYzsgYW5kcmV5LmFyYXBvdkBnbWFpbC5jb20gKi8KLQkuZHJpdmVy X2luZm8gPSBOT19VTklPTl9OT1JNQUwsIC8qIGhhcyBubyB1bmlvbiBkZXNjcmlwdG9yICovCisJ LmRyaXZlcl9pbmZvID0gRElTQUJMRV9FQ0hPLCAvKiBESVNBQkxFIEVDSE8gaW4gdGVybWlvcyBm bGFnICovCisJfSwKKwl7IFVTQl9ERVZJQ0UoMHgwZThkLCAweDIwMDApLCAvKiBGSVJFRkxZLCBN ZWRpYVRlayBJbmM7IFByZWxvYWRlciAqLworCS5kcml2ZXJfaW5mbyA9IERJU0FCTEVfRUNITywg LyogRElTQUJMRSBFQ0hPIGluIHRlcm1pb3MgZmxhZyAqLwogCX0sCiAJeyBVU0JfREVWSUNFKDB4 MGU4ZCwgMHgzMzI5KSwgLyogTWVkaWFUZWsgSW5jIEdQUyAqLwogCS5kcml2ZXJfaW5mbyA9IE5P X1VOSU9OX05PUk1BTCwgLyogaGFzIG5vIHVuaW9uIGRlc2NyaXB0b3IgKi8KZGlmZiAtLWdpdCBh L2RyaXZlcnMvdXNiL2NsYXNzL2NkYy1hY20uaCBiL2RyaXZlcnMvdXNiL2NsYXNzL2NkYy1hY20u aAppbmRleCBjYTA2YjIwLi41MTVhYWQwIDEwMDY0NAotLS0gYS9kcml2ZXJzL3VzYi9jbGFzcy9j ZGMtYWNtLmgKKysrIGIvZHJpdmVycy91c2IvY2xhc3MvY2RjLWFjbS5oCkBAIC0xNDAsMyArMTQw LDQgQEAgc3RydWN0IGFjbSB7CiAjZGVmaW5lIFFVSVJLX0NPTlRST0xfTElORV9TVEFURQlCSVQo NikKICNkZWZpbmUgQ0xFQVJfSEFMVF9DT05ESVRJT05TCQlCSVQoNykKICNkZWZpbmUgU0VORF9a RVJPX1BBQ0tFVAkJQklUKDgpCisjZGVmaW5lIERJU0FCTEVfRUNITwkJCUJJVCg5KQo=