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: usbserial: pl2303 tx xon/xoff flow control From: Florian Zumbiehl Message-Id: <20180517033921.GM4749@florz.florz.de> Date: Thu, 17 May 2018 05:39:21 +0200 To: Johan Hovold Cc: linux-usb@vger.kernel.org List-ID: SGksCgo+ID4gTm90ZSB0aGF0IHRoZSBwYXRjaCBoYXMgb25seSBiZWVuIGZ1bGx5IHRlc3RlZCB3 aXRoIGtlcm5lbCA0LjkuMjgsIGFuZAo+ID4gdGVzdC1jb21waWxlZCBhZ2FpbnN0IDQuMTYuOC4g VGVzdGVkIG9ubHkgd2l0aCB0aGUgcGwyMzAzIGFkYXB0ZXJzIEkgaGF2ZQo+ID4gYXZhaWxhYmxl ICh3aGljaCBzZWVtIHRvIGJlIHR5cGUgMCBpZiBJIGludGVycHJldCB0aGUgY29kZSBjb3JyZWN0 bHkpLCBJCj4gPiBkb24ndCBoYXZlIGEgY2x1ZSB3aGV0aGVyIHRoaXMgd29ya3Mgd2l0aCBvdGhl ciB2ZXJzaW9ucyBvZiB0aGUgY2hpcC4KPiAKPiBXaGF0J3MgdGhlIHVzYi1kZXZpY2VzIChvciBs c3VzYiAtdikgb3V0cHV0IGZvciB5b3VyIGRldmljZT8KCnwgVDogIEJ1cz0wNiBMZXY9MDEgUHJu dD0wMSBQb3J0PTAyIENudD0wMiBEZXYjPSAgNCBTcGQ9MTIgIE14Q2g9IDAKfCBEOiAgVmVyPSAx LjEwIENscz0wMCg+aWZjICkgU3ViPTAwIFByb3Q9MDAgTXhQUz02NCAjQ2Zncz0gIDEKfCBQOiAg VmVuZG9yPTA2N2IgUHJvZElEPTIzMDMgUmV2PTAzLjAwCnwgUzogIE1hbnVmYWN0dXJlcj1Qcm9s aWZpYyBUZWNobm9sb2d5IEluYy4KfCBTOiAgUHJvZHVjdD1VU0ItU2VyaWFsIENvbnRyb2xsZXIK fCBDOiAgI0lmcz0gMSBDZmcjPSAxIEF0cj04MCBNeFB3cj0xMDBtQQp8IEk6ICBJZiM9IDAgQWx0 PSAwICNFUHM9IDMgQ2xzPWZmKHZlbmQuKSBTdWI9MDAgUHJvdD0wMCBEcml2ZXI9cGwyMzAzCgo+ ID4gLS0tIGxpbnV4LTQuMTYuOC9kcml2ZXJzL3VzYi9zZXJpYWwvcGwyMzAzLmMub3JpZwkyMDE4 LTA1LTA5IDA5OjUzOjE0LjAwMDAwMDAwMCArMDIwMAo+ID4gKysrIGxpbnV4LTQuMTYuOC9kcml2 ZXJzL3VzYi9zZXJpYWwvcGwyMzAzLmMJMjAxOC0wNS0xNCAwNDozMjoyNy44NjA3ODA4NTYgKzAy MDAKPiA+IEBAIC01NDQsOCArNTQ0LDEyIEBAIHN0YXRpYyB2b2lkIHBsMjMwM19zZXRfdGVybWlv cyhzdHJ1Y3QgdHQKPiA+ICAJaW50IHJldDsKPiA+ICAJdTggY29udHJvbDsKPiA+ICAKPiA+IC0J aWYgKG9sZF90ZXJtaW9zICYmICF0dHlfdGVybWlvc19od19jaGFuZ2UoJnR0eS0+dGVybWlvcywg b2xkX3Rlcm1pb3MpKQo+ID4gLQkJcmV0dXJuOwo+ID4gKwlpZiAob2xkX3Rlcm1pb3MgJiYKPiA+ ICsJCSEodHR5X3Rlcm1pb3NfaHdfY2hhbmdlKCZ0dHktPnRlcm1pb3MsIG9sZF90ZXJtaW9zKSB8 fAo+ID4gKwkJICAoKHR0eS0+dGVybWlvcy5jX2lmbGFnIF4gb2xkX3Rlcm1pb3MtPmNfaWZsYWcp ICYgKElYT04gfCBJWEFOWSkpIHx8Cj4gPiArCQkgIHR0eS0+dGVybWlvcy5jX2NjW1ZTVE9QXSAh PSBvbGRfdGVybWlvcy0+Y19jY1tWU1RPUF0gfHwKPiA+ICsJCSAgdHR5LT50ZXJtaW9zLmNfY2Nb VlNUQVJUXSAhPSBvbGRfdGVybWlvcy0+Y19jY1tWU1RBUlRdKSkKPiAKPiBVc2UgYSBoZWxwZXIg ZnVuY3Rpb24gZm9yIHRoaXMgKGlmIGV2ZXJ5dGhpbmcgaXMgaW5kZWVkIG5lZWRlZCwgc2VlCj4g YmVsb3cpLgo+IAo+ID4gKwkJCXJldHVybjsKPiAKPiBPZGQgaW5kZW50YXRpb24gKHdoaWNoIGNo ZWNrcGF0Y2ggd291bGQgaGF2ZSBjYXVnaHQpLgoKV2VsbCwgaXQgZGlkLCBidXQgaXQgZGlkbid0 IGV4YWN0bHkgb2ZmZXIgYSBzdWdnZXN0aW9uIGFzIHRvIGhvdyB0bwpyZWZvcm1hdCB0aGluZ3Mg dGhhdCB3b3VsZCBzdGlsbCBiZSByZWFkYWJsZSwgbm9yIGRvZXMgdGhlIHN0eWxlIGd1aWRlLApB RkFJQ1MsIHNvIEkga2VwdCBpdCBhcyBpdCBpcy4gKEFsc28sIEkgZG91YnQgdGhhdCBoYWQgSSBl bmNvdW50ZXJlZCB0aGlzCmNvbmRpdGlvbiBtb3ZlZCBvdXQgb2YgbGluZSBpbnRvIGEgc2VwYXJh dGUgZnVuY3Rpb24gdGhhdCB3b3VsZCBoYXZlIG1hZGUKaXQgZWFzaWVyIGZvciBtZSB0byBmb2xs b3cgd2hhdCdzIGdvaW5nIG9uLikKCj4gPiAgCWJ1ZiA9IGt6YWxsb2MoNywgR0ZQX0tFUk5FTCk7 Cj4gPiAgCWlmICghYnVmKSB7Cj4gPiBAQCAtNjYyLDYgKzY2Niw5IEBAIHN0YXRpYyB2b2lkIHBs MjMwM19zZXRfdGVybWlvcyhzdHJ1Y3QgdHQKPiA+ICAJCQlwbDIzMDNfdmVuZG9yX3dyaXRlKHNl cmlhbCwgMHgwLCAweDQxKTsKPiA+ICAJCWVsc2UKPiA+ICAJCQlwbDIzMDNfdmVuZG9yX3dyaXRl KHNlcmlhbCwgMHgwLCAweDYxKTsKPiA+ICsJfSBlbHNlIGlmIChJX0lYT04odHR5KSAmJiAhSV9J WEFOWSh0dHkpICYmCj4gPiArCQkgICBTVEFSVF9DSEFSKHR0eSkgPT0gMHgxMSAmJiBTVE9QX0NI QVIodHR5KSA9PSAweDEzKSB7Cj4gCj4gSWYgdGhlIGRldmljZSBkb2VzIG5vdCBzdXBwb3J0IElY QU5ZLCBJIHRoaW5rIHlvdSBzaG91bGQganVzdCBjbGVhciB0aGF0Cj4gYml0IHRvIGluZGljYXRl IGxhY2sgb2Ygc3VwcG9ydC4KPiAKPiBBbmQgdGhlIHN0YXJ0IGFuZCBzdG9wIGNoYXJhY3RlcnMg Y2Fubm90IGJlIG1vZGlmaWVkIChhcyBmYXIgYXMgeW91Cj4ga25vdyk/IFRoZW4gd2Ugc2hvdWxk IHByb2JhYmx5IHNldCB0aGVzZSBpbiB0aGUgdGVybWlvcyB3aGVuZXZlciBJWE9OIGlzCj4gc2V0 IGFzIHdlbGwgc2luY2UgdXNic2VyaWFsIGRvZXMgbm90IHN1cHBvcnQgZmFsbGluZyBiYWNrIHRv IHRoZQo+IGxpbmUtZGlzY2lwbGluZSBJWE9OIGltcGxlbWVudGF0aW9uLgoKSSBkb24ndCBrbm93 IGhvdyB0byBlbmFibGUgSVhBTlkgb3IgY2hhbmdlIHRoZSBjb250cm9sIGNoYXJhY3RlcnMsIHNv IEkgYW0Kd29ya2luZyB3aXRoIHdoYXQgSSBkbyBrbm93IChhbHNvLCBJIGd1ZXNzIHRoZSBzY3Jl ZW5zaG90IG9mIHRoZSAiUk9NCnByb2dyYW1taW5nIHRvb2wiIGluIHRoZSAiZGF0YXNoZWV0IiBz dWdnZXN0cyB0aGF0IG5vbmUgb2YgdGhhdCBpcwpzdXBwb3J0ZWQpLgoKTm93LCBJIGFncmVlIHRo YXQgc2lnbmFsaW5nIGxhY2sgb2Ygc3VwcG9ydCB3b3VsZCBiZSBiZXR0ZXIgaW4gZ2VuZXJhbCwg YnV0Cml0IGRvZXMgY2hhbmdlIHdoYXQgdGhlIGNvZGUgZG9lcyBmb3IgKHN0aWxsKSB1bnN1cHBv cnRlZCBjYXNlcy4gQWZ0ZXIgYWxsLAp1c2JzZXJpYWwgaW4gZ2VuZXJhbCBkb2VzIG5vdCBzaWdu YWwgdGhhdCBpdCBkb2Vzbid0IHN1cHBvcnQgSVhPTi9JWEFOWSwKYnV0IGp1c3QgcHJldGVuZHMg dGhhdCBpdCBkb2VzLiBTbywgaWYgdGhlcmUgaXMgYSBnb29kIHJlYXNvbiB3aHkgdXNic2VyaWFs Cmlnbm9yZXMgUE9TSVggb24gdGhpcyBwb2ludCwgSSB3b3VsZCB0aGluayB0aGF0IHdvdWxkIHN0 aWxsIGFwcGx5IGZvciB0aGUKcmVtYWluaW5nIHVuc3VwcG9ydGVkIGNhc2VzIGFmdGVyIHBhcnRp YWwgc3VwcG9ydCBpcyBpbXBsZW1lbnRlZD8hCgpIb3dldmVyLCBpbiBhbnkgY2FzZSwgdGhlIHBh cnQgb2Ygc2V0dGluZyBwYXJ0aWN1bGFyIGNvbnRyb2wgY2hhcmFjdGVycwpvbmx5IHdoZW4gSVhP TiBpcyBzZXQgc2VlbXMgbGlrZSBhIHZlcnkgYmFkIGlkZWEsIGluIHRoYXQgaXQgcG90ZW50aWFs bHkKY2hhbmdlcyBzZXR0aW5ncyB3aGVyZSBubyBjaGFuZ2Ugd2FzIHJlcXVlc3RlZCwgc28gdXNl cnNwYWNlIGNvZGUgY2Fubm90CnJlYWxseSBiZSBleHBlY3RlZCB0byBjaGVjayBmb3IgdGhhdCAo YW5kIGNlcnRhaW5seSBub3QgYmFzZWQgb24gUE9TSVgsCndoaWNoIGV4cGxpY2l0bHkgc3RhdGVz IHRoYXQgb3RoZXIgZmllbGRzIGhhdmUgdG8gc3RheSB1bmNoYW5nZWQpLiBTbywgaWYKd2Ugd2Fu dCB0byBnbyB3aXRoIGluZGljYXRpbmcgbGFjayBvZiBzdXBwb3J0LCBJIHRoaW5rIHRoZSBjb3Jy ZWN0IHN0cmF0ZWd5CndvdWxkIGJlIHRvIGFsd2F5cyBmb3JjZSB0aGUgY29udHJvbCBjaGFyYWN0 ZXJzIHRvIHdoYXQgdGhlIGhhcmR3YXJlCnN1cHBvcnRzLgoKPiA+ICsJCQlwbDIzMDNfdmVuZG9y X3dyaXRlKHNlcmlhbCwgMHgwLCAweGMwKTsKPiAKPiBPZGQgaW5kZW50YXRpb24gYWdhaW4uCgpT ZWUgYWJvdmUuCgpSZWdhcmRzLCBGbG9yaWFuCi0tLQpUbyB1bnN1YnNjcmliZSBmcm9tIHRoaXMg bGlzdDogc2VuZCB0aGUgbGluZSAidW5zdWJzY3JpYmUgbGludXgtdXNiIiBpbgp0aGUgYm9keSBv ZiBhIG1lc3NhZ2UgdG8gbWFqb3Jkb21vQHZnZXIua2VybmVsLm9yZwpNb3JlIG1ham9yZG9tbyBp bmZvIGF0ICBodHRwOi8vdmdlci5rZXJuZWwub3JnL21ham9yZG9tby1pbmZvLmh0bWwK