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: [1/2] USB: serial: option: improve Quectel EP06 detection From: Johan Hovold Message-Id: <20180913092152.770-1-johan@kernel.org> Date: Thu, 13 Sep 2018 11:21:49 +0200 To: Kristian Evensen Cc: linux-usb@vger.kernel.org, =?UTF-8?q?Bj=C3=B8rn=20Mork?= , Dan Williams , Lars Melin , linux-kernel@vger.kernel.org, stable , Johan Hovold List-ID: RnJvbTogS3Jpc3RpYW4gRXZlbnNlbiA8a3Jpc3RpYW4uZXZlbnNlbkBnbWFpbC5jb20+CgpUaGUg UXVlY3RlbCBFUDA2IChhbmQgRU0wNi9FRzA2KSBMVEUgbW9kZW0gc3VwcG9ydHMgdXBkYXRpbmcg dGhlIFVTQgpjb25maWd1cmF0aW9uLCB3aXRob3V0IHRoZSBWSUQvUElEIG9yIGNvbmZpZ3VyYXRp b24gbnVtYmVyIGNoYW5naW5nLgpXaGVuIHRoZSBjb25maWd1cmF0aW9uIGlzIHVwZGF0ZWQgYW5k IGludGVyZmFjZXMgYXJlIGFkZGVkL3JlbW92ZWQsIHRoZQppbnRlcmZhY2UgbnVtYmVycyBhcmUg dXBkYXRlZC4gVGhpcyBjYXVzZXMgb3VyIGN1cnJlbnQgY29kZSBmb3IgbWF0Y2hpbmcKRVAwNiBu b3QgdG8gd29yayBhcyBpbnRlbmRlZCwgYXMgdGhlIGFzc3VtcHRpb24gYWJvdXQgcmVzZXJ2ZWQK aW50ZXJmYWNlcyBubyBsb25nZXIgaG9sZHMuIElmIGZvciBleGFtcGxlIHRoZSBkaWFnbm9zdGlj IChmaXJzdCkKaW50ZXJmYWNlIGlzIHJlbW92ZWQsIG9wdGlvbiB3aWxsICh0cnkgdG8pIGJpbmQg dG8gdGhlIFFNSSBpbnRlcmZhY2UuCgpUaGlzIHBhdGNoIGltcHJvdmVzIEVQMDYgZGV0ZWN0aW9u IGJ5IHJlcGxhY2luZyB0aGUgY3VycmVudCBtYXRjaCB3aXRoCnR3byBtYXRjaGVzLCBhbmQgdGhv c2UgbWF0Y2hlcyBjaGVjayBjbGFzcywgc3ViY2xhc3MgYW5kIHByb3RvY29sIGFzCndlbGwgYXMg VklEIGFuZCBQSUQuIFRoZSBkaWFnIGludGVyZmFjZSBleHBvcnRzIGNsYXNzLCBzdWJjbGFzcyBh bmQKcHJvdG9jb2wgYXMgMHhmZi4gRm9yIHRoZSBvdGhlciBzZXJpYWwgaW50ZXJmYWNlcywgY2xh c3MgaXMgMHhmZiBhbmQKc3ViY2xhc3MgYW5kIHByb3RvY29sIGFyZSBib3RoIDB4MC4KClRoZSBt b2RlbSBjYW4gZXhwb3J0IHRoZSBmb2xsb3dpbmcgZGV2aWNlcyBhbmQgYWx3YXlzIGluIHRoaXMg b3JkZXI6CmRpYWcsIG5tZWEsIGF0LCBwcHAuIHFtaSBhbmQgYWRiLiBUaGlzIG1lYW5zIHRoYXQg ZGlhZyBjYW4gb25seSBldmVyIGJlCmludGVyZmFjZSAwLCBhbmQgaW50ZXJmYWNlIG51bWJlcnMg MS01IHNob3VsZCBiZSBtYXJrZWQgYXMgcmVzZXJ2ZWQuIFRoZQp0aHJlZSBvdGhlciBzZXJpYWwg ZGV2aWNlcyBjYW4gaGF2ZSBpbnRlcmZhY2UgbnVtYmVycyAwLTMsIGJ1dCBJIGhhdmUKbm90IG1h cmtlZCBhbnkgaW50ZXJmYWNlcyBhcyByZXNlcnZlZC4gVGhlIHJlYXNvbiBpcyB0aGF0IHRoZSBz ZXJpYWwKZGV2aWNlcyBhcmUgdGhlIG9ubHkgaW50ZXJmYWNlcyBleHBvcnRlZCBieSB0aGUgZGV2 aWNlIHdoZXJlIHN1YmNsYXNzCmFuZCBwcm90b2NvbCBpcyAweDAuCgpRTUkgZXhwb3J0cyB0aGUg c2FtZSBjbGFzcywgc3ViY2xhc3MgYW5kIHByb3RvY29sIHZhbHVlcyBhcyB0aGUgZGlhZwppbnRl cmZhY2UuIEhvd2V2ZXIsIHRoZSB0d28gaW50ZXJmYWNlcyBoYXZlIGRpZmZlcmVudCBudW1iZXIg b2YKZW5kcG9pbnRzLCBRTUkgaGFzIHRocmVlIGFuZCBkaWFnIHR3by4gSSBoYXZlIGFkZGVkIGEg Y2hlY2sgZm9yIG51bWJlcgpvZiBpbnRlcmZhY2VzIGlmIFZJRC9QSUQgbWF0Y2hlcyB0aGUgRVAw NiwgYW5kIHdlIGlnbm9yZSB0aGUgZGV2aWNlIGlmCm51bWJlciBvZiBpbnRlcmZhY2VzIGVxdWFs cyB0aHJlZSAoYW5kIHN1YmNsYXNzIGlzIHNldCkuCgpTaWduZWQtb2ZmLWJ5OiBLcmlzdGlhbiBF dmVuc2VuIDxrcmlzdGlhbi5ldmVuc2VuQGdtYWlsLmNvbT4KQWNrZWQtYnk6IERhbiBXaWxsaWFt cyA8ZGNid0ByZWRoYXQuY29tPgpbIGpvaGFuOiBkcm9wIHVuZWVkZWQgUlNWRCg1KSBmb3IgQURC IF0KQ2M6IHN0YWJsZSA8c3RhYmxlQHZnZXIua2VybmVsLm9yZz4KU2lnbmVkLW9mZi1ieTogSm9o YW4gSG92b2xkIDxqb2hhbkBrZXJuZWwub3JnPgotLS0KIGRyaXZlcnMvdXNiL3NlcmlhbC9vcHRp b24uYyB8IDE4ICsrKysrKysrKysrKysrKystLQogMSBmaWxlIGNoYW5nZWQsIDE2IGluc2VydGlv bnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy91c2Ivc2VyaWFsL29w dGlvbi5jIGIvZHJpdmVycy91c2Ivc2VyaWFsL29wdGlvbi5jCmluZGV4IDAyMTViNzBjNGVmYy4u MzgyZmVhZmJkMTI3IDEwMDY0NAotLS0gYS9kcml2ZXJzL3VzYi9zZXJpYWwvb3B0aW9uLmMKKysr IGIvZHJpdmVycy91c2Ivc2VyaWFsL29wdGlvbi5jCkBAIC0xMDgxLDggKzEwODEsOSBAQCBzdGF0 aWMgY29uc3Qgc3RydWN0IHVzYl9kZXZpY2VfaWQgb3B0aW9uX2lkc1tdID0gewogCSAgLmRyaXZl cl9pbmZvID0gUlNWRCg0KSB9LAogCXsgVVNCX0RFVklDRShRVUVDVEVMX1ZFTkRPUl9JRCwgUVVF Q1RFTF9QUk9EVUNUX0JHOTYpLAogCSAgLmRyaXZlcl9pbmZvID0gUlNWRCg0KSB9LAotCXsgVVNC X0RFVklDRShRVUVDVEVMX1ZFTkRPUl9JRCwgUVVFQ1RFTF9QUk9EVUNUX0VQMDYpLAotCSAgLmRy aXZlcl9pbmZvID0gUlNWRCg0KSB8IFJTVkQoNSkgfSwKKwl7IFVTQl9ERVZJQ0VfQU5EX0lOVEVS RkFDRV9JTkZPKFFVRUNURUxfVkVORE9SX0lELCBRVUVDVEVMX1BST0RVQ1RfRVAwNiwgMHhmZiwg MHhmZiwgMHhmZiksCisJICAuZHJpdmVyX2luZm8gPSBSU1ZEKDEpIHwgUlNWRCgyKSB8IFJTVkQo MykgfCBSU1ZEKDQpIH0sCisJeyBVU0JfREVWSUNFX0FORF9JTlRFUkZBQ0VfSU5GTyhRVUVDVEVM X1ZFTkRPUl9JRCwgUVVFQ1RFTF9QUk9EVUNUX0VQMDYsIDB4ZmYsIDAsIDApIH0sCiAJeyBVU0Jf REVWSUNFKENNT1RFQ0hfVkVORE9SX0lELCBDTU9URUNIX1BST0RVQ1RfNjAwMSkgfSwKIAl7IFVT Ql9ERVZJQ0UoQ01PVEVDSF9WRU5ET1JfSUQsIENNT1RFQ0hfUFJPRFVDVF9DTVVfMzAwKSB9LAog CXsgVVNCX0RFVklDRShDTU9URUNIX1ZFTkRPUl9JRCwgQ01PVEVDSF9QUk9EVUNUXzYwMDMpLApA QCAtMTk4NSw2ICsxOTg2LDcgQEAgc3RhdGljIGludCBvcHRpb25fcHJvYmUoc3RydWN0IHVzYl9z ZXJpYWwgKnNlcmlhbCwKIHsKIAlzdHJ1Y3QgdXNiX2ludGVyZmFjZV9kZXNjcmlwdG9yICppZmFj ZV9kZXNjID0KIAkJCQkmc2VyaWFsLT5pbnRlcmZhY2UtPmN1cl9hbHRzZXR0aW5nLT5kZXNjOwor CXN0cnVjdCB1c2JfZGV2aWNlX2Rlc2NyaXB0b3IgKmRldl9kZXNjID0gJnNlcmlhbC0+ZGV2LT5k ZXNjcmlwdG9yOwogCXVuc2lnbmVkIGxvbmcgZGV2aWNlX2ZsYWdzID0gaWQtPmRyaXZlcl9pbmZv OwogCiAJLyogTmV2ZXIgYmluZCB0byB0aGUgQ0QtUm9tIGVtdWxhdGlvbiBpbnRlcmZhY2UJKi8K QEAgLTE5OTksNiArMjAwMSwxOCBAQCBzdGF0aWMgaW50IG9wdGlvbl9wcm9iZShzdHJ1Y3QgdXNi X3NlcmlhbCAqc2VyaWFsLAogCWlmIChkZXZpY2VfZmxhZ3MgJiBSU1ZEKGlmYWNlX2Rlc2MtPmJJ bnRlcmZhY2VOdW1iZXIpKQogCQlyZXR1cm4gLUVOT0RFVjsKIAorCS8qCisJICogRG9uJ3QgYmlu ZCB0byB0aGUgUU1JIGRldmljZSBvZiB0aGUgUXVlY3RlbCBFUDA2L0VHMDYvRU0wNi4gQ2xhc3Ms CisJICogc3ViY2xhc3MgYW5kIHByb3RvY29sIGlzIDB4ZmYgZm9yIGJvdGggdGhlIGRpYWdub3N0 aWMgcG9ydCBhbmQgdGhlCisJICogUU1JIGludGVyZmFjZSwgYnV0IHRoZSBkaWFnbm9zdGljIHBv cnQgb25seSBoYXMgdHdvIGVuZHBvaW50cyAoUU1JCisJICogaGFzIHRocmVlKS4KKwkgKi8KKwlp ZiAoZGV2X2Rlc2MtPmlkVmVuZG9yID09IGNwdV90b19sZTE2KFFVRUNURUxfVkVORE9SX0lEKSAm JgorCSAgICBkZXZfZGVzYy0+aWRQcm9kdWN0ID09IGNwdV90b19sZTE2KFFVRUNURUxfUFJPRFVD VF9FUDA2KSAmJgorCSAgICBpZmFjZV9kZXNjLT5iSW50ZXJmYWNlU3ViQ2xhc3MgJiYgaWZhY2Vf ZGVzYy0+Yk51bUVuZHBvaW50cyA9PSAzKSB7CisJCXJldHVybiAtRU5PREVWOworCX0KKwogCS8q IFN0b3JlIHRoZSBkZXZpY2UgZmxhZ3Mgc28gd2UgY2FuIHVzZSB0aGVtIGR1cmluZyBhdHRhY2gu ICovCiAJdXNiX3NldF9zZXJpYWxfZGF0YShzZXJpYWwsICh2b2lkICopZGV2aWNlX2ZsYWdzKTsK IAo=