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: serial: option: adding support for YUGA CLM920-NC5 From: Johan Hovold Message-Id: <20171218165248.GF3374@localhost> Date: Mon, 18 Dec 2017 17:52:48 +0100 To: SZ Lin Cc: Taiyi Wu , Johan Hovold , Greg Kroah-Hartman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, =?iso-8859-1?Q?Bj=F8rn?= Mork List-ID: WyArQ0M6IEJqw7hybiBdCgpPbiBGcmksIERlYyAxNSwgMjAxNyBhdCAwNjozMjowM1BNICswODAw LCBTWiBMaW4gd3JvdGU6Cj4gVGhpcyBwYXRjaCBhZGRzIHN1cHBvcnQgZm9yIFlVR0EgQ0xNOTIw LU5DNSBQSUQgMHg5NjI1IFVTQiBtb2RlbSB0byBvcHRpb24KPiBkcml2ZXIuCgpDb3VsZCB5b3Ug c3BlY2lmeSB3aGF0IGVhY2ggaW50ZXJmYWNlIGlzIHVzZWQgZm9yIGhlcmU/Cgo+IFNpZ25lZC1v ZmYtYnk6IFRhaXlpIFd1IDx0YWl5aXR5Lnd1QG1veGEuY29tPgo+IFNpZ25lZC1vZmYtYnk6IFNa IExpbiA8c3oubGluQG1veGEuY29tPgoKSXMgU1ogeW91ciBsZWdhbCBuYW1lPwoKPiAtLS0KPiAK PiBQbGVhc2UgcmVmZXIgdG8gZm9sbG93aW5nIGxzdXNiIG91dHB1dDoKPiAKPiBCdXMgMDAxIERl dmljZSAwMDM6IElEIDA1YzY6OTYyNSBRdWFsY29tbSwgSW5jLgo+IERldmljZSBEZXNjcmlwdG9y Ogo+ICAgYkxlbmd0aCAgICAgICAgICAgICAgICAxOAo+ICAgYkRlc2NyaXB0b3JUeXBlICAgICAg ICAgMQo+ICAgYmNkVVNCICAgICAgICAgICAgICAgMi4wMAo+ICAgYkRldmljZUNsYXNzICAgICAg ICAgICAgMCAoRGVmaW5lZCBhdCBJbnRlcmZhY2UgbGV2ZWwpCj4gICBiRGV2aWNlU3ViQ2xhc3Mg ICAgICAgICAwCj4gICBiRGV2aWNlUHJvdG9jb2wgICAgICAgICAwCj4gICBiTWF4UGFja2V0U2l6 ZTAgICAgICAgIDY0Cj4gICBpZFZlbmRvciAgICAgICAgICAgMHgwNWM2IFF1YWxjb21tLCBJbmMu Cj4gICBpZFByb2R1Y3QgICAgICAgICAgMHg5NjI1Cj4gICBiY2REZXZpY2UgICAgICAgICAgICAz LjE4Cj4gICBpTWFudWZhY3R1cmVyICAgICAgICAgICAxIFNoYW5naGFpIFl1Z2UKPiAgIGlQcm9k dWN0ICAgICAgICAgICAgICAgIDIgWVVHQSBJbmNvcnBvcmF0ZWQKPiAgIGlTZXJpYWwgICAgICAg ICAgICAgICAgIDMgMDEyMzQ1Njc4OUFCQ0RFRgo+ICAgYk51bUNvbmZpZ3VyYXRpb25zICAgICAg MQo+ICAgQ29uZmlndXJhdGlvbiBEZXNjcmlwdG9yOgo+ICAgICBiTGVuZ3RoICAgICAgICAgICAg ICAgICA5Cj4gICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDIKPiAgICAgd1RvdGFsTGVuZ3Ro ICAgICAgICAgIDE4Mwo+ICAgICBiTnVtSW50ZXJmYWNlcyAgICAgICAgICA1Cj4gICAgIGJDb25m aWd1cmF0aW9uVmFsdWUgICAgIDEKPiAgICAgaUNvbmZpZ3VyYXRpb24gICAgICAgICAgMAo+ICAg ICBibUF0dHJpYnV0ZXMgICAgICAgICAweGEwCj4gICAgICAgKEJ1cyBQb3dlcmVkKQo+ICAgICAg IFJlbW90ZSBXYWtldXAKPiAgICAgTWF4UG93ZXIgICAgICAgICAgICAgIDUwMG1BCj4gICAgIElu dGVyZmFjZSBEZXNjcmlwdG9yOgo+ICAgICAgIGJMZW5ndGggICAgICAgICAgICAgICAgIDkKPiAg ICAgICBiRGVzY3JpcHRvclR5cGUgICAgICAgICA0Cj4gICAgICAgYkludGVyZmFjZU51bWJlciAg ICAgICAgMAo+ICAgICAgIGJBbHRlcm5hdGVTZXR0aW5nICAgICAgIDAKPiAgICAgICBiTnVtRW5k cG9pbnRzICAgICAgICAgICAyCj4gICAgICAgYkludGVyZmFjZUNsYXNzICAgICAgIDI1NSBWZW5k b3IgU3BlY2lmaWMgQ2xhc3MKPiAgICAgICBiSW50ZXJmYWNlU3ViQ2xhc3MgICAgMjU1IFZlbmRv ciBTcGVjaWZpYyBTdWJjbGFzcwo+ICAgICAgIGJJbnRlcmZhY2VQcm90b2NvbCAgICAyNTUgVmVu ZG9yIFNwZWNpZmljIFByb3RvY29sCj4gICAgICAgaUludGVyZmFjZSAgICAgICAgICAgICAgMAo+ ICAgICAgIEVuZHBvaW50IERlc2NyaXB0b3I6Cj4gICAgICAgICBiTGVuZ3RoICAgICAgICAgICAg ICAgICA3Cj4gICAgICAgICBiRGVzY3JpcHRvclR5cGUgICAgICAgICA1Cj4gICAgICAgICBiRW5k cG9pbnRBZGRyZXNzICAgICAweDgxICBFUCAxIElOCj4gICAgICAgICBibUF0dHJpYnV0ZXMgICAg ICAgICAgICAyCj4gICAgICAgICAgIFRyYW5zZmVyIFR5cGUgICAgICAgICAgICBCdWxrCj4gICAg ICAgICAgIFN5bmNoIFR5cGUgICAgICAgICAgICAgICBOb25lCj4gICAgICAgICAgIFVzYWdlIFR5 cGUgICAgICAgICAgICAgICBEYXRhCj4gICAgICAgICB3TWF4UGFja2V0U2l6ZSAgICAgMHgwMjAw ICAxeCA1MTIgYnl0ZXMKPiAgICAgICAgIGJJbnRlcnZhbCAgICAgICAgICAgICAgIDAKPiAgICAg ICBFbmRwb2ludCBEZXNjcmlwdG9yOgo+ICAgICAgICAgYkxlbmd0aCAgICAgICAgICAgICAgICAg Nwo+ICAgICAgICAgYkRlc2NyaXB0b3JUeXBlICAgICAgICAgNQo+ICAgICAgICAgYkVuZHBvaW50 QWRkcmVzcyAgICAgMHgwMSAgRVAgMSBPVVQKPiAgICAgICAgIGJtQXR0cmlidXRlcyAgICAgICAg ICAgIDIKPiAgICAgICAgICAgVHJhbnNmZXIgVHlwZSAgICAgICAgICAgIEJ1bGsKPiAgICAgICAg ICAgU3luY2ggVHlwZSAgICAgICAgICAgICAgIE5vbmUKPiAgICAgICAgICAgVXNhZ2UgVHlwZSAg ICAgICAgICAgICAgIERhdGEKPiAgICAgICAgIHdNYXhQYWNrZXRTaXplICAgICAweDAyMDAgIDF4 IDUxMiBieXRlcwo+ICAgICAgICAgYkludGVydmFsICAgICAgICAgICAgICAgMAo+ICAgICBJbnRl cmZhY2UgRGVzY3JpcHRvcjoKPiAgICAgICBiTGVuZ3RoICAgICAgICAgICAgICAgICA5Cj4gICAg ICAgYkRlc2NyaXB0b3JUeXBlICAgICAgICAgNAo+ICAgICAgIGJJbnRlcmZhY2VOdW1iZXIgICAg ICAgIDEKPiAgICAgICBiQWx0ZXJuYXRlU2V0dGluZyAgICAgICAwCj4gICAgICAgYk51bUVuZHBv aW50cyAgICAgICAgICAgMgo+ICAgICAgIGJJbnRlcmZhY2VDbGFzcyAgICAgICAyNTUgVmVuZG9y IFNwZWNpZmljIENsYXNzCj4gICAgICAgYkludGVyZmFjZVN1YkNsYXNzICAgICA2Ngo+ICAgICAg IGJJbnRlcmZhY2VQcm90b2NvbCAgICAgIDEKPiAgICAgICBpSW50ZXJmYWNlICAgICAgICAgICAg ICA2IEFEQiBJbnRlcmZhY2UKPiAgICAgICBFbmRwb2ludCBEZXNjcmlwdG9yOgo+ICAgICAgICAg Ykxlbmd0aCAgICAgICAgICAgICAgICAgNwo+ICAgICAgICAgYkRlc2NyaXB0b3JUeXBlICAgICAg ICAgNQo+ICAgICAgICAgYkVuZHBvaW50QWRkcmVzcyAgICAgMHgwMiAgRVAgMiBPVVQKPiAgICAg ICAgIGJtQXR0cmlidXRlcyAgICAgICAgICAgIDIKPiAgICAgICAgICAgVHJhbnNmZXIgVHlwZSAg ICAgICAgICAgIEJ1bGsKPiAgICAgICAgICAgU3luY2ggVHlwZSAgICAgICAgICAgICAgIE5vbmUK PiAgICAgICAgICAgVXNhZ2UgVHlwZSAgICAgICAgICAgICAgIERhdGEKPiAgICAgICAgIHdNYXhQ YWNrZXRTaXplICAgICAweDAyMDAgIDF4IDUxMiBieXRlcwo+ICAgICAgICAgYkludGVydmFsICAg ICAgICAgICAgICAgMAo+ICAgICAgIEVuZHBvaW50IERlc2NyaXB0b3I6Cj4gICAgICAgICBiTGVu Z3RoICAgICAgICAgICAgICAgICA3Cj4gICAgICAgICBiRGVzY3JpcHRvclR5cGUgICAgICAgICA1 Cj4gICAgICAgICBiRW5kcG9pbnRBZGRyZXNzICAgICAweDgyICBFUCAyIElOCj4gICAgICAgICBi bUF0dHJpYnV0ZXMgICAgICAgICAgICAyCj4gICAgICAgICAgIFRyYW5zZmVyIFR5cGUgICAgICAg ICAgICBCdWxrCj4gICAgICAgICAgIFN5bmNoIFR5cGUgICAgICAgICAgICAgICBOb25lCj4gICAg ICAgICAgIFVzYWdlIFR5cGUgICAgICAgICAgICAgICBEYXRhCj4gICAgICAgICB3TWF4UGFja2V0 U2l6ZSAgICAgMHgwMjAwICAxeCA1MTIgYnl0ZXMKPiAgICAgICAgIGJJbnRlcnZhbCAgICAgICAg ICAgICAgIDAKPiAgICAgSW50ZXJmYWNlIERlc2NyaXB0b3I6Cj4gICAgICAgYkxlbmd0aCAgICAg ICAgICAgICAgICAgOQo+ICAgICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDQKPiAgICAgICBi SW50ZXJmYWNlTnVtYmVyICAgICAgICAyCj4gICAgICAgYkFsdGVybmF0ZVNldHRpbmcgICAgICAg MAo+ICAgICAgIGJOdW1FbmRwb2ludHMgICAgICAgICAgIDMKPiAgICAgICBiSW50ZXJmYWNlQ2xh c3MgICAgICAgMjU1IFZlbmRvciBTcGVjaWZpYyBDbGFzcwo+ICAgICAgIGJJbnRlcmZhY2VTdWJD bGFzcyAgICAgIDAKPiAgICAgICBiSW50ZXJmYWNlUHJvdG9jb2wgICAgICAwCj4gICAgICAgaUlu dGVyZmFjZSAgICAgICAgICAgICAgMAo+ICAgICAgICoqIFVOUkVDT0dOSVpFRDogIDA1IDI0IDAw IDEwIDAxCj4gICAgICAgKiogVU5SRUNPR05JWkVEOiAgMDUgMjQgMDEgMDAgMDAKPiAgICAgICAq KiBVTlJFQ09HTklaRUQ6ICAwNCAyNCAwMiAwMgo+ICAgICAgICoqIFVOUkVDT0dOSVpFRDogIDA1 IDI0IDA2IDAwIDAwCj4gICAgICAgRW5kcG9pbnQgRGVzY3JpcHRvcjoKPiAgICAgICAgIGJMZW5n dGggICAgICAgICAgICAgICAgIDcKPiAgICAgICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDUK PiAgICAgICAgIGJFbmRwb2ludEFkZHJlc3MgICAgIDB4ODQgIEVQIDQgSU4KPiAgICAgICAgIGJt QXR0cmlidXRlcyAgICAgICAgICAgIDMKPiAgICAgICAgICAgVHJhbnNmZXIgVHlwZSAgICAgICAg ICAgIEludGVycnVwdAo+ICAgICAgICAgICBTeW5jaCBUeXBlICAgICAgICAgICAgICAgTm9uZQo+ ICAgICAgICAgICBVc2FnZSBUeXBlICAgICAgICAgICAgICAgRGF0YQo+ICAgICAgICAgd01heFBh Y2tldFNpemUgICAgIDB4MDAwYSAgMXggMTAgYnl0ZXMKPiAgICAgICAgIGJJbnRlcnZhbCAgICAg ICAgICAgICAgIDkKPiAgICAgICBFbmRwb2ludCBEZXNjcmlwdG9yOgo+ICAgICAgICAgYkxlbmd0 aCAgICAgICAgICAgICAgICAgNwo+ICAgICAgICAgYkRlc2NyaXB0b3JUeXBlICAgICAgICAgNQo+ ICAgICAgICAgYkVuZHBvaW50QWRkcmVzcyAgICAgMHg4MyAgRVAgMyBJTgo+ICAgICAgICAgYm1B dHRyaWJ1dGVzICAgICAgICAgICAgMgo+ICAgICAgICAgICBUcmFuc2ZlciBUeXBlICAgICAgICAg ICAgQnVsawo+ICAgICAgICAgICBTeW5jaCBUeXBlICAgICAgICAgICAgICAgTm9uZQo+ICAgICAg ICAgICBVc2FnZSBUeXBlICAgICAgICAgICAgICAgRGF0YQo+ICAgICAgICAgd01heFBhY2tldFNp emUgICAgIDB4MDIwMCAgMXggNTEyIGJ5dGVzCj4gICAgICAgICBiSW50ZXJ2YWwgICAgICAgICAg ICAgICAwCj4gICAgICAgRW5kcG9pbnQgRGVzY3JpcHRvcjoKPiAgICAgICAgIGJMZW5ndGggICAg ICAgICAgICAgICAgIDcKPiAgICAgICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDUKPiAgICAg ICAgIGJFbmRwb2ludEFkZHJlc3MgICAgIDB4MDMgIEVQIDMgT1VUCj4gICAgICAgICBibUF0dHJp YnV0ZXMgICAgICAgICAgICAyCj4gICAgICAgICAgIFRyYW5zZmVyIFR5cGUgICAgICAgICAgICBC dWxrCj4gICAgICAgICAgIFN5bmNoIFR5cGUgICAgICAgICAgICAgICBOb25lCj4gICAgICAgICAg IFVzYWdlIFR5cGUgICAgICAgICAgICAgICBEYXRhCj4gICAgICAgICB3TWF4UGFja2V0U2l6ZSAg ICAgMHgwMjAwICAxeCA1MTIgYnl0ZXMKPiAgICAgICAgIGJJbnRlcnZhbCAgICAgICAgICAgICAg IDAKPiAgICAgSW50ZXJmYWNlIERlc2NyaXB0b3I6Cj4gICAgICAgYkxlbmd0aCAgICAgICAgICAg ICAgICAgOQo+ICAgICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDQKPiAgICAgICBiSW50ZXJm YWNlTnVtYmVyICAgICAgICAzCj4gICAgICAgYkFsdGVybmF0ZVNldHRpbmcgICAgICAgMAo+ICAg ICAgIGJOdW1FbmRwb2ludHMgICAgICAgICAgIDMKPiAgICAgICBiSW50ZXJmYWNlQ2xhc3MgICAg ICAgMjU1IFZlbmRvciBTcGVjaWZpYyBDbGFzcwo+ICAgICAgIGJJbnRlcmZhY2VTdWJDbGFzcyAg ICAgIDAKPiAgICAgICBiSW50ZXJmYWNlUHJvdG9jb2wgICAgICAwCj4gICAgICAgaUludGVyZmFj ZSAgICAgICAgICAgICAgMAo+ICAgICAgICoqIFVOUkVDT0dOSVpFRDogIDA1IDI0IDAwIDEwIDAx Cj4gICAgICAgKiogVU5SRUNPR05JWkVEOiAgMDUgMjQgMDEgMDAgMDAKPiAgICAgICAqKiBVTlJF Q09HTklaRUQ6ICAwNCAyNCAwMiAwMgo+ICAgICAgICoqIFVOUkVDT0dOSVpFRDogIDA1IDI0IDA2 IDAwIDAwCj4gICAgICAgRW5kcG9pbnQgRGVzY3JpcHRvcjoKPiAgICAgICAgIGJMZW5ndGggICAg ICAgICAgICAgICAgIDcKPiAgICAgICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDUKPiAgICAg ICAgIGJFbmRwb2ludEFkZHJlc3MgICAgIDB4ODYgIEVQIDYgSU4KPiAgICAgICAgIGJtQXR0cmli dXRlcyAgICAgICAgICAgIDMKPiAgICAgICAgICAgVHJhbnNmZXIgVHlwZSAgICAgICAgICAgIElu dGVycnVwdAo+ICAgICAgICAgICBTeW5jaCBUeXBlICAgICAgICAgICAgICAgTm9uZQo+ICAgICAg ICAgICBVc2FnZSBUeXBlICAgICAgICAgICAgICAgRGF0YQo+ICAgICAgICAgd01heFBhY2tldFNp emUgICAgIDB4MDAwYSAgMXggMTAgYnl0ZXMKPiAgICAgICAgIGJJbnRlcnZhbCAgICAgICAgICAg ICAgIDkKPiAgICAgICBFbmRwb2ludCBEZXNjcmlwdG9yOgo+ICAgICAgICAgYkxlbmd0aCAgICAg ICAgICAgICAgICAgNwo+ICAgICAgICAgYkRlc2NyaXB0b3JUeXBlICAgICAgICAgNQo+ICAgICAg ICAgYkVuZHBvaW50QWRkcmVzcyAgICAgMHg4NSAgRVAgNSBJTgo+ICAgICAgICAgYm1BdHRyaWJ1 dGVzICAgICAgICAgICAgMgo+ICAgICAgICAgICBUcmFuc2ZlciBUeXBlICAgICAgICAgICAgQnVs awo+ICAgICAgICAgICBTeW5jaCBUeXBlICAgICAgICAgICAgICAgTm9uZQo+ICAgICAgICAgICBV c2FnZSBUeXBlICAgICAgICAgICAgICAgRGF0YQo+ICAgICAgICAgd01heFBhY2tldFNpemUgICAg IDB4MDIwMCAgMXggNTEyIGJ5dGVzCj4gICAgICAgICBiSW50ZXJ2YWwgICAgICAgICAgICAgICAw Cj4gICAgICAgRW5kcG9pbnQgRGVzY3JpcHRvcjoKPiAgICAgICAgIGJMZW5ndGggICAgICAgICAg ICAgICAgIDcKPiAgICAgICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDUKPiAgICAgICAgIGJF bmRwb2ludEFkZHJlc3MgICAgIDB4MDQgIEVQIDQgT1VUCj4gICAgICAgICBibUF0dHJpYnV0ZXMg ICAgICAgICAgICAyCj4gICAgICAgICAgIFRyYW5zZmVyIFR5cGUgICAgICAgICAgICBCdWxrCj4g ICAgICAgICAgIFN5bmNoIFR5cGUgICAgICAgICAgICAgICBOb25lCj4gICAgICAgICAgIFVzYWdl IFR5cGUgICAgICAgICAgICAgICBEYXRhCj4gICAgICAgICB3TWF4UGFja2V0U2l6ZSAgICAgMHgw MjAwICAxeCA1MTIgYnl0ZXMKPiAgICAgICAgIGJJbnRlcnZhbCAgICAgICAgICAgICAgIDAKPiAg ICAgSW50ZXJmYWNlIERlc2NyaXB0b3I6Cj4gICAgICAgYkxlbmd0aCAgICAgICAgICAgICAgICAg OQo+ICAgICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDQKPiAgICAgICBiSW50ZXJmYWNlTnVt YmVyICAgICAgICA0Cj4gICAgICAgYkFsdGVybmF0ZVNldHRpbmcgICAgICAgMAo+ICAgICAgIGJO dW1FbmRwb2ludHMgICAgICAgICAgIDMKPiAgICAgICBiSW50ZXJmYWNlQ2xhc3MgICAgICAgMjU1 IFZlbmRvciBTcGVjaWZpYyBDbGFzcwo+ICAgICAgIGJJbnRlcmZhY2VTdWJDbGFzcyAgICAyNTUg VmVuZG9yIFNwZWNpZmljIFN1YmNsYXNzCj4gICAgICAgYkludGVyZmFjZVByb3RvY29sICAgIDI1 NSBWZW5kb3IgU3BlY2lmaWMgUHJvdG9jb2wKPiAgICAgICBpSW50ZXJmYWNlICAgICAgICAgICAg ICAwCj4gICAgICAgRW5kcG9pbnQgRGVzY3JpcHRvcjoKPiAgICAgICAgIGJMZW5ndGggICAgICAg ICAgICAgICAgIDcKPiAgICAgICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDUKPiAgICAgICAg IGJFbmRwb2ludEFkZHJlc3MgICAgIDB4ODggIEVQIDggSU4KPiAgICAgICAgIGJtQXR0cmlidXRl cyAgICAgICAgICAgIDMKPiAgICAgICAgICAgVHJhbnNmZXIgVHlwZSAgICAgICAgICAgIEludGVy cnVwdAo+ICAgICAgICAgICBTeW5jaCBUeXBlICAgICAgICAgICAgICAgTm9uZQo+ICAgICAgICAg ICBVc2FnZSBUeXBlICAgICAgICAgICAgICAgRGF0YQo+ICAgICAgICAgd01heFBhY2tldFNpemUg ICAgIDB4MDAwOCAgMXggOCBieXRlcwo+ICAgICAgICAgYkludGVydmFsICAgICAgICAgICAgICAg OQo+ICAgICAgIEVuZHBvaW50IERlc2NyaXB0b3I6Cj4gICAgICAgICBiTGVuZ3RoICAgICAgICAg ICAgICAgICA3Cj4gICAgICAgICBiRGVzY3JpcHRvclR5cGUgICAgICAgICA1Cj4gICAgICAgICBi RW5kcG9pbnRBZGRyZXNzICAgICAweDg3ICBFUCA3IElOCj4gICAgICAgICBibUF0dHJpYnV0ZXMg ICAgICAgICAgICAyCj4gICAgICAgICAgIFRyYW5zZmVyIFR5cGUgICAgICAgICAgICBCdWxrCj4g ICAgICAgICAgIFN5bmNoIFR5cGUgICAgICAgICAgICAgICBOb25lCj4gICAgICAgICAgIFVzYWdl IFR5cGUgICAgICAgICAgICAgICBEYXRhCj4gICAgICAgICB3TWF4UGFja2V0U2l6ZSAgICAgMHgw MjAwICAxeCA1MTIgYnl0ZXMKPiAgICAgICAgIGJJbnRlcnZhbCAgICAgICAgICAgICAgIDAKPiAg ICAgICBFbmRwb2ludCBEZXNjcmlwdG9yOgo+ICAgICAgICAgYkxlbmd0aCAgICAgICAgICAgICAg ICAgNwo+ICAgICAgICAgYkRlc2NyaXB0b3JUeXBlICAgICAgICAgNQo+ICAgICAgICAgYkVuZHBv aW50QWRkcmVzcyAgICAgMHgwNSAgRVAgNSBPVVQKPiAgICAgICAgIGJtQXR0cmlidXRlcyAgICAg ICAgICAgIDIKPiAgICAgICAgICAgVHJhbnNmZXIgVHlwZSAgICAgICAgICAgIEJ1bGsKPiAgICAg ICAgICAgU3luY2ggVHlwZSAgICAgICAgICAgICAgIE5vbmUKPiAgICAgICAgICAgVXNhZ2UgVHlw ZSAgICAgICAgICAgICAgIERhdGEKPiAgICAgICAgIHdNYXhQYWNrZXRTaXplICAgICAweDAyMDAg IDF4IDUxMiBieXRlcwo+ICAgICAgICAgYkludGVydmFsICAgICAgICAgICAgICAgMAo+IERldmlj ZSBRdWFsaWZpZXIgKGZvciBvdGhlciBkZXZpY2Ugc3BlZWQpOgo+ICAgYkxlbmd0aCAgICAgICAg ICAgICAgICAxMAo+ICAgYkRlc2NyaXB0b3JUeXBlICAgICAgICAgNgo+ICAgYmNkVVNCICAgICAg ICAgICAgICAgMi4wMAo+ICAgYkRldmljZUNsYXNzICAgICAgICAgICAgMCAoRGVmaW5lZCBhdCBJ bnRlcmZhY2UgbGV2ZWwpCj4gICBiRGV2aWNlU3ViQ2xhc3MgICAgICAgICAwCj4gICBiRGV2aWNl UHJvdG9jb2wgICAgICAgICAwCj4gICBiTWF4UGFja2V0U2l6ZTAgICAgICAgIDY0Cj4gICBiTnVt Q29uZmlndXJhdGlvbnMgICAgICAxCj4gRGV2aWNlIFN0YXR1czogICAgIDB4MDAwMAo+ICAgKEJ1 cyBQb3dlcmVkKQo+IAo+IC0tLQo+ICBkcml2ZXJzL3VzYi9zZXJpYWwvb3B0aW9uLmMgfCA5ICsr KysrKysrKwo+ICAxIGZpbGUgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvdXNiL3NlcmlhbC9vcHRpb24uYyBiL2RyaXZlcnMvdXNiL3NlcmlhbC9vcHRp b24uYwo+IGluZGV4IDNiMzUxMzg3NGNmZC4uMzcwYTAzNDIwNzJmIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvdXNiL3NlcmlhbC9vcHRpb24uYwo+ICsrKyBiL2RyaXZlcnMvdXNiL3NlcmlhbC9vcHRp b24uYwo+IEBAIC0yMzMsNiArMjMzLDggQEAgc3RhdGljIHZvaWQgb3B0aW9uX2luc3RhdF9jYWxs YmFjayhzdHJ1Y3QgdXJiICp1cmIpOwo+ICAvKiBUaGVzZSBRdWVjdGVsIHByb2R1Y3RzIHVzZSBR dWFsY29tbSdzIHZlbmRvciBJRCAqLwo+ICAjZGVmaW5lIFFVRUNURUxfUFJPRFVDVF9VQzIwCQkJ MHg5MDAzCj4gICNkZWZpbmUgUVVFQ1RFTF9QUk9EVUNUX1VDMTUJCQkweDkwOTAKPiArLyogVGhl c2UgWXVnYSBwcm9kdWN0cyB1c2UgUXVhbGNvbW0ncyB2ZW5kb3IgSUQgKi8KPiArI2RlZmluZSBZ VUdBX1BST0ZVQ1RfQ0xNOTIwX05DNQkJCTB4OTYyNQoKcy9QUk9GVUNUL1BST0RVQ1QvCgo+ICAK PiAgI2RlZmluZSBRVUVDVEVMX1ZFTkRPUl9JRAkJCTB4MmM3Ywo+ICAvKiBUaGVzZSBRdWVjdGVs IHByb2R1Y3RzIHVzZSBRdWVjdGVsJ3MgdmVuZG9yIElEICovCj4gQEAgLTY3NCw2ICs2NzYsMTAg QEAgc3RhdGljIGNvbnN0IHN0cnVjdCBvcHRpb25fYmxhY2tsaXN0X2luZm8gY2ludGVyaW9uX3Jt bmV0Ml9ibGFja2xpc3QgPSB7Cj4gIAkucmVzZXJ2ZWQgPSBCSVQoNCkgfCBCSVQoNSksCj4gIH07 Cj4gIAo+ICtzdGF0aWMgY29uc3Qgc3RydWN0IG9wdGlvbl9ibGFja2xpc3RfaW5mbyB5dWdhX2Ns bTkyMF9uYzVfYmxhY2tsaXN0ID0gewo+ICsJLnJlc2VydmVkID0gQklUKDApIHwgQklUKDEpIHwg QklUKDQpLAo+ICt9OwoKRG8geW91IHJlYWxseSBuZWVkIHRvIGJsYWNrbGlzdCB0aGUgZmlyc3Qg aW50ZXJmYWNlPwoKSWYgc28gaXQgbG9va3MgbGlrZSB5b3UgY291bGQgdXNlIFVTQl9ERVZJQ0Vf QU5EX0lOVEVSRkFDRV9JTkZPKCkgdG8KYXZvaWQgdGhlIGJsYWNrbGlzdCBhbHRvZ2V0aGVyLgoK PiArCj4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdXNiX2RldmljZV9pZCBvcHRpb25faWRzW10gPSB7 Cj4gIAl7IFVTQl9ERVZJQ0UoT1BUSU9OX1ZFTkRPUl9JRCwgT1BUSU9OX1BST0RVQ1RfQ09MVCkg fSwKPiAgCXsgVVNCX0RFVklDRShPUFRJT05fVkVORE9SX0lELCBPUFRJT05fUFJPRFVDVF9SSUNP TEEpIH0sCj4gQEAgLTExNzgsNiArMTE4NCw5IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdXNiX2Rl dmljZV9pZCBvcHRpb25faWRzW10gPSB7Cj4gIAl7IFVTQl9ERVZJQ0UoUVVBTENPTU1fVkVORE9S X0lELCBRVUVDVEVMX1BST0RVQ1RfVUMxNSl9LAo+ICAJeyBVU0JfREVWSUNFKFFVQUxDT01NX1ZF TkRPUl9JRCwgUVVFQ1RFTF9QUk9EVUNUX1VDMjApLAo+ICAJICAuZHJpdmVyX2luZm8gPSAoa2Vy bmVsX3Vsb25nX3QpJm5ldF9pbnRmNF9ibGFja2xpc3QgfSwKPiArCS8qIFl1Z2EgcHJvZHVjdHMg dXNlIFF1YWxjb21tIHZlbmRvciBJRCAqLwo+ICsJeyBVU0JfREVWSUNFKFFVQUxDT01NX1ZFTkRP Ul9JRCwgWVVHQV9QUk9GVUNUX0NMTTkyMF9OQzUpLAo+ICsJICAuZHJpdmVyX2luZm8gPSAoa2Vy bmVsX3Vsb25nX3QpJnl1Z2FfY2xtOTIwX25jNV9ibGFja2xpc3QgfSwKPiAgCS8qIFF1ZWN0ZWwg cHJvZHVjdHMgdXNpbmcgUXVlY3RlbCB2ZW5kb3IgSUQgKi8KPiAgCXsgVVNCX0RFVklDRShRVUVD VEVMX1ZFTkRPUl9JRCwgUVVFQ1RFTF9QUk9EVUNUX0VDMjEpLAo+ICAJICAuZHJpdmVyX2luZm8g PSAoa2VybmVsX3Vsb25nX3QpJm5ldF9pbnRmNF9ibGFja2xpc3QgfSwKClRoYW5rcywKSm9oYW4K LS0tClRvIHVuc3Vic2NyaWJlIGZyb20gdGhpcyBsaXN0OiBzZW5kIHRoZSBsaW5lICJ1bnN1YnNj cmliZSBsaW51eC11c2IiIGluCnRoZSBib2R5IG9mIGEgbWVzc2FnZSB0byBtYWpvcmRvbW9Admdl ci5rZXJuZWwub3JnCk1vcmUgbWFqb3Jkb21vIGluZm8gYXQgIGh0dHA6Ly92Z2VyLmtlcm5lbC5v cmcvbWFqb3Jkb21vLWluZm8uaHRtbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S936793AbdLRQw7 (ORCPT ); Mon, 18 Dec 2017 11:52:59 -0500 Received: from mail-lf0-f45.google.com ([209.85.215.45]:36114 "EHLO mail-lf0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S935950AbdLRQww (ORCPT ); Mon, 18 Dec 2017 11:52:52 -0500 X-Google-Smtp-Source: ACJfBovu7v6PnL2oPI67LoHEifd0b4s7ZmS8bYhb3Qov4oNKnofMIuv3G+V4PYHeS2rffB2CMm72xA== Date: Mon, 18 Dec 2017 17:52:48 +0100 From: Johan Hovold To: SZ Lin Cc: Taiyi Wu , Johan Hovold , Greg Kroah-Hartman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, =?iso-8859-1?Q?Bj=F8rn?= Mork Subject: Re: [PATCH] USB: serial: option: adding support for YUGA CLM920-NC5 Message-ID: <20171218165248.GF3374@localhost> References: <20171215103203.2579-1-sz.lin@moxa.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20171215103203.2579-1-sz.lin@moxa.com> User-Agent: Mutt/1.7.2 (2016-11-26) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org [ +CC: Bjørn ] On Fri, Dec 15, 2017 at 06:32:03PM +0800, SZ Lin wrote: > This patch adds support for YUGA CLM920-NC5 PID 0x9625 USB modem to option > driver. Could you specify what each interface is used for here? > Signed-off-by: Taiyi Wu > Signed-off-by: SZ Lin Is SZ your legal name? > --- > > Please refer to following lsusb output: > > Bus 001 Device 003: ID 05c6:9625 Qualcomm, Inc. > Device Descriptor: > bLength 18 > bDescriptorType 1 > bcdUSB 2.00 > bDeviceClass 0 (Defined at Interface level) > bDeviceSubClass 0 > bDeviceProtocol 0 > bMaxPacketSize0 64 > idVendor 0x05c6 Qualcomm, Inc. > idProduct 0x9625 > bcdDevice 3.18 > iManufacturer 1 Shanghai Yuge > iProduct 2 YUGA Incorporated > iSerial 3 0123456789ABCDEF > bNumConfigurations 1 > Configuration Descriptor: > bLength 9 > bDescriptorType 2 > wTotalLength 183 > bNumInterfaces 5 > bConfigurationValue 1 > iConfiguration 0 > bmAttributes 0xa0 > (Bus Powered) > Remote Wakeup > MaxPower 500mA > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 0 > bAlternateSetting 0 > bNumEndpoints 2 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 255 Vendor Specific Subclass > bInterfaceProtocol 255 Vendor Specific Protocol > iInterface 0 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x81 EP 1 IN > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 0 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x01 EP 1 OUT > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 0 > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 1 > bAlternateSetting 0 > bNumEndpoints 2 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 66 > bInterfaceProtocol 1 > iInterface 6 ADB Interface > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x02 EP 2 OUT > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 0 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x82 EP 2 IN > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 0 > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 2 > bAlternateSetting 0 > bNumEndpoints 3 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 0 > bInterfaceProtocol 0 > iInterface 0 > ** UNRECOGNIZED: 05 24 00 10 01 > ** UNRECOGNIZED: 05 24 01 00 00 > ** UNRECOGNIZED: 04 24 02 02 > ** UNRECOGNIZED: 05 24 06 00 00 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x84 EP 4 IN > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x000a 1x 10 bytes > bInterval 9 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x83 EP 3 IN > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 0 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x03 EP 3 OUT > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 0 > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 3 > bAlternateSetting 0 > bNumEndpoints 3 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 0 > bInterfaceProtocol 0 > iInterface 0 > ** UNRECOGNIZED: 05 24 00 10 01 > ** UNRECOGNIZED: 05 24 01 00 00 > ** UNRECOGNIZED: 04 24 02 02 > ** UNRECOGNIZED: 05 24 06 00 00 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x86 EP 6 IN > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x000a 1x 10 bytes > bInterval 9 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x85 EP 5 IN > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 0 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x04 EP 4 OUT > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 0 > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 4 > bAlternateSetting 0 > bNumEndpoints 3 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 255 Vendor Specific Subclass > bInterfaceProtocol 255 Vendor Specific Protocol > iInterface 0 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x88 EP 8 IN > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x0008 1x 8 bytes > bInterval 9 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x87 EP 7 IN > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 0 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x05 EP 5 OUT > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 0 > Device Qualifier (for other device speed): > bLength 10 > bDescriptorType 6 > bcdUSB 2.00 > bDeviceClass 0 (Defined at Interface level) > bDeviceSubClass 0 > bDeviceProtocol 0 > bMaxPacketSize0 64 > bNumConfigurations 1 > Device Status: 0x0000 > (Bus Powered) > > --- > drivers/usb/serial/option.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c > index 3b3513874cfd..370a0342072f 100644 > --- a/drivers/usb/serial/option.c > +++ b/drivers/usb/serial/option.c > @@ -233,6 +233,8 @@ static void option_instat_callback(struct urb *urb); > /* These Quectel products use Qualcomm's vendor ID */ > #define QUECTEL_PRODUCT_UC20 0x9003 > #define QUECTEL_PRODUCT_UC15 0x9090 > +/* These Yuga products use Qualcomm's vendor ID */ > +#define YUGA_PROFUCT_CLM920_NC5 0x9625 s/PROFUCT/PRODUCT/ > > #define QUECTEL_VENDOR_ID 0x2c7c > /* These Quectel products use Quectel's vendor ID */ > @@ -674,6 +676,10 @@ static const struct option_blacklist_info cinterion_rmnet2_blacklist = { > .reserved = BIT(4) | BIT(5), > }; > > +static const struct option_blacklist_info yuga_clm920_nc5_blacklist = { > + .reserved = BIT(0) | BIT(1) | BIT(4), > +}; Do you really need to blacklist the first interface? If so it looks like you could use USB_DEVICE_AND_INTERFACE_INFO() to avoid the blacklist altogether. > + > static const struct usb_device_id option_ids[] = { > { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_COLT) }, > { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA) }, > @@ -1178,6 +1184,9 @@ static const struct usb_device_id option_ids[] = { > { USB_DEVICE(QUALCOMM_VENDOR_ID, QUECTEL_PRODUCT_UC15)}, > { USB_DEVICE(QUALCOMM_VENDOR_ID, QUECTEL_PRODUCT_UC20), > .driver_info = (kernel_ulong_t)&net_intf4_blacklist }, > + /* Yuga products use Qualcomm vendor ID */ > + { USB_DEVICE(QUALCOMM_VENDOR_ID, YUGA_PROFUCT_CLM920_NC5), > + .driver_info = (kernel_ulong_t)&yuga_clm920_nc5_blacklist }, > /* Quectel products using Quectel vendor ID */ > { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC21), > .driver_info = (kernel_ulong_t)&net_intf4_blacklist }, Thanks, Johan