From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH v10 4/6] drm/edid: detect SCDC support in HF-VSDB Date: Mon, 13 Mar 2017 16:54:02 +0530 Message-ID: <1489404244-16608-5-git-send-email-shashank.sharma@intel.com> References: <1489404244-16608-1-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1489404244-16608-1-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: ville.syrjala@linux.intel.com, ander.conselvan.de.oliveira@intel.com Cc: daniel.vetter@intel.com, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org VGhpcyBwYXRjaCBkb2VzIGZvbGxvd2luZzoKLSBBZGRzIGEgbmV3IHN0cnVjdHVyZSAoZHJtX2hk bWlfaW5mbykgaW4gZHJtX2Rpc3BsYXlfaW5mby4KICBUaGlzIHN0cnVjdHVyZSB3aWxsIGJlIHVz ZWQgdG8gc2F2ZSBhbmQgaW5kaWNhdGUgaWYgc2luawogIHN1cHBvcnRzIGFkdmFuY2VkIEhETUkg Mi4wIGZlYXR1cmVzCi0gQWRkcyBhbm90aGVyIHN0cnVjdHVyZSBkcm1fc2NkYyB3aXRoaW4gZHJt X2hkbWlfaW5mbywgdG8KICByZWZsZWN0IHNjZGMgc3VwcG9ydCBhbmQgY2FwYWJpbGl0aWVzIGlu IGNvbm5lY3RlZCBIRE1JIDIuMCBzaW5rLgotIENoZWNrcyB0aGUgSEYtVlNEQiBibG9jayBmb3Ig cHJlc2VuY2Ugb2YgU0NEQywgYW5kIG1hcmtzIGl0CiAgaW4gc2NkYyBzdHJ1Y3R1cmUKLSBJZiBT Q0RDIGlzIHByZXNlbnQsIGNoZWNrcyBpZiBzaW5rIGlzIGNhcGFibGUgb2YgZ2VuZXJhdGluZwog IFNDREMgcmVhZCByZXF1ZXN0LCBhbmQgbWFya3MgaXQgaW4gc2NkYyBzdHJ1Y3R1cmUuCgpWMjog QWRkcmVzc2VkIHJldmlldyBjb21tZW50cwogIFRoaWVycnk6CiAgLSBGaXggdHlwb3MgaW4gY29t bWl0IG1lc3NhZ2UgYW5kIG1ha2UgYWJicmV2aWF0aW9uIGNvbnNpc3RlbnQKICAgIGFjcm9zcyB0 aGUgY29tbWl0IG1lc3NhZ2UuCiAgLSBDaGFuZ2Ugc3RydWN0dXJlIG9iamVjdCBuYW1lIGZyb20g aGRtaV9pbmZvIC0+IGhkbWkKICAtIEZpeCB0eXBvcyBhbmQgYWJicmV2aWF0aW9ucyBpbiBkZXNj cmlwdGlvbiBvZiBzdHJ1Y3R1cmUgZHJtX2hkbWlfaW5mbwogICAgZW5kIHRoZSBkZXNjcmlwdGlv biB3aXRoIGEgZnVsbCBzdG9wLgogIC0gQ3JlYXRlIGEgc3RydWN0dXJlIGRybV9zY2RjLCBhbmQg a2VlcCBhbGwgaW5mb3JtYXRpb24gcmVsYXRlZCB0byBTQ0RDCiAgICByZWdpc3RlciBzZXQgKHN1 cHBvcnRlZCwgcmVhZCByZXF1ZXN0IHN1cHBvcnRlZCkgZXRjIGluIGl0LgoKICBWaWxsZToKICAt IENoYW5nZSByciAtPiByZWFkX3JlcXVlc3QKICAtIENhbGwgZHJtX2RldGVjdF9zY3JhbWJsaW5n IGZ1bmN0aW9uIGRybV9wYXJzZV9oZl92c2RiIHNvIHRoYXQgYWxsCiAgICBvZiBIRi1WU0RCIHBh cnNpbmcgY2FuIGJlIGtlcHQgaW4gc2FtZSBmdW5jdGlvbiwgaW4gaW5jcmVtZW50YWwKICAgIHBh dGNoZXMuCgpWMzogUmViYXNlLgpWNDogUmViYXNlLgpWNTogUmViYXNlLgpWNjogQWRkcmVzc2Vk IHJldmlldyBjb21tZW50cyBmcm9tIFZpbGxlCiAgLSBBZGQgY2xvY2sgcmF0ZSBjYWxjdWxhdGlv bnMgZm9yIDEvMTAgYW5kIDEvNDAgcmF0aW9zCiAgLSBSZW1vdmUgbGVmdG92ZXJzIGZyb20gb2xk IHBhdGNoc2V0ClY3OiBBZGRlZCBSLUIgZnJvbSBKb3NlLgpWODogUmViYXNlLgpWOTogUmViYXNl LgpWMTA6IFJlYmFzZS4KClNpZ25lZC1vZmYtYnk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsu c2hhcm1hQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFRoaWVycnkgUmVkaW5nIDx0cmVkaW5nQG52 aWRpYS5jb20+ClJldmlld2VkLWJ5OiBKb3NlIEFicmV1IDxqb2FicmV1QHN5bm9wc3lzLmNvbT4K LS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYyAgICAgICAgfCAgMzMgKysrKysrKysrKy0K IGRyaXZlcnMvZ3B1L2RybS9kcm1fc2NkY19oZWxwZXIuYyB8IDEyMSArKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oICAgICAg IHwgIDE5ICsrKysrKwogaW5jbHVkZS9kcm0vZHJtX2VkaWQuaCAgICAgICAgICAgIHwgICAxIC0K IGluY2x1ZGUvZHJtL2RybV9zY2RjX2hlbHBlci5oICAgICB8ICAyNyArKysrKysrKysKIDUgZmls ZXMgY2hhbmdlZCwgMTk5IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQu YwppbmRleCBkNjRiN2JkLi5mYWQzZDQ0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJt X2VkaWQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYwpAQCAtMzcsNiArMzcsNyBA QAogI2luY2x1ZGUgPGRybS9kcm1fZWRpZC5oPgogI2luY2x1ZGUgPGRybS9kcm1fZW5jb2Rlci5o PgogI2luY2x1ZGUgPGRybS9kcm1fZGlzcGxheWlkLmg+CisjaW5jbHVkZSA8ZHJtL2RybV9zY2Rj X2hlbHBlci5oPgogCiAjaW5jbHVkZSAiZHJtX2NydGNfaW50ZXJuYWwuaCIKIApAQCAtMzgyMCwx MyArMzgyMSw0MyBAQCBlbnVtIGhkbWlfcXVhbnRpemF0aW9uX3JhbmdlCiBzdGF0aWMgdm9pZCBk cm1fcGFyc2VfaGRtaV9mb3J1bV92c2RiKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Is CiAJCQkJIGNvbnN0IHU4ICpoZl92c2RiKQogewotCXN0cnVjdCBkcm1faGRtaV9pbmZvICpoZG1p ID0gJmNvbm5lY3Rvci0+ZGlzcGxheV9pbmZvLmhkbWk7CisJc3RydWN0IGRybV9kaXNwbGF5X2lu Zm8gKmRpc3BsYXkgPSAmY29ubmVjdG9yLT5kaXNwbGF5X2luZm87CisJc3RydWN0IGRybV9oZG1p X2luZm8gKmhkbWkgPSAmZGlzcGxheS0+aGRtaTsKIAogCWlmIChoZl92c2RiWzZdICYgMHg4MCkg ewogCQloZG1pLT5zY2RjLnN1cHBvcnRlZCA9IHRydWU7CiAJCWlmIChoZl92c2RiWzZdICYgMHg0 MCkKIAkJCWhkbWktPnNjZGMucmVhZF9yZXF1ZXN0ID0gdHJ1ZTsKIAl9CisKKwkvKgorCSAqIEFs bCBIRE1JIDIuMCBtb25pdG9ycyBtdXN0IHN1cHBvcnQgc2NyYW1ibGluZyBhdCByYXRlcyA+IDM0 MCBNSHouCisJICogQW5kIGFzIHBlciB0aGUgc3BlYywgdGhyZWUgZmFjdG9ycyBjb25maXJtIHRo aXM6CisJICogKiBBdmFpbGFiaWxpdHkgb2YgYSBIRi1WU0RCIGJsb2NrIGluIEVESUQgKGNoZWNr KQorCSAqICogTm9uIHplcm8gTWF4X1RNRFNfQ2hhcl9SYXRlIGZpbGVkIGluIEhGLVZTREIgKGxl dCdzIGNoZWNrKQorCSAqICogU0NEQyBzdXBwb3J0IGF2YWlsYWJsZSAobGV0J3MgY2hlY2spCisJ ICogTGV0cyBjaGVjayBpdCBvdXQuCisJICovCisKKwlpZiAoaGZfdnNkYls1XSkgeworCQkvKiBt YXggY2xvY2sgaXMgNTAwMCBLSHogdGltZXMgYmxvY2sgdmFsdWUgKi8KKwkJdTMyIG1heF90bWRz X2Nsb2NrID0gaGZfdnNkYls1XSAqIDUwMDA7CisJCXN0cnVjdCBkcm1fc2NkYyAqc2NkYyA9ICZo ZG1pLT5zY2RjOworCisJCWlmIChtYXhfdG1kc19jbG9jayA+IDM0MDAwMCkgeworCQkJZGlzcGxh eS0+bWF4X3RtZHNfY2xvY2sgPSBtYXhfdG1kc19jbG9jazsKKwkJCURSTV9ERUJVR19LTVMoIkhG LVZTREI6IG1heCBUTURTIGNsb2NrICVkIGtIelxuIiwKKwkJCQlkaXNwbGF5LT5tYXhfdG1kc19j bG9jayk7CisJCX0KKworCQlpZiAoc2NkYy0+c3VwcG9ydGVkKSB7CisJCQlzY2RjLT5zY3JhbWJs aW5nLnN1cHBvcnRlZCA9IHRydWU7CisKKwkJCS8qIEZldyBzaW5rcyBzdXBwb3J0IHNjcmFtYmxp bmcgZm9yIGNsb2tzIDwgMzQwTSAqLworCQkJaWYgKChoZl92c2RiWzZdICYgMHg4KSkKKwkJCQlz Y2RjLT5zY3JhbWJsaW5nLmxvd19yYXRlcyA9IHRydWU7CisJCX0KKwl9CiB9CiAKIHN0YXRpYyB2 b2lkIGRybV9wYXJzZV9oZG1pX2RlZXBfY29sb3JfaW5mbyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAq Y29ubmVjdG9yLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9zY2RjX2hlbHBlci5j IGIvZHJpdmVycy9ncHUvZHJtL2RybV9zY2RjX2hlbHBlci5jCmluZGV4IGMyZGQzM2YuLjNjZDk2 YTkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fc2NkY19oZWxwZXIuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vZHJtX3NjZGNfaGVscGVyLmMKQEAgLTIyLDggKzIyLDEwIEBACiAgKi8K IAogI2luY2x1ZGUgPGxpbnV4L3NsYWIuaD4KKyNpbmNsdWRlIDxsaW51eC9kZWxheS5oPgogCiAj aW5jbHVkZSA8ZHJtL2RybV9zY2RjX2hlbHBlci5oPgorI2luY2x1ZGUgPGRybS9kcm1QLmg+CiAK IC8qKgogICogRE9DOiBzY2RjIGhlbHBlcnMKQEAgLTEyMSwzICsxMjMsMTIyIEBAIHNzaXplX3Qg ZHJtX3NjZGNfd3JpdGUoc3RydWN0IGkyY19hZGFwdGVyICphZGFwdGVyLCB1OCBvZmZzZXQsCiAJ cmV0dXJuIDA7CiB9CiBFWFBPUlRfU1lNQk9MKGRybV9zY2RjX3dyaXRlKTsKKworLyoqCisgKiBk cm1fc2NkY19jaGVja19zY3JhbWJsaW5nX3N0YXR1cyAtIHdoYXQgaXMgc3RhdHVzIG9mIHNjcmFt Ymxpbmc/CisgKiBAYWRhcHRlcjogSTJDIGFkYXB0ZXIgZm9yIEREQyBjaGFubmVsCisgKgorICog UmVhZHMgdGhlIHNjcmFtYmxlciBzdGF0dXMgb3ZlciBTQ0RDLCBhbmQgY2hlY2tzIHRoZQorICog c2NyYW1ibGluZyBzdGF0dXMuCisgKgorICogUmV0dXJuczoKKyAqIFRydWUgaWYgdGhlIHNjcmFt YmxpbmcgaXMgZW5hYmxlZCwgZmFsc2Ugb3RoZXJ3aXNlLgorICovCisKK2Jvb2wgZHJtX3NjZGNf Z2V0X3NjcmFtYmxpbmdfc3RhdHVzKHN0cnVjdCBpMmNfYWRhcHRlciAqYWRhcHRlcikKK3sKKwl1 OCBzdGF0dXM7CisJaW50IHJldDsKKworCXJldCA9IGRybV9zY2RjX3JlYWRiKGFkYXB0ZXIsIFND RENfU0NSQU1CTEVSX1NUQVRVUywgJnN0YXR1cyk7CisJaWYgKHJldCA8IDApIHsKKwkJRFJNX0VS Uk9SKCJGYWlsZWQgdG8gcmVhZCBzY3JhbWJsaW5nIHN0YXR1cywgZXJyb3IgJWRcbiIsIHJldCk7 CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwlyZXR1cm4gc3RhdHVzICYgU0NEQ19TQ1JBTUJMSU5H X1NUQVRVUzsKK30KK0VYUE9SVF9TWU1CT0woZHJtX3NjZGNfZ2V0X3NjcmFtYmxpbmdfc3RhdHVz KTsKKworLyoqCisgKiBkcm1fc2NkY19zZXRfc2NyYW1ibGluZyAtIGVuYWJsZSBzY3JhbWJsaW5n CisgKiBAYWRhcHRlcjogSTJDIGFkYXB0ZXIgZm9yIEREQyBjaGFubmVsCisgKiBAZW5hYmxlOiBi b29sIHRvIGluZGljYXRlIGlmIHNjcmFtYmxpbmcgaXMgdG8gYmUgZW5hYmxlZC9kaXNhYmxlZAor ICoKKyAqIFdyaXRlcyB0aGUgVE1EUyBjb25maWcgcmVnaXN0ZXIgb3ZlciBTQ0RDIGNoYW5uZWws IGFuZDoKKyAqIGVuYWJsZXMgc2NyYW1ibGluZyB3aGVuIGVuYWJsZSA9IDEKKyAqIGRpc2FibGVz IHNjcmFtYmxpbmcgd2hlbiBlbmFibGUgPSAwCisgKgorICogUmV0dXJuczoKKyAqIFRydWUgaWYg c2NyYW1ibGluZyBpcyBzZXQvcmVzZXQgc3VjY2Vzc2Z1bGx5LCBmYWxzZSBvdGhlcndpc2UuCisg Ki8KKworYm9vbCBkcm1fc2NkY19zZXRfc2NyYW1ibGluZyhzdHJ1Y3QgaTJjX2FkYXB0ZXIgKmFk YXB0ZXIsIGJvb2wgZW5hYmxlKQoreworCXU4IGNvbmZpZzsKKwlpbnQgcmV0OworCisJcmV0ID0g ZHJtX3NjZGNfcmVhZGIoYWRhcHRlciwgU0NEQ19UTURTX0NPTkZJRywgJmNvbmZpZyk7CisJaWYg KHJldCA8IDApIHsKKwkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gcmVhZCB0bWRzIGNvbmZpZywgZXJy PSVkXG4iLCByZXQpOworCQlyZXR1cm4gZmFsc2U7CisJfQorCisJaWYgKGVuYWJsZSkKKwkJY29u ZmlnIHw9IFNDRENfU0NSQU1CTElOR19FTkFCTEU7CisJZWxzZQorCQljb25maWcgJj0gflNDRENf U0NSQU1CTElOR19FTkFCTEU7CisKKwlyZXQgPSBkcm1fc2NkY193cml0ZWIoYWRhcHRlciwgU0NE Q19UTURTX0NPTkZJRywgY29uZmlnKTsKKwlpZiAocmV0IDwgMCkgeworCQlEUk1fRVJST1IoIkZh aWxlZCB0byBlbmFibGUgc2NyYW1ibGluZywgZXJyb3IgJWRcbiIsIHJldCk7CisJCXJldHVybiBm YWxzZTsKKwl9CisKKwlyZXR1cm4gdHJ1ZTsKK30KK0VYUE9SVF9TWU1CT0woZHJtX3NjZGNfc2V0 X3NjcmFtYmxpbmcpOworCisvKioKKyAqIGRybV9zY2RjX3NldF9oaWdoX3RtZHNfY2xvY2tfcmF0 aW8gLSBzZXQgVE1EUyBjbG9jayByYXRpbworICogQGFkYXB0ZXI6IEkyQyBhZGFwdGVyIGZvciBE REMgY2hhbm5lbAorICogQHNldDogcmV0IG9yIHJlc2V0IHRoZSBoaWdoIGNsb2NrIHJhdGlvCisg KgorICogVE1EUyBjbG9jayByYXRpbyBjYWxjdWxhdGlvbnMgZ28gbGlrZSB0aGlzOgorICogVE1E UyBjaGFyYWN0ZXIgPSAxMCBiaXQgVE1EUyBlbmNvZGVkIHZhbHVlCisgKiBUTURTIGNoYXJhY3Rl ciByYXRlID0gVGhlIHJhdGUgYXQgd2hpY2ggVE1EUyBjaGFyYWN0ZXJzIGFyZSB0cmFuc21pdHRl ZChNY3NjKQorICogVE1EUyBiaXQgcmF0ZSA9IDEweCBUTURTIGNoYXJhY3RlciByYXRlCisgKiBB cyBwZXIgdGhlIHNwZWM6CisgKiBUTURTIGNsb2NrIHJhdGUgZm9yIHBpeGVsIGNsb2NrIDwgMzQw IE1IeiA9IDF4IHRoZSBjaGFyYWN0ZXIgcmF0ZQorICoJPSAxLzEwIHBpeGVsIGNsb2NrIHJhdGUK KyAqIFRNRFMgY2xvY2sgcmF0ZSBmb3IgcGl4ZWwgY2xvY2sgPiAzNDAgTUh6ID0gMC4yNXggdGhl IGNoYXJhY3RlciByYXRlCisgKgk9IDEvNDAgcGl4ZWwgY2xvY2sgcmF0ZQorICoKKyAqIFdyaXRl cyB0byB0aGUgVE1EUyBjb25maWcgcmVnaXN0ZXIgb3ZlciBTQ0RDIGNoYW5uZWwsIGFuZDoKKyAq IHNldHMgVE1EUyBjbG9jayByYXRpbyB0byAxLzQwIHdoZW4gc2V0ID0gMQorICogc2V0cyBUTURT IGNsb2NrIHJhdGlvIHRvIDEvMTAgd2hlbiBzZXQgPSAwCisgKgorICogUmV0dXJuczoKKyAqIFRy dWUgaWYgd3JpdGUgaXMgc3VjY2Vzc2Z1bCwgZmFsc2Ugb3RoZXJ3aXNlLgorICovCitib29sIGRy bV9zY2RjX3NldF9oaWdoX3RtZHNfY2xvY2tfcmF0aW8oc3RydWN0IGkyY19hZGFwdGVyICphZGFw dGVyLCBib29sIHNldCkKK3sKKwl1OCBjb25maWc7CisJaW50IHJldDsKKworCXJldCA9IGRybV9z Y2RjX3JlYWRiKGFkYXB0ZXIsIFNDRENfVE1EU19DT05GSUcsICZjb25maWcpOworCWlmIChyZXQg PCAwKSB7CisJCURSTV9FUlJPUigiRmFpbGVkIHRvIHJlYWQgdG1kcyBjb25maWcsIGVycj0lZFxu IiwgcmV0KTsKKwkJcmV0dXJuIGZhbHNlOworCX0KKworCWlmIChzZXQpCisJCWNvbmZpZyB8PSBT Q0RDX1RNRFNfQklUX0NMT0NLX1JBVElPX0JZXzQwOworCWVsc2UKKwkJY29uZmlnICY9IH5TQ0RD X1RNRFNfQklUX0NMT0NLX1JBVElPX0JZXzQwOworCisJcmV0ID0gZHJtX3NjZGNfd3JpdGViKGFk YXB0ZXIsIFNDRENfVE1EU19DT05GSUcsIGNvbmZpZyk7CisJaWYgKHJldCA8IDApIHsKKwkJRFJN X0VSUk9SKCJGYWlsZWQgdG8gc2V0IFRNRFMgY2xvY2sgcmF0aW8sIGVycm9yICVkXG4iLCByZXQp OworCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLyoKKwkgKiBUaGUgc3BlYyBzYXlzIHRoYXQgYSBz b3VyY2Ugc2hvdWxkIHdhaXQgbWluaW11bSAxbXMgYW5kIG1heGltdW0KKwkgKiAxMDBtcyBhZnRl ciB3cml0aW5nIHRoZSBUTURTIGNvbmZpZyBmb3IgY2xvY2sgcmF0aW8uIExldHMgYWxsb3cgYQor CSAqIHdhaXQgb2YgdXB0byAybXMgaGVyZS4KKwkgKi8KKwl1c2xlZXBfcmFuZ2UoMTAwMCwgMjAw MCk7CisJcmV0dXJuIHRydWU7Cit9CitFWFBPUlRfU1lNQk9MKGRybV9zY2RjX3NldF9oaWdoX3Rt ZHNfY2xvY2tfcmF0aW8pOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5o IGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCmluZGV4IGJmOWQ2ZjUuLmY4Yjc2NmQgMTAw NjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAorKysgYi9pbmNsdWRlL2RybS9k cm1fY29ubmVjdG9yLmgKQEAgLTkwLDYgKzkwLDIwIEBAIGVudW0gc3VicGl4ZWxfb3JkZXIgewog CiB9OwogCisvKioKKyAqIHN0cnVjdCBkcm1fc2NyYW1ibGluZzogc2luaydzIHNjcmFtYmxpbmcg c3VwcG9ydC4KKyAqLworc3RydWN0IGRybV9zY3JhbWJsaW5nIHsKKwkvKioKKwkgKiBAc3VwcG9y dGVkOiBzY3JhbWJsaW5nIHN1cHBvcnRlZCBmb3IgcmF0ZXMgPiAzNDAgTWh6LgorCSAqLworCWJv b2wgc3VwcG9ydGVkOworCS8qKgorCSAqIEBsb3dfcmF0ZXM6IHNjcmFtYmxpbmcgc3VwcG9ydGVk IGZvciByYXRlcyA8PSAzNDAgTWh6LgorCSAqLworCWJvb2wgbG93X3JhdGVzOworfTsKKwogLyoK ICAqIHN0cnVjdCBkcm1fc2NkYyAtIEluZm9ybWF0aW9uIGFib3V0IHNjZGMgY2FwYWJpbGl0aWVz IG9mIGEgSERNSSAyLjAgc2luawogICoKQEAgLTEwNSw4ICsxMTksMTMgQEAgc3RydWN0IGRybV9z Y2RjIHsKIAkgKiBAcmVhZF9yZXF1ZXN0OiBzaW5rIGlzIGNhcGFibGUgb2YgZ2VuZXJhdGluZyBz Y2RjIHJlYWQgcmVxdWVzdC4KIAkgKi8KIAlib29sIHJlYWRfcmVxdWVzdDsKKwkvKioKKwkgKiBA c2NyYW1ibGluZzogc2luaydzIHNjcmFtYmxpbmcgY2FwYWJpbGl0aWVzCisJICovCisJc3RydWN0 IGRybV9zY3JhbWJsaW5nIHNjcmFtYmxpbmc7CiB9OwogCisKIC8qKgogICogc3RydWN0IGRybV9o ZG1pX2luZm8gLSBydW50aW1lIGluZm9ybWF0aW9uIGFib3V0IHRoZSBjb25uZWN0ZWQgSERNSSBz aW5rCiAgKgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2VkaWQuaCBiL2luY2x1ZGUvZHJt L2RybV9lZGlkLmgKaW5kZXggM2VhZDg0ZC4uN2I5ZjQ4YiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9k cm0vZHJtX2VkaWQuaAorKysgYi9pbmNsdWRlL2RybS9kcm1fZWRpZC5oCkBAIC00NzYsNSArNDc2 LDQgQEAgdm9pZCBkcm1fZWRpZF9nZXRfbW9uaXRvcl9uYW1lKHN0cnVjdCBlZGlkICplZGlkLCBj aGFyICpuYW1lLAogc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmRybV9tb2RlX2ZpbmRfZG10KHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQkJCSAgIGludCBoc2l6ZSwgaW50IHZzaXplLCBpbnQg ZnJlc2gsCiAJCQkJCSAgIGJvb2wgcmIpOwotCiAjZW5kaWYgLyogX19EUk1fRURJRF9IX18gKi8K ZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9zY2RjX2hlbHBlci5oIGIvaW5jbHVkZS9kcm0v ZHJtX3NjZGNfaGVscGVyLmgKaW5kZXggOWM1MmRlYi4uYWI2YmNmYiAxMDA2NDQKLS0tIGEvaW5j bHVkZS9kcm0vZHJtX3NjZGNfaGVscGVyLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX3NjZGNfaGVs cGVyLmgKQEAgLTEyOSw0ICsxMjksMzEgQEAgc3RhdGljIGlubGluZSBpbnQgZHJtX3NjZGNfd3Jp dGViKHN0cnVjdCBpMmNfYWRhcHRlciAqYWRhcHRlciwgdTggb2Zmc2V0LAogCXJldHVybiBkcm1f c2NkY193cml0ZShhZGFwdGVyLCBvZmZzZXQsICZ2YWx1ZSwgc2l6ZW9mKHZhbHVlKSk7CiB9CiAK Ky8qKgorICogZHJtX3NjZGNfc2V0X3NjcmFtYmxpbmcgLSBlbmFibGUgc2NyYW1ibGluZworICog QGFkYXB0ZXI6IEkyQyBhZGFwdGVyIGZvciBEREMgY2hhbm5lbAorICogQGVuYWJsZTogYm9vbCB0 byBpbmRpY2F0ZSBpZiBzY3JhbWJsaW5nIGlzIHRvIGJlIGVuYWJsZWQvZGlzYWJsZWQKKyAqCisg KiBXcml0ZXMgdGhlIFRNRFMgY29uZmlnIHJlZ2lzdGVyIG92ZXIgU0NEQyBjaGFubmVsLCBhbmQ6 CisgKiBlbmFibGVzIHNjcmFtYmxpbmcgd2hlbiBlbmFibGUgPSAxCisgKiBkaXNhYmxlcyBzY3Jh bWJsaW5nIHdoZW4gZW5hYmxlID0gMAorICoKKyAqIFJldHVybnM6CisgKiBUcnVlIGlmIHNjcmFt YmxpbmcgaXMgc2V0L3Jlc2V0IHN1Y2Nlc3NmdWxseSwgZmFsc2Ugb3RoZXJ3aXNlLgorICovCiti b29sIGRybV9zY2RjX3NldF9zY3JhbWJsaW5nKHN0cnVjdCBpMmNfYWRhcHRlciAqYWRhcHRlciwg Ym9vbCBlbmFibGUpOworCisvKioKKyAqIGRybV9zY2RjX3NldF9oaWdoX3RtZHNfY2xvY2tfcmF0 aW8gLSBzZXQgVE1EUyBjbG9jayByYXRpbworICogQGFkYXB0ZXI6IEkyQyBhZGFwdGVyIGZvciBE REMgY2hhbm5lbAorICogQHNldDogcmV0IG9yIHJlc2V0IHRoZSBoaWdoIGNsb2NrIHJhdGlvCisg KgorICogV3JpdGVzIHRvIHRoZSBUTURTIGNvbmZpZyByZWdpc3RlciBvdmVyIFNDREMgY2hhbm5l bCwgYW5kOgorICogc2V0cyBUTURTIGNsb2NrIHJhdGlvIHRvIDEvNDAgd2hlbiBzZXQgPSAxCisg KiBzZXRzIFRNRFMgY2xvY2sgcmF0aW8gdG8gMS8xMCB3aGVuIHNldCA9IDAKKyAqCisgKiBSZXR1 cm5zOgorICogVHJ1ZSBpZiB3cml0ZSBpcyBzdWNjZXNzZnVsLCBmYWxzZSBvdGhlcndpc2UuCisg Ki8KK2Jvb2wgZHJtX3NjZGNfc2V0X2hpZ2hfdG1kc19jbG9ja19yYXRpbyhzdHJ1Y3QgaTJjX2Fk YXB0ZXIgKmFkYXB0ZXIsIGJvb2wgc2V0KTsKICNlbmRpZgotLSAKMS45LjEKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxp c3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=