From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH] drm/i915: Handle pipe CRC around enabling/disabling pipe. Date: Thu, 8 Mar 2018 10:21:53 +0100 Message-ID: <20180308092153.47789-1-maarten.lankhorst@linux.intel.com> References: <20180308091722.24103-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mblankhorst.nl (mblankhorst.nl [IPv6:2a02:2308::216:3eff:fe92:dfa3]) by gabe.freedesktop.org (Postfix) with ESMTPS id B9B756E853 for ; Thu, 8 Mar 2018 09:21:55 +0000 (UTC) In-Reply-To: <20180308091722.24103-1-maarten.lankhorst@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org VGhpcyB3aWxsIGdldCByaWQgb2YgdGhlIGZvbGxvd2luZyBlcnJvcjoKWyAgIDc0LjczMDI3MV0g V0FSTklORzogQ1BVOiA0IFBJRDogMCBhdCBkcml2ZXJzL2dwdS9kcm0vZHJtX3ZibGFuay5jOjYx NCBkcm1fY2FsY192Ymx0aW1lc3RhbXBfZnJvbV9zY2Fub3V0cG9zKzB4MTNlLzB4MmYwClsgICA3 NC43MzAzMTFdIE1vZHVsZXMgbGlua2VkIGluOiB2Z2VtIHNuZF9oZGFfY29kZWNfaGRtaSBzbmRf aGRhX2NvZGVjX3JlYWx0ZWsgc25kX2hkYV9jb2RlY19nZW5lcmljIGk5MTUgeDg2X3BrZ190ZW1w X3RoZXJtYWwgaW50ZWxfcG93ZXJjbGFtcCBjb3JldGVtcCBzbmRfaGRhX2ludGVsIGNyY3QxMGRp Zl9wY2xtdWwgc25kX2hkYV9jb2RlYyBjcmMzMl9wY2xtdWwgc25kX2h3ZGVwIGJyb2FkY29tIGdo YXNoX2NsbXVsbmlfaW50ZWwgc25kX2hkYV9jb3JlIGJjbV9waHlfbGliIHNuZF9wY20gdGczIGxw Y19pY2ggbWVpX21lIG1laSBwcmltZV9udW1iZXJzClsgICA3NC43MzAzNTNdIENQVTogNCBQSUQ6 IDAgQ29tbTogc3dhcHBlci80IFRhaW50ZWQ6IEcgICAgIFUgICAgICAgICAgIDQuMTYuMC1yYzIt Q0ktQ0lfRFJNXzM4MjIrICMxClsgICA3NC43MzAzNTVdIEhhcmR3YXJlIG5hbWU6IERlbGwgSW5j LiBYUFMgODMwMCAgLzBZMk1SRywgQklPUyBBMDYgMTAvMTcvMjAxMQpbICAgNzQuNzMwMzU5XSBS SVA6IDAwMTA6ZHJtX2NhbGNfdmJsdGltZXN0YW1wX2Zyb21fc2Nhbm91dHBvcysweDEzZS8weDJm MApbICAgNzQuNzMwMzYxXSBSU1A6IDAwMTg6ZmZmZjg4MDIyZmIwM2QxMCBFRkxBR1M6IDAwMDEw MDg2ClsgICA3NC43MzAzNjVdIFJBWDogZmZmZmZmZmZhMDI5MWQyMCBSQlg6IGZmZmY4ODAyMWEx ODAwMDAgUkNYOiAwMDAwMDAwMDAwMDAwMDAxClsgICA3NC43MzAzNjddIFJEWDogZmZmZmZmZmY4 MjBlN2RiOCBSU0k6IDAwMDAwMDAwMDAwMDAwMDEgUkRJOiBmZmZmZmZmZjgyMDY4Y2VhClsgICA3 NC43MzAzNjldIFJCUDogZmZmZjg4MDIyZmIwM2Q3MCBSMDg6IDAwMDAwMDAwMDAwMDAwMDAgUjA5 OiBmZmZmZmZmZjgxNWQyNmQwClsgICA3NC43MzAzNzFdIFIxMDogMDAwMDAwMDAwMDAwMDAwMCBS MTE6IGZmZmZmZmZmYTAxNjFjYTAgUjEyOiAwMDAwMDAwMDAwMDAwMDAxClsgICA3NC43MzAzNzNd IFIxMzogZmZmZjg4MDIxMjQ0ODAwOCBSMTQ6IGZmZmY4ODAyMTI0NDgzMzAgUjE1OiAwMDAwMDAw MDAwMDAwMDAwClsgICA3NC43MzAzNzZdIEZTOiAgMDAwMDAwMDAwMDAwMDAwMCgwMDAwKSBHUzpm ZmZmODgwMjJmYjAwMDAwKDAwMDApIGtubEdTOjAwMDAwMDAwMDAwMDAwMDAKWyAgIDc0LjczMDM3 OF0gQ1M6ICAwMDEwIERTOiAwMDAwIEVTOiAwMDAwIENSMDogMDAwMDAwMDA4MDA1MDAzMwpbICAg NzQuNzMwMzgwXSBDUjI6IDAwMDA1NWVkY2JlYzkwMDAgQ1IzOiAwMDAwMDAwMDAyMjEwMDAxIENS NDogMDAwMDAwMDAwMDA2MDZlMApbICAgNzQuNzMwMzgyXSBDYWxsIFRyYWNlOgpbICAgNzQuNzMw Mzg1XSAgPElSUT4KWyAgIDc0LjczMDM5N10gIGRybV9nZXRfbGFzdF92Ymx0aW1lc3RhbXArMHgz Ni8weDUwClsgICA3NC43MzA0MDFdICBkcm1fdXBkYXRlX3ZibGFua19jb3VudCsweDY0LzB4MjQw ClsgICA3NC43MzA0MDldICBkcm1fY3J0Y19hY2N1cmF0ZV92YmxhbmtfY291bnQrMHg0MS8weDkw ClsgICA3NC43MzA0NTNdICBkaXNwbGF5X3BpcGVfY3JjX2lycV9oYW5kbGVyKzB4MTc2LzB4MjIw IFtpOTE1XQpbICAgNzQuNzMwNDk3XSAgaTl4eF9waXBlX2NyY19pcnFfaGFuZGxlcisweGZlLzB4 MTUwIFtpOTE1XQpbICAgNzQuNzMwNTM3XSAgaXJvbmxha2VfaXJxX2hhbmRsZXIrMHg2MTgvMHhh MzAgW2k5MTVdClsgICA3NC43MzA1NDhdICBfX2hhbmRsZV9pcnFfZXZlbnRfcGVyY3B1KzB4M2Mv MHgzNDAKWyAgIDc0LjczMDU1Nl0gIGhhbmRsZV9pcnFfZXZlbnRfcGVyY3B1KzB4MWIvMHg1MApb ICAgNzQuNzMwNTYxXSAgaGFuZGxlX2lycV9ldmVudCsweDJmLzB4NTAKWyAgIDc0LjczMDU2Nl0g IGhhbmRsZV9lZGdlX2lycSsweGU0LzB4MWIwClsgICA3NC43MzA1NzJdICBoYW5kbGVfaXJxKzB4 MTEvMHgyMApbICAgNzQuNzMwNTc2XSAgZG9fSVJRKzB4NWUvMHgxMjAKWyAgIDc0LjczMDU4NF0g IGNvbW1vbl9pbnRlcnJ1cHQrMHg4NC8weDg0ClsgICA3NC43MzA1ODZdICA8L0lSUT4KWyAgIDc0 LjczMDU5MV0gUklQOiAwMDEwOmNwdWlkbGVfZW50ZXJfc3RhdGUrMHhhYS8weDM1MApbICAgNzQu NzMwNTkzXSBSU1A6IDAwMTg6ZmZmZmM5MDAwMDA4YmViOCBFRkxBR1M6IDAwMDAwMjEyIE9SSUdf UkFYOiBmZmZmZmZmZmZmZmZmZmRlClsgICA3NC43MzA1OTddIFJBWDogZmZmZjg4MDIyNmI4MDA0 MCBSQlg6IDAwMDAwMDAwMDAzMWZjM2UgUkNYOiAwMDAwMDAwMDAwMDAwMDAxClsgICA3NC43MzA1 OTldIFJEWDogMDAwMDAwMDAwMDAwMDAwMCBSU0k6IGZmZmZmZmZmODIxMGZiNTkgUkRJOiBmZmZm ZmZmZjgyMGMwMmU3ClsgICA3NC43MzA2MDFdIFJCUDogMDAwMDAwMDAwMDAwMDAwNCBSMDg6IDAw MDAwMDAwMDAwMDQwYWYgUjA5OiAwMDAwMDAwMDAwMDAwMDE4ClsgICA3NC43MzA2MDNdIFIxMDog MDAwMDAwMDAwMDAwMDAwMCBSMTE6IDAwMDAwMDAwMDAwMDAwMDAgUjEyOiAwMDAwMDAwMDAwMDAw MDA0ClsgICA3NC43MzA2MDZdIFIxMzogZmZmZmU4ZmZmZmQwMDQzMCBSMTQ6IDAwMDAwMDExNjYx MjBiZjQgUjE1OiBmZmZmZmZmZjgyMjk0NDYwClsgICA3NC43MzA2MjFdICA/IGNwdWlkbGVfZW50 ZXJfc3RhdGUrMHhhNi8weDM1MApbICAgNzQuNzMwNjI5XSAgZG9faWRsZSsweDE4OC8weDFkMApb ICAgNzQuNzMwNjM2XSAgY3B1X3N0YXJ0dXBfZW50cnkrMHgxNC8weDIwClsgICA3NC43MzA2NDFd ICBzdGFydF9zZWNvbmRhcnkrMHgxMjkvMHgxNjAKWyAgIDc0LjczMDY0Nl0gIHNlY29uZGFyeV9z dGFydHVwXzY0KzB4YTUvMHhiMApbICAgNzQuNzMwNjYwXSBDb2RlOiBlMSA0OCBjNyBjMiBiOCA3 ZCAwZSA4MiBiZSAwMSAwMCAwMCAwMCA0OCBjNyBjNyBlYSA4YyAwNiA4MiBlOCA2NCBlYyBmZiBm ZiA0OCA4YiA4MyBjOCAwNyAwMCAwMCA0OCA4MyA3OCAyOCAwMCAwZiA4NCBlMiBmZSBmZiBmZiA8 MGY+IDBiIDQ1IDMxIGVkIGU5IGRiIGZlIGZmIGZmIDQxIGI4IGQzIDRkIDYyIDEwIDg5IGM4IDZh IDAzIDQxClsgICA3NC43MzA3NTRdIC0tLVsgZW5kIHRyYWNlIDE0YjEzNDU3MDViNjg1NjUgXS0t LQoKQ2hhbmdlcyBzaW5jZSB2MToKLSBEb24ndCB0cnkgdG8gYXBwbHkgQ1JDIHdvcmthcm91bmQg d2hlbiBlbmFibGluZyBwaXBlLCBpdCBzaG91bGQgYWxyZWFkeSBiZSBlbmFibGVkLgpDaGFuZ2Vz IHNpbmNlIHYyOgotIE1ha2UgY3JjIGZ1bmN0aW9ucyBmb3IgIURFQlVHRlMgY2FzZSBpbmxpbmUu Ci0gUGFzcyBpbnRlbF9jcnRjIHRvIGNyYyBmdW5jdGlvbnMuCi0gQWRkIGNvbW1lbnRzIHRvIGNh bGxzaXRlcy4KQ2hhbmdlcyBzaW5jZSB2MzoKLSBDYWNoZSBwaXBlX2NyYy0+c291cmNlLgotIFNl dCBwaXBlX2NyYy0+c2tpcHBlZCB0byBNSU5fSU5UIGR1cmluZyBkaXNhYmxlIHRvIGNsb3NlIGEg cmFjZSBjb25kaXRpb24uCgpDYzogTWFydGEgTMO2ZnN0ZWR0IDxtYXJ0YS5sb2ZzdGVkdEBpbnRl bC5jb20+ClJlcG9ydGVkLWJ5OiBNYXJ0YSBMw7Zmc3RlZHQgPG1hcnRhLmxvZnN0ZWR0QGludGVs LmNvbT4KQnVnemlsbGE6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dp P2lkPTEwNTE4NQpTaWduZWQtb2ZmLWJ5OiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5r aG9yc3RAbGludXguaW50ZWwuY29tPgotLS0KU21hbGwgY29tcGlsZSBmaXggZm9yICFERUJVR0ZT IGNhc2UuCgogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYyAgICAgICB8ICAyICstCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgIHwgMTAgKysrKysrKwogZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgICB8ICA5ICsrKysrKwogZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfcGlwZV9jcmMuYyB8IDUzICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKy0tLS0tCiA0IGZpbGVzIGNoYW5nZWQsIDY2IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMKaW5kZXggY2UxNjAwM2VmMDQ4Li4zMTZiYTYyM2M5 NWEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYwpAQCAtMTY2Niw3ICsxNjY2LDcgQEAgc3RhdGlj IHZvaWQgZGlzcGxheV9waXBlX2NyY19pcnFfaGFuZGxlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCiAJCSAqIE9uIEdFTjgrIHNvbWV0aW1lcyB0aGUgc2Vjb25kIENSQyBpcyBi b25rZXJzIGFzIHdlbGwsIHNvCiAJCSAqIGRvbid0IHRydXN0IHRoYXQgb25lIGVpdGhlci4KIAkJ ICovCi0JCWlmIChwaXBlX2NyYy0+c2tpcHBlZCA9PSAwIHx8CisJCWlmIChwaXBlX2NyYy0+c2tp cHBlZCA8PSAwIHx8CiAJCSAgICAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA4ICYmIHBpcGVfY3Jj LT5za2lwcGVkID09IDEpKSB7CiAJCQlwaXBlX2NyYy0+c2tpcHBlZCsrOwogCQkJc3Bpbl91bmxv Y2soJnBpcGVfY3JjLT5sb2NrKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwppbmRl eCAzMzEwODQwODI1NDUuLjI5MzNhZDM4MDk0ZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rp c3BsYXkuYwpAQCAtMTIxNDcsNiArMTIxNDcsOSBAQCBzdGF0aWMgdm9pZCBpbnRlbF91cGRhdGVf Y3J0YyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJaWYgKG1vZGVzZXQpIHsKIAkJdXBkYXRlX3Nj YW5saW5lX29mZnNldChpbnRlbF9jcnRjKTsKIAkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19lbmFi bGUocGlwZV9jb25maWcsIHN0YXRlKTsKKworCQkvKiB2YmxhbmtzIHdvcmsgYWdhaW4sIHJlLWVu YWJsZSBwaXBlIENSQy4gKi8KKwkJaW50ZWxfY3J0Y19lbmFibGVfcGlwZV9jcmMoaW50ZWxfY3J0 Yyk7CiAJfSBlbHNlIHsKIAkJaW50ZWxfcHJlX3BsYW5lX3VwZGF0ZSh0b19pbnRlbF9jcnRjX3N0 YXRlKG9sZF9jcnRjX3N0YXRlKSwKIAkJCQkgICAgICAgcGlwZV9jb25maWcpOwpAQCAtMTIzMjcs NiArMTIzMzAsMTMgQEAgc3RhdGljIHZvaWQgaW50ZWxfYXRvbWljX2NvbW1pdF90YWlsKHN0cnVj dCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIAogCQlpZiAob2xkX2NydGNfc3RhdGUtPmFjdGl2 ZSkgewogCQkJaW50ZWxfY3J0Y19kaXNhYmxlX3BsYW5lcyhjcnRjLCBvbGRfY3J0Y19zdGF0ZS0+ cGxhbmVfbWFzayk7CisKKwkJCS8qCisJCQkgKiBXZSBuZWVkIHRvIGRpc2FibGUgcGlwZSBDUkMg YmVmb3JlIGRpc2FibGluZyB0aGUgcGlwZSwKKwkJCSAqIG9yIHdlIHJhY2UgYWdhaW5zdCB2Ymxh bmsgb2ZmLgorCQkJICovCisJCQlpbnRlbF9jcnRjX2Rpc2FibGVfcGlwZV9jcmMoaW50ZWxfY3J0 Yyk7CisKIAkJCWRldl9wcml2LT5kaXNwbGF5LmNydGNfZGlzYWJsZSh0b19pbnRlbF9jcnRjX3N0 YXRlKG9sZF9jcnRjX3N0YXRlKSwgc3RhdGUpOwogCQkJaW50ZWxfY3J0Yy0+YWN0aXZlID0gZmFs c2U7CiAJCQlpbnRlbF9mYmNfZGlzYWJsZShpbnRlbF9jcnRjKTsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHJ2LmgKaW5kZXggZDQzNjg1ODliMzU1Li5mY2U1ZDMwNzJkOTcgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oCkBAIC0yMTM4LDggKzIxMzgsMTcgQEAgaW50IGludGVsX3BpcGVfY3JjX2NyZWF0 ZShzdHJ1Y3QgZHJtX21pbm9yICptaW5vcik7CiAjaWZkZWYgQ09ORklHX0RFQlVHX0ZTCiBpbnQg aW50ZWxfY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIGNvbnN0IGNo YXIgKnNvdXJjZV9uYW1lLAogCQkJICAgICAgc2l6ZV90ICp2YWx1ZXNfY250KTsKK3ZvaWQgaW50 ZWxfY3J0Y19kaXNhYmxlX3BpcGVfY3JjKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKTsKK3ZvaWQg aW50ZWxfY3J0Y19lbmFibGVfcGlwZV9jcmMoc3RydWN0IGludGVsX2NydGMgKmNydGMpOwogI2Vs c2UKICNkZWZpbmUgaW50ZWxfY3J0Y19zZXRfY3JjX3NvdXJjZSBOVUxMCitzdGF0aWMgaW5saW5l IHZvaWQgaW50ZWxfY3J0Y19kaXNhYmxlX3BpcGVfY3JjKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRj KQoreworfQorCitzdGF0aWMgaW5saW5lIHZvaWQgaW50ZWxfY3J0Y19lbmFibGVfcGlwZV9jcmMo c3RydWN0IGludGVsX2NydGMgKmNydGMpCit7Cit9CiAjZW5kaWYKIGV4dGVybiBjb25zdCBzdHJ1 Y3QgZmlsZV9vcGVyYXRpb25zIGk5MTVfZGlzcGxheV9jcmNfY3RsX2ZvcHM7CiAjZW5kaWYgLyog X19JTlRFTF9EUlZfSF9fICovCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9waXBlX2NyYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlwZV9jcmMuYwppbmRl eCAxZjVjZDU3MmE3ZmYuLjRmMzY3YzE2ZTllNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcGlwZV9jcmMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9w aXBlX2NyYy5jCkBAIC01NjksNyArNTY5LDggQEAgc3RhdGljIHZvaWQgaHN3X3BpcGVfQV9jcmNf d2Eoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogc3RhdGljIGludCBpdmJfcGlw ZV9jcmNfY3RsX3JlZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkJZW51 bSBwaXBlIHBpcGUsCiAJCQkJZW51bSBpbnRlbF9waXBlX2NyY19zb3VyY2UgKnNvdXJjZSwKLQkJ CQl1aW50MzJfdCAqdmFsKQorCQkJCXVpbnQzMl90ICp2YWwsCisJCQkJYm9vbCBzZXRfd2EpCiB7 CiAJaWYgKCpzb3VyY2UgPT0gSU5URUxfUElQRV9DUkNfU09VUkNFX0FVVE8pCiAJCSpzb3VyY2Ug PSBJTlRFTF9QSVBFX0NSQ19TT1VSQ0VfUEY7CkBAIC01ODIsNyArNTgzLDcgQEAgc3RhdGljIGlu dCBpdmJfcGlwZV9jcmNfY3RsX3JlZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs CiAJCSp2YWwgPSBQSVBFX0NSQ19FTkFCTEUgfCBQSVBFX0NSQ19TT1VSQ0VfU1BSSVRFX0lWQjsK IAkJYnJlYWs7CiAJY2FzZSBJTlRFTF9QSVBFX0NSQ19TT1VSQ0VfUEY6Ci0JCWlmICgoSVNfSEFT V0VMTChkZXZfcHJpdikgfHwKKwkJaWYgKHNldF93YSAmJiAoSVNfSEFTV0VMTChkZXZfcHJpdikg fHwKIAkJICAgICBJU19CUk9BRFdFTEwoZGV2X3ByaXYpKSAmJiBwaXBlID09IFBJUEVfQSkKIAkJ CWhzd19waXBlX0FfY3JjX3dhKGRldl9wcml2LCB0cnVlKTsKIApAQCAtNjAwLDcgKzYwMSw4IEBA IHN0YXRpYyBpbnQgaXZiX3BpcGVfY3JjX2N0bF9yZWcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2LAogCiBzdGF0aWMgaW50IGdldF9uZXdfY3JjX2N0bF9yZWcoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkJICAgICAgIGVudW0gcGlwZSBwaXBlLAotCQkJICAg ICAgIGVudW0gaW50ZWxfcGlwZV9jcmNfc291cmNlICpzb3VyY2UsIHUzMiAqdmFsKQorCQkJICAg ICAgIGVudW0gaW50ZWxfcGlwZV9jcmNfc291cmNlICpzb3VyY2UsIHUzMiAqdmFsLAorCQkJICAg ICAgIGJvb2wgc2V0X3dhKQogewogCWlmIChJU19HRU4yKGRldl9wcml2KSkKIAkJcmV0dXJuIGk4 eHhfcGlwZV9jcmNfY3RsX3JlZyhzb3VyY2UsIHZhbCk7CkBAIC02MTEsNyArNjEzLDcgQEAgc3Rh dGljIGludCBnZXRfbmV3X2NyY19jdGxfcmVnKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiwKIAllbHNlIGlmIChJU19HRU41KGRldl9wcml2KSB8fCBJU19HRU42KGRldl9wcml2KSkK IAkJcmV0dXJuIGlsa19waXBlX2NyY19jdGxfcmVnKHNvdXJjZSwgdmFsKTsKIAllbHNlCi0JCXJl dHVybiBpdmJfcGlwZV9jcmNfY3RsX3JlZyhkZXZfcHJpdiwgcGlwZSwgc291cmNlLCB2YWwpOwor CQlyZXR1cm4gaXZiX3BpcGVfY3JjX2N0bF9yZWcoZGV2X3ByaXYsIHBpcGUsIHNvdXJjZSwgdmFs LCBzZXRfd2EpOwogfQogCiBzdGF0aWMgaW50IHBpcGVfY3JjX3NldF9zb3VyY2Uoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LApAQCAtNjM2LDcgKzYzOCw3IEBAIHN0YXRpYyBpbnQg cGlwZV9jcmNfc2V0X3NvdXJjZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJ CXJldHVybiAtRUlPOwogCX0KIAotCXJldCA9IGdldF9uZXdfY3JjX2N0bF9yZWcoZGV2X3ByaXYs IHBpcGUsICZzb3VyY2UsICZ2YWwpOworCXJldCA9IGdldF9uZXdfY3JjX2N0bF9yZWcoZGV2X3By aXYsIHBpcGUsICZzb3VyY2UsICZ2YWwsIHRydWUpOwogCWlmIChyZXQgIT0gMCkKIAkJZ290byBv dXQ7CiAKQEAgLTkxNiw3ICs5MTgsNyBAQCBpbnQgaW50ZWxfcGlwZV9jcmNfY3JlYXRlKHN0cnVj dCBkcm1fbWlub3IgKm1pbm9yKQogaW50IGludGVsX2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0 IGRybV9jcnRjICpjcnRjLCBjb25zdCBjaGFyICpzb3VyY2VfbmFtZSwKIAkJCSAgICAgIHNpemVf dCAqdmFsdWVzX2NudCkKIHsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBj cnRjLT5kZXYtPmRldl9wcml2YXRlOworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IHRvX2k5MTUoY3J0Yy0+ZGV2KTsKIAlzdHJ1Y3QgaW50ZWxfcGlwZV9jcmMgKnBpcGVfY3Jj ID0gJmRldl9wcml2LT5waXBlX2NyY1tjcnRjLT5pbmRleF07CiAJZW51bSBpbnRlbF9kaXNwbGF5 X3Bvd2VyX2RvbWFpbiBwb3dlcl9kb21haW47CiAJZW51bSBpbnRlbF9waXBlX2NyY19zb3VyY2Ug c291cmNlOwpAQCAtOTM0LDEwICs5MzYsMTEgQEAgaW50IGludGVsX2NydGNfc2V0X2NyY19zb3Vy Y2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLCBjb25zdCBjaGFyICpzb3VyY2VfbmFtZSwKIAkJcmV0 dXJuIC1FSU87CiAJfQogCi0JcmV0ID0gZ2V0X25ld19jcmNfY3RsX3JlZyhkZXZfcHJpdiwgY3J0 Yy0+aW5kZXgsICZzb3VyY2UsICZ2YWwpOworCXJldCA9IGdldF9uZXdfY3JjX2N0bF9yZWcoZGV2 X3ByaXYsIGNydGMtPmluZGV4LCAmc291cmNlLCAmdmFsLCB0cnVlKTsKIAlpZiAocmV0ICE9IDAp CiAJCWdvdG8gb3V0OwogCisJcGlwZV9jcmMtPnNvdXJjZSA9IHNvdXJjZTsKIAlJOTE1X1dSSVRF KFBJUEVfQ1JDX0NUTChjcnRjLT5pbmRleCksIHZhbCk7CiAJUE9TVElOR19SRUFEKFBJUEVfQ1JD X0NUTChjcnRjLT5pbmRleCkpOwogCkBAIC05NTksMyArOTYyLDM5IEBAIGludCBpbnRlbF9jcnRj X3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgY29uc3QgY2hhciAqc291cmNl X25hbWUsCiAKIAlyZXR1cm4gcmV0OwogfQorCit2b2lkIGludGVsX2NydGNfZW5hYmxlX3BpcGVf Y3JjKHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjKQoreworCXN0cnVjdCBkcm1fY3J0YyAq Y3J0YyA9ICZpbnRlbF9jcnRjLT5iYXNlOworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IHRvX2k5MTUoY3J0Yy0+ZGV2KTsKKwlzdHJ1Y3QgaW50ZWxfcGlwZV9jcmMgKnBpcGVf Y3JjID0gJmRldl9wcml2LT5waXBlX2NyY1tjcnRjLT5pbmRleF07CisJdTMyIHZhbCA9IDA7CisK KwlpZiAoIWNydGMtPmNyYy5vcGVuZWQpCisJCXJldHVybjsKKworCWlmIChnZXRfbmV3X2NyY19j dGxfcmVnKGRldl9wcml2LCBjcnRjLT5pbmRleCwgJnBpcGVfY3JjLT5zb3VyY2UsICZ2YWwsIGZh bHNlKSA8IDApCisJCXJldHVybjsKKworCS8qIERvbid0IG5lZWQgcGlwZV9jcmMtPmxvY2sgaGVy ZSwgSVJRcyBhcmUgbm90IGdlbmVyYXRlZC4gKi8KKwlwaXBlX2NyYy0+c2tpcHBlZCA9IDA7CisK KwlJOTE1X1dSSVRFKFBJUEVfQ1JDX0NUTChjcnRjLT5pbmRleCksIHZhbCk7CisJUE9TVElOR19S RUFEKFBJUEVfQ1JDX0NUTChjcnRjLT5pbmRleCkpOworfQorCit2b2lkIGludGVsX2NydGNfZGlz YWJsZV9waXBlX2NyYyhzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YykKK3sKKwlzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMgPSAmaW50ZWxfY3J0Yy0+YmFzZTsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmRldik7CisJc3RydWN0IGludGVsX3BpcGVf Y3JjICpwaXBlX2NyYyA9ICZkZXZfcHJpdi0+cGlwZV9jcmNbY3J0Yy0+aW5kZXhdOworCisJLyog U3dhbGxvdyBjcmMncyB1bnRpbCB3ZSBzdG9wIGdlbmVyYXRpbmcgdGhlbS4gKi8KKwlzcGluX2xv Y2tfaXJxKCZwaXBlX2NyYy0+bG9jayk7CisJcGlwZV9jcmMtPnNraXBwZWQgPSBJTlRfTUlOOwor CXNwaW5fdW5sb2NrX2lycSgmcGlwZV9jcmMtPmxvY2spOworCisJSTkxNV9XUklURShQSVBFX0NS Q19DVEwoY3J0Yy0+aW5kZXgpLCAwKTsKKwlQT1NUSU5HX1JFQUQoUElQRV9DUkNfQ1RMKGNydGMt PmluZGV4KSk7CisJc3luY2hyb25pemVfaXJxKGRldl9wcml2LT5kcm0uaXJxKTsKK30KLS0gCjIu MTYuMgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==