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: Extend the matching rules on PPS APDO selection From: Kyle Tso Message-Id: <20181206030227.9507-1-kyletso@google.com> Date: Thu, 6 Dec 2018 11:02:27 +0800 To: linux@roeck-us.net, heikki.krogerus@linux.intel.com, gregkh@linuxfoundation.org Cc: badhri@google.com, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Kyle Tso List-ID: Q3VycmVudCBtYXRjaGluZyBydWxlcyBlbnN1cmUgdGhhdCB0aGUgdm9sdGFnZSByYW5nZSBvZiBz ZWxlY3RlZCBTb3VyY2UKQ2FwYWJpbGl0eSBpcyBlbnRpcmVseSB3aXRoaW4gdGhlIHJhbmdlIGRl ZmluZWQgaW4gb25lIG9mIHRoZSBTaW5rCkNhcGFiaWxpdGllcy4gVGhpcyBpcyByZWFzb25hYmxl IGJ1dCBub3QgcHJhY3RpY2FsIGJlY2F1c2UgU2luayBtYXkgbm90CnN1cHBvcnQgd2lkZSByYW5n ZSBvZiB2b2x0YWdlIHdoZW4gc2lua2luZyBwb3dlciB3aGlsZSBTb3VyY2UgY291bGQKYWR2ZXJ0 aXNlIGl0cyBjYXBhYmlsaXRpZXMgaW4gcmFsZXRpdmVseSB3aWRlciByYW5nZS4gRm9yIGV4YW1w bGUsIGEKU291cmNlIFBETyBhZHZlcnRpc2luZyAzLjNWLTExVkAzQSAoOVYgUHJvZyBvZiBGaXhl ZCBOb21pbmFsIFZvbHRhZ2UpCndpbGwgbm90IGJlIHNlbGVjdGVkIGlmIHRoZSBTaW5rIHJlcXVp cmVzIDVWLTEyVkAzQSBQUFMgcG93ZXIuIEhvd2V2ZXIsCnRoZSBTaW5rIGNvdWxkIHdvcmsgd2Vs bCBpZiB0aGUgcmVxdWVzdGVkIHZvbHRhZ2UgcmFuZ2UgaW4gUkRPcyBpcwo1Vi0xMVZAM0EuCgpU byBpbXByb3ZlIHRoZSB1c2FiaWxpdHksIGNoYW5nZSB0aGUgbWF0Y2hpbmcgcnVsZXMgdG8gd2hh dCBsaXN0ZWQKYmVsb3c6CmEuIFRoZSBTb3VyY2UgUERPIGlzIHNlbGVjdGFibGUgaWYgYW55IHBv cnRpb24gb2YgdGhlIHZvbHRhZ2UgcmFuZ2UKICAgb3ZlcmxhcHMgb25lIG9mIHRoZSBTaW5rIFBE TydzIHZvbHRhZ2UgcmFuZ2UuCmIuIFRoZSBtYXhpbXVtIG9wZXJhdGlvbmFsIHZvbHRhZ2Ugd2ls bCBiZSB0aGUgbG93ZXIgb25lIGJldHdlZW4gdGhlCiAgIHNlbGVjdGVkIFNvdXJjZSBQRE8gYW5k IHRoZSBtYXRjaGluZyBTaW5rIFBETy4KYy4gVGhlIG1heGltdW0gcG93ZXIgd2lsbCBiZSB0aGUg bWF4aW11bSBvcGVyYXRpb25hbCB2b2x0YWdlIHRpbWVzIHRoZQogICBtYXhpbXVtIGN1cnJlbnQg ZGVmaW5lZCBpbiB0aGUgc2VsZWN0ZWQgU291cmNlIFBETwpkLiBTZWxlY3QgdGhlIFNvdXJjZSBQ RE8gd2l0aCB0aGUgaGlnaGVzdCBtYXhpbXVtIHBvd2VyCgpTaWduZWQtb2ZmLWJ5OiBLeWxlIFRz byA8a3lsZXRzb0Bnb29nbGUuY29tPgotLS0KIGRyaXZlcnMvdXNiL3R5cGVjL3RjcG0vdGNwbS5j IHwgMjkgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxNyBp bnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi90 eXBlYy90Y3BtL3RjcG0uYyBiL2RyaXZlcnMvdXNiL3R5cGVjL3RjcG0vdGNwbS5jCmluZGV4IDM2 MjBlZmVlMjY4OC4uMzAwMWRmN2JkNjAyIDEwMDY0NAotLS0gYS9kcml2ZXJzL3VzYi90eXBlYy90 Y3BtL3RjcG0uYworKysgYi9kcml2ZXJzL3VzYi90eXBlYy90Y3BtL3RjcG0uYwpAQCAtMjIxMyw3 ICsyMjEzLDggQEAgc3RhdGljIHVuc2lnbmVkIGludCB0Y3BtX3BkX3NlbGVjdF9wcHNfYXBkbyhz dHJ1Y3QgdGNwbV9wb3J0ICpwb3J0KQogCXVuc2lnbmVkIGludCBpLCBqLCBtYXhfbXcgPSAwLCBt YXhfbXYgPSAwOwogCXVuc2lnbmVkIGludCBtaW5fc3JjX212LCBtYXhfc3JjX212LCBzcmNfbWEs IHNyY19tdzsKIAl1bnNpZ25lZCBpbnQgbWluX3Nua19tdiwgbWF4X3Nua19tdjsKLQl1MzIgcGRv OworCXVuc2lnbmVkIGludCBtYXhfb3BfbXY7CisJdTMyIHBkbywgc3JjLCBzbms7CiAJdW5zaWdu ZWQgaW50IHNyY19wZG8gPSAwLCBzbmtfcGRvID0gMDsKIAogCS8qCkBAIC0yMjYzLDE2ICsyMjY0 LDE4IEBAIHN0YXRpYyB1bnNpZ25lZCBpbnQgdGNwbV9wZF9zZWxlY3RfcHBzX2FwZG8oc3RydWN0 IHRjcG1fcG9ydCAqcG9ydCkKIAkJCQkJY29udGludWU7CiAJCQkJfQogCi0JCQkJaWYgKG1heF9z cmNfbXYgPD0gbWF4X3Nua19tdiAmJgotCQkJCSAgICBtaW5fc3JjX212ID49IG1pbl9zbmtfbXYp IHsKKwkJCQlpZiAobWluX3NyY19tdiA8PSBtYXhfc25rX212ICYmCisJCQkJICAgIG1heF9zcmNf bXYgPj0gbWluX3Nua19tdikgeworCQkJCQltYXhfb3BfbXYgPSBtaW4obWF4X3NyY19tdiwgbWF4 X3Nua19tdik7CisJCQkJCXNyY19tdyA9IChtYXhfb3BfbXYgKiBzcmNfbWEpIC8gMTAwMDsKIAkJ CQkJLyogUHJlZmVyIGhpZ2hlciB2b2x0YWdlcyBpZiBhdmFpbGFibGUgKi8KIAkJCQkJaWYgKChz cmNfbXcgPT0gbWF4X213ICYmCi0JCQkJCSAgICAgbWluX3NyY19tdiA+IG1heF9tdikgfHwKKwkJ CQkJICAgICBtYXhfb3BfbXYgPiBtYXhfbXYpIHx8CiAJCQkJCSAgICBzcmNfbXcgPiBtYXhfbXcp IHsKIAkJCQkJCXNyY19wZG8gPSBpOwogCQkJCQkJc25rX3BkbyA9IGo7CiAJCQkJCQltYXhfbXcg PSBzcmNfbXc7Ci0JCQkJCQltYXhfbXYgPSBtYXhfc3JjX212OworCQkJCQkJbWF4X212ID0gbWF4 X29wX212OwogCQkJCQl9CiAJCQkJfQogCQkJfQpAQCAtMjI4NSwxNCArMjI4OCwxNiBAQCBzdGF0 aWMgdW5zaWduZWQgaW50IHRjcG1fcGRfc2VsZWN0X3Bwc19hcGRvKHN0cnVjdCB0Y3BtX3BvcnQg KnBvcnQpCiAJfQogCiAJaWYgKHNyY19wZG8pIHsKLQkJcGRvID0gcG9ydC0+c291cmNlX2NhcHNb c3JjX3Bkb107Ci0KLQkJcG9ydC0+cHBzX2RhdGEubWluX3ZvbHQgPSBwZG9fcHBzX2FwZG9fbWlu X3ZvbHRhZ2UocGRvKTsKLQkJcG9ydC0+cHBzX2RhdGEubWF4X3ZvbHQgPSBwZG9fcHBzX2FwZG9f bWF4X3ZvbHRhZ2UocGRvKTsKLQkJcG9ydC0+cHBzX2RhdGEubWF4X2N1cnIgPQotCQkJbWluX3Bw c19hcGRvX2N1cnJlbnQocGRvLCBwb3J0LT5zbmtfcGRvW3Nua19wZG9dKTsKKwkJc3JjID0gcG9y dC0+c291cmNlX2NhcHNbc3JjX3Bkb107CisJCXNuayA9IHBvcnQtPnNua19wZG9bc25rX3Bkb107 CisKKwkJcG9ydC0+cHBzX2RhdGEubWluX3ZvbHQgPSBtYXgocGRvX3Bwc19hcGRvX21pbl92b2x0 YWdlKHNyYyksCisJCQkJCSAgICAgIHBkb19wcHNfYXBkb19taW5fdm9sdGFnZShzbmspKTsKKwkJ cG9ydC0+cHBzX2RhdGEubWF4X3ZvbHQgPSBtaW4ocGRvX3Bwc19hcGRvX21heF92b2x0YWdlKHNy YyksCisJCQkJCSAgICAgIHBkb19wcHNfYXBkb19tYXhfdm9sdGFnZShzbmspKTsKKwkJcG9ydC0+ cHBzX2RhdGEubWF4X2N1cnIgPSBtaW5fcHBzX2FwZG9fY3VycmVudChzcmMsIHNuayk7CiAJCXBv cnQtPnBwc19kYXRhLm91dF92b2x0ID0KLQkJCW1pbihwZG9fcHBzX2FwZG9fbWF4X3ZvbHRhZ2Uo cGRvKSwgcG9ydC0+cHBzX2RhdGEub3V0X3ZvbHQpOworCQkJbWluKHBvcnQtPnBwc19kYXRhLm1h eF92b2x0LCBwb3J0LT5wcHNfZGF0YS5vdXRfdm9sdCk7CiAJCXBvcnQtPnBwc19kYXRhLm9wX2N1 cnIgPQogCQkJbWluKHBvcnQtPnBwc19kYXRhLm1heF9jdXJyLCBwb3J0LT5wcHNfZGF0YS5vcF9j dXJyKTsKIAl9Cg==