From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH v7 5/6] drm/i915: enable scrambling Date: Fri, 3 Mar 2017 21:58:32 +0530 Message-ID: <1488558513-23534-6-git-send-email-shashank.sharma@intel.com> References: <1488558513-23534-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: <1488558513-23534-1-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, ander.conselvan.de.oliveira@intel.com, ville.syrjala@linux.intel.com Cc: jose.abreu@synopsys.com, daniel.vetter@intel.com, treding@nvidia.com List-Id: dri-devel@lists.freedesktop.org R2VtaW5pbGFrZSBwbGF0Zm9ybSBzcG9ydHMgYSBuYXRpdmUgSERNSSAyLjAgY29udHJvbGxlciwg YW5kIGlzCmNhcGFibGUgb2YgZHJpdmluZyBwaXhlbC1jbG9ja3MgdXB0byA1OTRNaHouIEhETUkg Mi4wIHNwZWMKbWVuZGF0ZXMgc2NyYW1ibGluZyBmb3IgdGhlc2UgaGlnaGVyIGNsb2NrcywgZm9y IHJlZHVjZWQgUkYgZm9vdHByaW50LgoKVGhpcyBwYXRjaCBjaGVja3MgaWYgdGhlIG1vbml0b3Ig c3VwcG9ydHMgc2NyYW1ibGluZywgYW5kIGlmIHJlcXVpcmVkLAplbmFibGVzIGl0IGR1cmluZyB0 aGUgbW9kZXNldC4KClYyOiBBZGRyZXNzZWQgcmV2aWV3IGNvbW1lbnRzIGZyb20gVmlsbGU6Ci0g RG8gbm90IHRyYWNrIHNjcmFtYmxpbmcgc3RhdHVzIGluIERSTSBsYXllciwgdHJhY2sgc29tZXdo ZXJlIGluCiAgZHJpdmVyIGxpa2UgaW4gaW50ZWxfY3J0Y19zdGF0ZS4KLSBEb24ndCB0YWxrIHRv IG1vbml0b3IgYXQgc3VjaCBhIGxvdyBsYXllciwgc2V0IG1vbml0b3Igc2NyYW1ibGluZwogIGlu IGludGVsX2VuYWJsZV9kZGkoKSBiZWZvcmUgZW5hYmxpbmcgdGhlIHBvcnQuCgpWMzogQWRkcmVz c2VkIHJldmlldyBjb21tZW50cyBmcm9tIEphbmkKIC0gSW4gY29tbWVudHMsIGZ1bmN0aW9uIG5h bWVzLCB1c2UgInNpbmsiIGluc3RlYWQgb2YgIm1vbml0b3IiLAogICBzbyB0aGF0IHRoZSBpbXBs ZW1lbnRhdGlvbiBjb3VsZCBiZSBjbG9zZSB0byB0aGUgbGFuZ3VhZ2Ugb2YKICAgSERNSSBzcGVj LgoKVjQ6IEFkZHJlc3NlZCByZXZpZXcgY29tbWVudCBmcm9tIE1hYXJ0ZW4KIC0gc2NyYW1ibGlu ZyAtPiBoZG1pX3NjcmFtYmxpbmcKICAgaGlnaF90bWRzX2Nsb2NrX3JhdGlvIC0+IGhkbWlfaGln aF90bWRzX2Nsb2NrX3JhdGlvCgpWNTogQWRkcmVzc2VkIHJldmlldyBjb21tZW50cyBmcm9tIFZp bGxlIGFuZCBBbmRlcgogLSBEbyBub3QgbW9kaWZpeSB0aGUgY3J0Y19zdGF0ZSBhZnRlciBjb21w dXRlX2NvbmZpZy4gTW92ZSBhbGwKICAgc2NyYW1ibGluZyBhbmQgdG1kc19jbG9ja19yYXRpbyBj YWxjdXRhdGlvbnMgdG8gY29tcHV0ZV9jb25maWcuCiAtIFdoaWxlIHNldHRpbmcgc2NyYW1ibGlu ZyBmb3Igc291cmNlL3NpbmssIGRvIG5vdCBjaGVjayB0aGUKICAgY29uZGl0aW9ucyBhZ2Fpbiwg anVzdCBnbyBieSB0aGUgY3J0Y19zdGF0ZSBmbGFncy4gVGhpcyB3aWxsCiAgIHNpbXBseWZ5IHRo ZSBjb25kaXRpb24gY2hlY2tzLgoKVjY6IEFkZHJlc3NlZCByZXZpZXcgY29tbWVudHMgZnJvbSBW aWxsZQogLSBEbyBub3QgYWRkIElTX0dMSyBjaGVjayBpbiBkaXNhYmxlL2VuYWJsZSBmdW5jdGlv biwgaW5zdGVhZCBhZGQgaXQKICAgaW4gY29tcHV0ZV9jb25maWcsIHdoaWxlIHNldHRpbmcgc3Rh dGUgZmxhZ3MuCiAtIFJlbW92ZSB1bm5lY2Vzc2FyeSBwYXJhbnRoZXNpcy4KIC0gU2ltcGx5Znkg aGFuZGxlX3Npbmtfc2NyYW1ibGluZyBmdW5jdGlvbiBhcyBzdWdnZXN0ZWQuCiAtIEFkZCByZWFk b3V0IGNvZGUgZm9yIHNjcmFtYmxpbmcgc3RhdHVzIGluIGdldF9kZGlfY29uZmlnIGFuZCBhZGQg YQogICBjaGVjayBmb3IgdGhlIHNhbWUgaW4gcGlwZV9jb25maWdfY29tcGFyZS4KClY3OiBBZGRy ZXNzZWQgcmV2aWV3IGNvbW1lbnRzIGZyb20gQW5kZXIvVmlsbGUKIC0gTm8gc2VwYXJhdGUgZnVu Y3Rpb24gZm9yIHNvdXJjZSBzY3JhbWJsaW5nLCBtYWtlIGl0IGlubGluZQogLSBBbGlnbiB0aGUg bGFzdCBsaW5lIG9mIHRoZSBtYWNybyBUUkFOU19ERElfSERNSV9TQ1JBTUJMSU5HX01BU0sKIC0g RG8gbm90IGFkZCBwbGF0Zm9ybSBjaGVjayB3aGlsZSBzZXR0aW5nIHNvdXJjZSBzY3JhbWJsaW5n CiAtIFVzZSBwaXBlX2NvbmZpZyBpbnN0ZWFkIG9mIGNydGMtPmNvbmZpZyB0byBzZXQgc2luayBz Y3JhbWJsaW5nCiAtIFRvIHJlYWRvdXQgc2NyYW1ibGluZyBzdGF0dXMsIENvbXBhcmUgd2l0aCBT Q1JBTUJMSU5HX01BU0sKICAgbm90IGFueSBvZiBpdHMgYml0cwogLSBSZW1vdmUgcGxhdGZvcm0g Y2hlY2sgaW4gaW50ZWxfcGlwZV9jb25maWdfY29tcGFyZSB3aGlsZSBjaGVja2luZwogICBzY3Jh bWJsaW5nIHN0YXR1cwoKU2lnbmVkLW9mZi1ieTogU2hhc2hhbmsgU2hhcm1hIDxzaGFzaGFuay5z aGFybWFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggICAg ICB8ICA3ICsrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyAgICAgfCAzMyAr KysrKysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxh eS5jIHwgIDMgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAxMCAr KysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgICAgfCA1MiArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDUgZmlsZXMgY2hhbmdlZCwgMTA1IGluc2Vy dGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAppbmRleCA0OTA2Y2U0ZC4uYmZkOTg4YiAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAorKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCkBAIC03ODI0LDcgKzc4MjQsMTQgQEAgZW51bSB7CiAj ZGVmaW5lICBUUkFOU19ERElfRURQX0lOUFVUX0JfT05PRkYJKDU8PDEyKQogI2RlZmluZSAgVFJB TlNfRERJX0VEUF9JTlBVVF9DX09OT0ZGCSg2PDwxMikKICNkZWZpbmUgIFRSQU5TX0RESV9EUF9W Q19QQVlMT0FEX0FMTE9DCSgxPDw4KQorI2RlZmluZSAgVFJBTlNfRERJX0hETUlfU0NSQU1CTEVS X0NUU19FTkFCTEUgKDE8PDcpCisjZGVmaW5lICBUUkFOU19ERElfSERNSV9TQ1JBTUJMRVJfUkVT RVRfRlJFUSAoMTw8NikKICNkZWZpbmUgIFRSQU5TX0RESV9CRklfRU5BQkxFCQkoMTw8NCkKKyNk ZWZpbmUgIFRSQU5TX0RESV9ISUdIX1RNRFNfQ0hBUl9SQVRFCSgxPDw0KQorI2RlZmluZSAgVFJB TlNfRERJX0hETUlfU0NSQU1CTElORwkoMTw8MCkKKyNkZWZpbmUgIFRSQU5TX0RESV9IRE1JX1ND UkFNQkxJTkdfTUFTSyAoVFJBTlNfRERJX0hETUlfU0NSQU1CTEVSX0NUU19FTkFCTEUgXAorCQkJ CQl8IFRSQU5TX0RESV9IRE1JX1NDUkFNQkxFUl9SRVNFVF9GUkVRIFwKKwkJCQkJfCBUUkFOU19E RElfSERNSV9TQ1JBTUJMSU5HKQogCiAvKiBEaXNwbGF5UG9ydCBUcmFuc3BvcnQgQ29udHJvbCAq LwogI2RlZmluZSBfRFBfVFBfQ1RMX0EJCQkweDY0MDQwCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5j CmluZGV4IGE3YzA4ZDcuLjIxNTliMmIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2RkaS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCkBAIC0x MzExLDYgKzEzMTEsMTEgQEAgdm9pZCBpbnRlbF9kZGlfZW5hYmxlX3RyYW5zY29kZXJfZnVuYyhz dHJ1Y3QgZHJtX2NydGMgKmNydGMpCiAJCQl0ZW1wIHw9IFRSQU5TX0RESV9NT0RFX1NFTEVDVF9I RE1JOwogCQllbHNlCiAJCQl0ZW1wIHw9IFRSQU5TX0RESV9NT0RFX1NFTEVDVF9EVkk7CisKKwkJ aWYgKGludGVsX2NydGMtPmNvbmZpZy0+aGRtaV9zY3JhbWJsaW5nKQorCQkJdGVtcCB8PSBUUkFO U19ERElfSERNSV9TQ1JBTUJMSU5HX01BU0s7CisJCWlmIChpbnRlbF9jcnRjLT5jb25maWctPmhk bWlfaGlnaF90bWRzX2Nsb2NrX3JhdGlvKQorCQkJdGVtcCB8PSBUUkFOU19ERElfSElHSF9UTURT X0NIQVJfUkFURTsKIAl9IGVsc2UgaWYgKHR5cGUgPT0gSU5URUxfT1VUUFVUX0FOQUxPRykgewog CQl0ZW1wIHw9IFRSQU5TX0RESV9NT0RFX1NFTEVDVF9GREk7CiAJCXRlbXAgfD0gKGludGVsX2Ny dGMtPmNvbmZpZy0+ZmRpX2xhbmVzIC0gMSkgPDwgMTsKQEAgLTE4ODUsNiArMTg5MCwyMCBAQCBz dGF0aWMgdm9pZCBpbnRlbF9lbmFibGVfZGRpKHN0cnVjdCBpbnRlbF9lbmNvZGVyICppbnRlbF9l bmNvZGVyLAogCQlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCA9CiAJ CQllbmNfdG9fZGlnX3BvcnQoZW5jb2Rlcik7CiAKKwkJaWYgKElTX0dFTUlOSUxBS0UoZGV2X3By aXYpKSB7CisJCQkvKgorCQkJICogR0xLIHNwb3J0cyBhIG5hdGl2ZSBIRE1JIDIuMCBjb250cm9s bGVyLiBJZiByZXF1aXJlZAorCQkJICogY2xvY2sgcmF0ZSBpcyA+IDM0MCBNaHogJiYgc2NyYW1i bGluZyBpcyBzdXBwb3J0ZWQKKwkJCSAqIGJ5IHNpbmssIGVuYWJsZSBzY3JhbWJsaW5nIGJlZm9y ZSBlbmFibGluZyB0aGUKKwkJCSAqIEhETUkgMi4wIHBvcnQuIFRoZSBzaW5rIGNhbiBjaG9vc2Ug dG8gZGlzYWJsZSB0aGUKKwkJCSAqIHNjcmFtYmxpbmcgaWYgaXQgZG9lc24ndCBkZXRlY3QgYSBz Y3JhbWJsZWQgd2l0aGluCisJCQkgKiAxMDAgbXMuCisJCQkgKi8KKwkJCWludGVsX2hkbWlfaGFu ZGxlX3Npbmtfc2NyYW1ibGluZyhpbnRlbF9lbmNvZGVyLAorCQkJCQkJY29ubl9zdGF0ZS0+Y29u bmVjdG9yLAorCQkJCQkJcGlwZV9jb25maWcsIHRydWUpOworCQl9CisKIAkJLyogSW4gSERNSS9E VkkgbW9kZSwgdGhlIHBvcnQgd2lkdGgsIGFuZCBzd2luZy9lbXBoYXNpcyB2YWx1ZXMKIAkJICog YXJlIGlnbm9yZWQgc28gbm90aGluZyBzcGVjaWFsIG5lZWRzIHRvIGJlIGRvbmUgYmVzaWRlcwog CQkgKiBlbmFibGluZyB0aGUgcG9ydC4KQEAgLTE5MTcsNiArMTkzNiwxNCBAQCBzdGF0aWMgdm9p ZCBpbnRlbF9kaXNhYmxlX2RkaShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2RlciwK IAlpZiAob2xkX2NydGNfc3RhdGUtPmhhc19hdWRpbykKIAkJaW50ZWxfYXVkaW9fY29kZWNfZGlz YWJsZShpbnRlbF9lbmNvZGVyKTsKIAorCWlmICh0eXBlID09IElOVEVMX09VVFBVVF9IRE1JKSB7 CisJCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhlbmNvZGVy LT5jcnRjKTsKKworCQlpbnRlbF9oZG1pX2hhbmRsZV9zaW5rX3NjcmFtYmxpbmcoaW50ZWxfZW5j b2RlciwKKwkJCQkJb2xkX2Nvbm5fc3RhdGUtPmNvbm5lY3RvciwKKwkJCQkJaW50ZWxfY3J0Yy0+ Y29uZmlnLCBmYWxzZSk7CisJfQorCiAJaWYgKHR5cGUgPT0gSU5URUxfT1VUUFVUX0VEUCkgewog CQlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gZW5jX3RvX2ludGVsX2RwKGVuY29kZXIpOwog CkBAIC0yMDQ0LDYgKzIwNzEsMTIgQEAgdm9pZCBpbnRlbF9kZGlfZ2V0X2NvbmZpZyhzdHJ1Y3Qg aW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIAogCQlpZiAoaW50ZWxfaGRtaS0+aW5mb2ZyYW1lX2Vu YWJsZWQoJmVuY29kZXItPmJhc2UsIHBpcGVfY29uZmlnKSkKIAkJCXBpcGVfY29uZmlnLT5oYXNf aW5mb2ZyYW1lID0gdHJ1ZTsKKworCQlpZiAoKHRlbXAgJiBUUkFOU19ERElfSERNSV9TQ1JBTUJM SU5HX01BU0spID09CisJCQkJVFJBTlNfRERJX0hETUlfU0NSQU1CTElOR19NQVNLKQorCQkJcGlw ZV9jb25maWctPmhkbWlfc2NyYW1ibGluZyA9IHRydWU7CisJCWlmICh0ZW1wICYgVFJBTlNfRERJ X0hJR0hfVE1EU19DSEFSX1JBVEUpCisJCQlwaXBlX2NvbmZpZy0+aGRtaV9oaWdoX3RtZHNfY2xv Y2tfcmF0aW8gPSB0cnVlOwogCQkvKiBmYWxsIHRocm91Z2ggKi8KIAljYXNlIFRSQU5TX0RESV9N T0RFX1NFTEVDVF9EVkk6CiAJCXBpcGVfY29uZmlnLT5sYW5lX2NvdW50ID0gNDsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYwppbmRleCA5OWU4ZDljLi4yMWQ2NGMwIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC0xMTY2Miw2ICsxMTY2Miw5IEBAIHN0YXRpYyB2 b2lkIF9fcHJpbnRmKDMsIDQpCiAJaWYgKChJTlRFTF9HRU4oZGV2X3ByaXYpIDwgOCAmJiAhSVNf SEFTV0VMTChkZXZfcHJpdikpIHx8CiAJICAgIElTX1ZBTExFWVZJRVcoZGV2X3ByaXYpIHx8IElT X0NIRVJSWVZJRVcoZGV2X3ByaXYpKQogCQlQSVBFX0NPTkZfQ0hFQ0tfSShsaW1pdGVkX2NvbG9y X3JhbmdlKTsKKworCVBJUEVfQ09ORl9DSEVDS19JKGhkbWlfc2NyYW1ibGluZyk7CisJUElQRV9D T05GX0NIRUNLX0koaGRtaV9oaWdoX3RtZHNfY2xvY2tfcmF0aW8pOwogCVBJUEVfQ09ORl9DSEVD S19JKGhhc19pbmZvZnJhbWUpOwogCiAJUElQRV9DT05GX0NIRUNLX0koaGFzX2F1ZGlvKTsKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHJ2LmgKaW5kZXggZTZmYmJlZS4uNjJmYmViMiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmgKQEAgLTY5NSw2ICs2OTUsMTIgQEAgc3RydWN0IGludGVsX2NydGNfc3Rh dGUgewogCiAJLyogR2FtbWEgbW9kZSBwcm9ncmFtbWVkIG9uIHRoZSBwaXBlICovCiAJdWludDMy X3QgZ2FtbWFfbW9kZTsKKworCS8qIEhETUkgc2NyYW1ibGluZyBzdGF0dXMgKHNpbmspICovCisJ Ym9vbCBoZG1pX3NjcmFtYmxpbmc7CisKKwkvKiBIRE1JIEhpZ2ggVE1EUyBjaGFyIHJhdGUgcmF0 aW8gKHNpbmspICovCisJYm9vbCBoZG1pX2hpZ2hfdG1kc19jbG9ja19yYXRpbzsKIH07CiAKIHN0 cnVjdCB2bHZfd21fc3RhdGUgewpAQCAtMTYyNiw2ICsxNjMyLDEwIEBAIHZvaWQgaW50ZWxfaGRt aV9pbml0X2Nvbm5lY3RvcihzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9y dCwKIGJvb2wgaW50ZWxfaGRtaV9jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAq ZW5jb2RlciwKIAkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcs CiAJCQkgICAgICAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUpOwordm9p ZCBpbnRlbF9oZG1pX2hhbmRsZV9zaW5rX3NjcmFtYmxpbmcoc3RydWN0IGludGVsX2VuY29kZXIg KmludGVsX2VuY29kZXIsCisJCQkJCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCisJ CQkJCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjb25maWcsCisJCQkJCWJvb2wgZW5hYmxlKTsK IHZvaWQgaW50ZWxfZHBfZHVhbF9tb2RlX3NldF90bWRzX291dHB1dChzdHJ1Y3QgaW50ZWxfaGRt aSAqaGRtaSwgYm9vbCBlbmFibGUpOwogCiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwppbmRl eCBjMjE4NGY3Li5jNmUyMzk4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9oZG1pLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jCkBAIC0zNCw2 ICszNCw3IEBACiAjaW5jbHVkZSA8ZHJtL2RybV9hdG9taWNfaGVscGVyLmg+CiAjaW5jbHVkZSA8 ZHJtL2RybV9jcnRjLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9lZGlkLmg+CisjaW5jbHVkZSA8ZHJt L2RybV9zY2RjX2hlbHBlci5oPgogI2luY2x1ZGUgImludGVsX2Rydi5oIgogI2luY2x1ZGUgPGRy bS9pOTE1X2RybS5oPgogI2luY2x1ZGUgPGRybS9pbnRlbF9scGVfYXVkaW8uaD4KQEAgLTEzMTYs NiArMTMxNyw3IEBAIGJvb2wgaW50ZWxfaGRtaV9jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxf ZW5jb2RlciAqZW5jb2RlciwKIAlzdHJ1Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9IGVuY190 b19pbnRlbF9oZG1pKCZlbmNvZGVyLT5iYXNlKTsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSB0b19pOTE1KGVuY29kZXItPmJhc2UuZGV2KTsKIAlzdHJ1Y3QgZHJtX2Rpc3Bs YXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSA9ICZwaXBlX2NvbmZpZy0+YmFzZS5hZGp1c3RlZF9tb2Rl OworCXN0cnVjdCBkcm1fc2NkYyAqc2NkYyA9ICZjb25uX3N0YXRlLT5jb25uZWN0b3ItPmRpc3Bs YXlfaW5mby5oZG1pLnNjZGM7CiAJaW50IGNsb2NrXzhicGMgPSBwaXBlX2NvbmZpZy0+YmFzZS5h ZGp1c3RlZF9tb2RlLmNydGNfY2xvY2s7CiAJaW50IGNsb2NrXzEyYnBjID0gY2xvY2tfOGJwYyAq IDMgLyAyOwogCWludCBkZXNpcmVkX2JwcDsKQEAgLTEzODUsNiArMTM4NywxNiBAQCBib29sIGlu dGVsX2hkbWlfY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCiAK IAlwaXBlX2NvbmZpZy0+bGFuZV9jb3VudCA9IDQ7CiAKKwlpZiAoc2NkYy0+c2NyYW1ibGluZy5z dXBwb3J0ZWQgJiYgSVNfR0VNSU5JTEFLRShkZXZfcHJpdikpIHsKKwkJaWYgKHNjZGMtPnNjcmFt YmxpbmcubG93X3JhdGVzKQorCQkJcGlwZV9jb25maWctPmhkbWlfc2NyYW1ibGluZyA9IHRydWU7 CisKKwkJaWYgKHBpcGVfY29uZmlnLT5wb3J0X2Nsb2NrID4gMzQwMDAwKSB7CisJCQlwaXBlX2Nv bmZpZy0+aGRtaV9zY3JhbWJsaW5nID0gdHJ1ZTsKKwkJCXBpcGVfY29uZmlnLT5oZG1pX2hpZ2hf dG1kc19jbG9ja19yYXRpbyA9IHRydWU7CisJCX0KKwl9CisKIAlyZXR1cm4gdHJ1ZTsKIH0KIApA QCAtMTc5NCw2ICsxODA2LDQ2IEBAIHN0YXRpYyB2b2lkIGludGVsX2hkbWlfZGVzdHJveShzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCWludGVsX2hkbWktPmFzcGVjdF9yYXRpbyA9 IEhETUlfUElDVFVSRV9BU1BFQ1RfTk9ORTsKIH0KIAordm9pZCBpbnRlbF9oZG1pX2hhbmRsZV9z aW5rX3NjcmFtYmxpbmcoc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIsCisJCQkJ ICAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCisJCQkJICAgICAgIHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjb25maWcsCisJCQkJICAgICAgIGJvb2wgZW5hYmxlKQorewor CXN0cnVjdCBpbnRlbF9oZG1pICppbnRlbF9oZG1pID0gZW5jX3RvX2ludGVsX2hkbWkoJmludGVs X2VuY29kZXItPmJhc2UpOworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGNv bm5lY3Rvci0+ZGV2LT5kZXZfcHJpdmF0ZTsKKwlzdHJ1Y3QgZHJtX3NjcmFtYmxpbmcgKnNjcmFt YmxpbmcgPQorCQkJCSZjb25uZWN0b3ItPmRpc3BsYXlfaW5mby5oZG1pLnNjZGMuc2NyYW1ibGlu ZzsKKwlzdHJ1Y3QgaTJjX2FkYXB0ZXIgKmFkcHRyID0gaW50ZWxfZ21idXNfZ2V0X2FkYXB0ZXIo ZGV2X3ByaXYsCisJCQkJCQkJICBpbnRlbF9oZG1pLT5kZGNfYnVzKTsKKwlib29sIHJldDsKKwor CWlmICghc2NyYW1ibGluZy0+c3VwcG9ydGVkKQorCQlyZXR1cm47CisKKwlEUk1fREVCVUdfS01T KCJTZXR0aW5nIHNpbmsgc2NyYW1ibGluZyBmb3IgZW5jOiVzIGNvbm5lY3Rvcjolc1xuIiwKKwkJ CWludGVsX2VuY29kZXItPmJhc2UubmFtZSwgY29ubmVjdG9yLT5uYW1lKTsKKworCWlmIChjb25m aWctPmhkbWlfaGlnaF90bWRzX2Nsb2NrX3JhdGlvKSB7CisJCS8qIFNldCBUTURTIGJpdCBjbG9j ayByYXRpbyB0byAxLzQwIG9yIDEvMTAgKi8KKwkJcmV0ID0gZHJtX3NjZGNfc2V0X2hpZ2hfdG1k c19jbG9ja19yYXRpbyhhZHB0ciwgZW5hYmxlKTsKKwkJaWYgKCFyZXQpIHsKKwkJCURSTV9FUlJP UigiU2V0IFRNRFMgcmF0aW8gZmFpbGVkXG4iKTsKKwkJCXJldHVybjsKKwkJfQorCX0KKworCWlm IChjb25maWctPmhkbWlfc2NyYW1ibGluZykgeworCQkvKiBFbmFibGUvZGlzYWJsZSBzaW5rIHNj cmFtYmxpbmcgKi8KKwkJcmV0ID0gZHJtX3NjZGNfc2V0X3NjcmFtYmxpbmcoYWRwdHIsIGVuYWJs ZSk7CisJCWlmICghcmV0KSB7CisJCQlEUk1fRVJST1IoIlNldCBzaW5rIHNjcmFtYmxpbmcgZmFp bGVkXG4iKTsKKwkJCXJldHVybjsKKwkJfQorCX0KKworCURSTV9ERUJVR19LTVMoInNpbmsgc2Ny YW1ibGluZyBoYW5kbGVkXG4iKTsKK30KKwogc3RhdGljIHU4IGludGVsX2hkbWlfZGRjX3Bpbihz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkgICAgIGVudW0gcG9ydCBwb3J0 KQogewotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1k ZXZlbAo=