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: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps From: Guenter Roeck Message-Id: <20190315165355.GA4313@roeck-us.net> Date: Fri, 15 Mar 2019 09:53:55 -0700 To: Hans de Goede Cc: Greg Kroah-Hartman , Heikki Krogerus , linux-usb@vger.kernel.org List-ID: T24gRnJpLCBNYXIgMTUsIDIwMTkgYXQgMDU6NDM6MDVQTSArMDEwMCwgSGFucyBkZSBHb2VkZSB3 cm90ZToKPiBIaSwKPiAKPiBPbiAzLzE1LzE5IDM6NTcgUE0sIEd1ZW50ZXIgUm9lY2sgd3JvdGU6 Cj4gPk9uIEZyaSwgTWFyIDE1LCAyMDE5IGF0IDAzOjQyOjE5UE0gKzAxMDAsIEhhbnMgZGUgR29l ZGUgd3JvdGU6Cj4gPj5QRCAyLjAgc2lua3MgYXJlIHN1cHBvc2VkIHRvIGFjY2VwdCBzcmMtY2Fw YWJpbGl0aWVzIHdpdGggYSAzLjAgaGVhZGVyIGFuZAo+ID4+c2ltcGx5IGlnbm9yZSBhbnkgc3Jj IFBET3Mgd2hpY2ggdGhlIHNpbmsgZG9lcyBub3QgdW5kZXJzdGFuZCBzdWNoIGFzIFBQUwo+ID4+ YnV0IHNvbWUgMi4wIHNpbmtzIGluc3RlYWQgaWdub3JlIHRoZSBlbnRpcmUgUERfREFUQV9TT1VS Q0VfQ0FQIG1lc3NhZ2UsCj4gPj5jYXVzaW5nIGNvbnRyYWN0IG5lZ290aWF0aW9uIHRvIGZhaWwu Cj4gPj4KPiA+PlRoaXMgY29tbWl0IGZpeGVzIHN1Y2ggc2lua3Mgbm90IHdvcmtpbmcgYnkgcmUt dHJ5aW5nIHRoZSBjb250cmFjdAo+ID4+bmVnb3RpYXRpb24gd2l0aCBQRC0yLjAgc291cmNlLWNh cHMgbWVzc2FnZXMgaWYgd2UgZG9uJ3QgaGF2ZSBhIGNvbnRyYWN0Cj4gPj5hZnRlciBQRF9OX0hB UkRfUkVTRVRfQ09VTlQgaGFyZC1yZXNldCBhdHRlbXB0cy4KPiA+Pgo+ID4+VGhlIHByb2JsZW0g Zml4ZWQgYnkgdGhpcyBjb21taXQgd2FzIG5vdGljZWQgd2l0aCBhIFR5cGUtQyB0byBWR0EgZG9u Z2xlLgo+ID4+Cj4gPj5TaWduZWQtb2ZmLWJ5OiBIYW5zIGRlIEdvZWRlIDxoZGVnb2VkZUByZWRo YXQuY29tPgo+ID4+LS0tCj4gPj5UaGUgVHlwZS1DIHRvIFZHQSBkb25nbGUgb24gd2hpY2ggdGhp cyBlbmNvdW50ZXJlZCBsb29rcyBsaWtlIHRoaXMgb25lOgo+ID4+aHR0cHM6Ly93d3cuYWxpZXhw cmVzcy5jb20vaXRlbS9NYWxlLVVTQi0zLTEtVHlwZS1DLVVTQi1DLXRvLUZlbWFsZS1WR0EtQWRh cHRlci1DYWJsZS0xMEdicHMtZm9yLU5ldy8zMjg5ODI3NDQ3Ni5odG1sCj4gPj4tLS0KPiA+PiAg ZHJpdmVycy91c2IvdHlwZWMvdGNwbS90Y3BtLmMgfCAzNCArKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystCj4gPj4gIDEgZmlsZSBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAxIGRl bGV0aW9uKC0pCj4gPj4KPiA+PmRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi90eXBlYy90Y3BtL3Rj cG0uYyBiL2RyaXZlcnMvdXNiL3R5cGVjL3RjcG0vdGNwbS5jCj4gPj5pbmRleCBmMWMzOWEzYzc1 MzQuLjNmOGRmODQ1ZDFhNSAxMDA2NDQKPiA+Pi0tLSBhL2RyaXZlcnMvdXNiL3R5cGVjL3RjcG0v dGNwbS5jCj4gPj4rKysgYi9kcml2ZXJzL3VzYi90eXBlYy90Y3BtL3RjcG0uYwo+ID4+QEAgLTM3 LDYgKzM3LDcgQEAKPiA+PiAgCVMoU1JDX0FUVEFDSEVEKSwJCQlcCj4gPj4gIAlTKFNSQ19TVEFS VFVQKSwJCQkJXAo+ID4+ICAJUyhTUkNfU0VORF9DQVBBQklMSVRJRVMpLAkJXAo+ID4+KwlTKFNS Q19TRU5EX0NBUF9MT1dFUl9QRF9SRVZJU0lPTiksCVwKPiA+PiAgCVMoU1JDX05FR09USUFURV9D QVBBQklMSVRJRVMpLAkJXAo+ID4+ICAJUyhTUkNfVFJBTlNJVElPTl9TVVBQTFkpLAkJXAo+ID4+ ICAJUyhTUkNfUkVBRFkpLAkJCQlcCj4gPj5AQCAtMjc5Miw2ICsyNzkzLDI5IEBAIHN0YXRpYyBp bmxpbmUgZW51bSB0Y3BtX3N0YXRlIGhhcmRfcmVzZXRfc3RhdGUoc3RydWN0IHRjcG1fcG9ydCAq cG9ydCkKPiA+PiAgCXJldHVybiBTTktfVU5BVFRBQ0hFRDsKPiA+PiAgfQo+ID4+Ky8qCj4gPj4r ICogUEQgMi4wIHNpbmtzIGFyZSBzdXBwb3NlZCB0byBhY2NlcHQgc3JjLWNhcGFiaWxpdGllcyB3 aXRoIGEgMy4wIGhlYWRlciBhbmQKPiA+PisgKiBzaW1wbHkgaWdub3JlIGFueSBzcmMgUERPcyB3 aGljaCB0aGUgc2luayBkb2VzIG5vdCB1bmRlcnN0YW5kIHN1Y2ggYXMgUFBTCj4gPj4rICogYnV0 IHNvbWUgMi4wIHNpbmtzIGluc3RlYWQgaWdub3JlIHRoZSBlbnRpcmUgUERfREFUQV9TT1VSQ0Vf Q0FQIG1lc3NhZ2UsCj4gPj4rICogY2F1c2luZyBjb250cmFjdCBuZWdvdGlhdGlvbiB0byBmYWls Lgo+ID4+KyAqCj4gPj4rICogVGhpcyBmdW5jdGlvbiBpcyB1c2VkIGJ5IHRoZSBTUkNfU0VORF9D QVBBQklMSVRJRVMgc3RhdGUgaW4KPiA+PisgKiBydW5fc3RhdGVfbWFjaGluZSgpIHRvIHdvcmsg YXJvdW5kIHRoaXMuCj4gPj4rICoKPiA+PisgKiBBZnRlciBQRF9OX0hBUkRfUkVTRVRfQ09VTlQg aGFyZC1yZXNldCBhdHRlbXB0cyB0aGlzIGZ1bmN0aW9uIHNlbGVjdHMKPiA+PisgKiBTUkNfU0VO RF9DQVBfTE9XRVJfUERfUkVWSVNJT04gYXMgc3RhdGUgdG8gc2V0IGFmdGVyIHRoZSBuZXh0IHRp bWVvdXQsCj4gPj4rICogdGhpcyBzdGF0ZSB3aWxsIGZhbGxiYWNrIHRvIGEgbG93ZXIgUEQgcmV2 aXNpb24gYW5kIHRoZW4gdHJ5IHNlbmRpbmcgdGhlCj4gPj4rICogc3JjLWNhcGFiaWxpdGllcyBh Z2Fpbi4KPiA+PisgKi8KPiA+PitzdGF0aWMgaW5saW5lIGVudW0gdGNwbV9zdGF0ZSBzcmNfc2Vu ZF9jYXBfdGltZW91dF9zdGF0ZShzdHJ1Y3QgdGNwbV9wb3J0ICpwb3J0KQo+ID4+K3sKPiA+PisJ aWYgKHBvcnQtPmhhcmRfcmVzZXRfY291bnQgPCBQRF9OX0hBUkRfUkVTRVRfQ09VTlQpCj4gPj4r CQlyZXR1cm4gSEFSRF9SRVNFVF9TRU5EOwo+ID4+KwlpZiAocG9ydC0+bmVnb3RpYXRlZF9yZXYg PiBQRF9SRVYyMCkKPiA+PisJCXJldHVybiBTUkNfU0VORF9DQVBfTE9XRVJfUERfUkVWSVNJT047 Cj4gPj4rCXJldHVybiBoYXJkX3Jlc2V0X3N0YXRlKHBvcnQpOwo+ID4+K30KPiA+PisKPiA+PiAg c3RhdGljIGlubGluZSBlbnVtIHRjcG1fc3RhdGUgdW5hdHRhY2hlZF9zdGF0ZShzdHJ1Y3QgdGNw bV9wb3J0ICpwb3J0KQo+ID4+ICB7Cj4gPj4gIAlpZiAocG9ydC0+cG9ydF90eXBlID09IFRZUEVD X1BPUlRfRFJQKSB7Cj4gPj5AQCAtMjk2NiwxMCArMjk5MCwxOCBAQCBzdGF0aWMgdm9pZCBydW5f c3RhdGVfbWFjaGluZShzdHJ1Y3QgdGNwbV9wb3J0ICpwb3J0KQo+ID4+ICAJCQkvKiBwb3J0LT5o YXJkX3Jlc2V0X2NvdW50ID0gMDsgKi8KPiA+PiAgCQkJcG9ydC0+Y2Fwc19jb3VudCA9IDA7Cj4g Pj4gIAkJCXBvcnQtPnBkX2NhcGFibGUgPSB0cnVlOwo+ID4+LQkJCXRjcG1fc2V0X3N0YXRlX2Nv bmQocG9ydCwgaGFyZF9yZXNldF9zdGF0ZShwb3J0KSwKPiA+PisJCQl0Y3BtX3NldF9zdGF0ZV9j b25kKHBvcnQsCj4gPj4rCQkJCQkgICAgc3JjX3NlbmRfY2FwX3RpbWVvdXRfc3RhdGUocG9ydCks Cj4gPj4gIAkJCQkJICAgIFBEX1RfU0VORF9TT1VSQ0VfQ0FQKTsKPiA+PiAgCQl9Cj4gPj4gIAkJ YnJlYWs7Cj4gPj4rCWNhc2UgU1JDX1NFTkRfQ0FQX0xPV0VSX1BEX1JFVklTSU9OOgo+ID4+KwkJ aWYgKFdBUk5fT04ocG9ydC0+bmVnb3RpYXRlZF9yZXYgPD0gUERfUkVWMjApKQo+ID4+KwkJCWJy ZWFrOwo+ID4KPiA+SSByZWFsbHkgZGlzbGlrZSB0aGUgV0FSTl9PTiBoZXJlLiBBIGJhZCByZW1v dGUgY2FuIHBvdGVudGlhbGx5IHRyaWdnZXIKPiA+dGhpcywgd2hpY2ggb24gc3lzdGVtcyB3aXRo IGNyYXNoIG9uIHdhcm5pbmcgZW5hYmxlZCBjYW4gcmVzdWx0IGluIGEKPiA+cmVib290LiBKdXN0 IHJldmVydCB0byB0aGUgb3JpZ2luYWwgYmVoYXZpb3IgaGVyZSwgYW5kIG1heWJlIGFkZAo+ID5h IHRjcG0gbG9nIG1lc3NhZ2UuCj4gCj4gSG93IHdvdWxkIGEgYmFkIHJlbW90ZSB0cmlnZ2VyIHRo aXM/Cj4gCj4gV2Ugb25seSBldmVyIGNhbGwgc2V0X3N0YXRlIHdpdGggU1JDX1NFTkRfQ0FQX0xP V0VSX1BEX1JFVklTSU9OIGluIHRoZSBuZXcKPiBzcmNfc2VuZF9jYXBfdGltZW91dF9zdGF0ZSB3 aGljaCBoYXM6Cj4gCj4gCWlmIChwb3J0LT5uZWdvdGlhdGVkX3JldiA+IFBEX1JFVjIwKQo+IAkJ cmV0dXJuIFNSQ19TRU5EX0NBUF9MT1dFUl9QRF9SRVZJU0lPTjsKPiAKPiBTbyB3ZSByZWFsbHkg c2hvdWxkIG5ldmVyIGhpdCB0aGUgV0FSTl9PTiwgb2Ygd2UgZG8gaGl0IHRoZSBXQVJOX09OCj4g c29tZXRoaW5nIGlzIHNlcmlvdXNseSB3cm9uZy4KPiAKCklmIHRoYXQgc2l0dWF0aW9uIGNhbid0 IGhhcHBlbiwgdGhlIGNoZWNrIHNob3VsZCBub3QgYmUgdGhlcmUgaW4gdGhlIGZpcnN0CnBsYWNl LiBPdGhlcndpc2UgeW91IGNvdWxkIGxpdHRlciB0aGUgaW1wbGVtZW50YXRpb24gd2l0aCBXQVJO X09OIGFsbCBvdmVyCnRoZSBwbGFjZSwgYW5kIG1ha2UgaXQgYWxsIGJ1dCB1bnJlYWRhYmxlLiBJ IGFtIG5vdCBpbiBmYXZvciBvZiBjb2RlIGxpa2UKdGhhdC4KCkd1ZW50ZXIKCj4gUmVnYXJkcywK PiAKPiBIYW5zCj4gCj4gCj4gCj4gPgo+ID5HdWVudGVyCj4gPgo+ID4+KwkJcG9ydC0+bmVnb3Rp YXRlZF9yZXYtLTsKPiA+PisJCXBvcnQtPmhhcmRfcmVzZXRfY291bnQgPSAwOwo+ID4+KwkJdGNw bV9zZXRfc3RhdGUocG9ydCwgU1JDX1NFTkRfQ0FQQUJJTElUSUVTLCAwKTsKPiA+PisJCWJyZWFr Owo+ID4+ICAJY2FzZSBTUkNfTkVHT1RJQVRFX0NBUEFCSUxJVElFUzoKPiA+PiAgCQlyZXQgPSB0 Y3BtX3BkX2NoZWNrX3JlcXVlc3QocG9ydCk7Cj4gPj4gIAkJaWYgKHJldCA8IDApIHsKPiA+Pi0t IAo+ID4+Mi4yMC4xCj4gPj4K